Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does OLM support downgrade #1177

Closed
clyang82 opened this issue Dec 6, 2019 · 15 comments
Closed

Does OLM support downgrade #1177

clyang82 opened this issue Dec 6, 2019 · 15 comments
Labels
triage/unresolved Indicates an issue that can not or will not be resolved. triaged Issue has been considered by a member of the OLM community

Comments

@clyang82
Copy link
Contributor

clyang82 commented Dec 6, 2019

Bug Report

What did you do?
A clear and concise description of the steps you took (or insert a code snippet).

OLM extends Kubernetes to provide a declarative way to install, manage, and upgrade operators and their dependencies in a cluster.

There is not mentioned that OLM downgrade support. I just wonder to know if we support downgrade or not.

What did you expect to see?
A clear and concise description of what you expected to happen (or insert a code snippet).

When I use helm to upgrade, I can use helm downgrade to rollback the previous version. But from the document and my testing, I did not find the way how to download by OLM.

@clyang82
Copy link
Contributor Author

clyang82 commented Dec 6, 2019

@camilamacedo86 @dinhxuanvu I saw there is a document mentioned that the downgrade - https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/dependency-resolution.md#dependency-resolution

Could you please elaborate more details? Thanks.

FYI @gyliu513

@jpeeler
Copy link
Contributor

jpeeler commented Dec 9, 2019

The downgrade that has been mentioned in that document is referring more to an attempted upgrade that is reverting, rather than explicitly supporting an arbitrary downgrade. Philosophically, OLM is designed to always upgrade to the next version. If an emergency fix is needed, that fix should be made in a new CSV to be made available to OLM.

@clyang82
Copy link
Contributor Author

@jpeeler Thanks for you reply. If we want to rollback the previous version(I do not like this new version), there is no way by using olm. You have to reinstall.

@stale
Copy link

stale bot commented Feb 26, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Feb 26, 2020
@openshift-ci-robot openshift-ci-robot added triage/unresolved Indicates an issue that can not or will not be resolved. and removed wontfix labels Feb 27, 2020
@stale
Copy link

stale bot commented Apr 27, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale
Copy link

stale bot commented Jul 1, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale
Copy link

stale bot commented Sep 4, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@wei-lee
Copy link

wei-lee commented Oct 22, 2020

I am interested in this topic as well and I would like to know what prevents OLM from support downgrading. Yes, it's possible to do downgrade by rolling forward, however, I think that's a hack and not a proper solution.

@dinhxuanvu
Copy link
Member

At the moment, OLM doesn't support downgrading but we are looking into the feature. However, there isn't a concrete plan for it yet. At the moment, downgrading is just another from of upgrading as far as OLM is concerned.

There are a few issues that OLM needs to resolve in order to enable downgrading. One of them is CRD and its CR handling. As you know, OLM is managing the CRD but not the CR created from the API provided by CRD. In order to downgrade and ensure no data loss, OLM needs to handle the CR migration before it can downgrade a CRD (if there are changes between this version of CRD and the prior one). Plus, if there are another operator depending on a specific API/CRD that this operator owns, then downgrading can potentially break those operators if there are incompatible changes in previous version. That situation needs to be handled as well. Furthermore, depending on when the downgrading happens, it may not even be possible if previous version is no longer applicable anymore due to cluster/k8s version upgrade and some k8s APIs have been deprecated.

This is an interesting feature that can be very helpful but there isn't an immediate plan for it right now.

@stale
Copy link

stale bot commented Dec 21, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@mhtgrwl5
Copy link

Can I get a location/url, where I can see the progress of the discussion on Rollback? May be public JIRA or something else.

@dinhxuanvu
Copy link
Member

@mhtgrwl5 As far as I know, OLM doesn't have any plans on rollback feature. However, you can ask questions on this on #olm-dev on Kubernetes slack channel.

@mhtgrwl5
Copy link

@dinhxuanvu Thanks. I will investigate it further.

@Stefanqn
Copy link

any news on this topic? I just had the case were keycloak updated to an incompatible version of our keycloak plugin. Having an option to downgrade/revert or just force a specific version would be useful.

@ShadiAlbatal
Copy link

Maybe you could add a new parameter on each install plan that if set to true, will redeploy. cos I can still see earlier install plans

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
triage/unresolved Indicates an issue that can not or will not be resolved. triaged Issue has been considered by a member of the OLM community
Projects
None yet
Development

No branches or pull requests

8 participants