-
Notifications
You must be signed in to change notification settings - Fork 17
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
Implement elemental-register upgrade #868
base: main
Are you sure you want to change the base?
Conversation
da3e58f
to
9a516f7
Compare
456636a
to
0585484
Compare
72240cf
to
3275679
Compare
4a4dd72
to
2895237
Compare
6dbaf10
to
1ff3b58
Compare
Signed-off-by: Andrea Mazzotti <[email protected]>
1ff3b58
to
2ca6dd8
Compare
This is still in draft due to the heavy implications of introducing new upgrade logic. Summary of features:
Changed behavior:
|
Part of rancher/elemental#1565
This PR introduces the
elemental-register upgrade
subcommand to replace the suc-upgrade script.Most of the logic from
suc-upgrade
was kept, except theisHigherVersion
andFORCE=true
logic, which got eliminated.Instead, the
elemental-register upgrade
commands accepts a correlationID that will be applied to the Elemental snapshot during upgrade.By default we are using the
ManagedOSImage.Spec
sha224 hash as correlationID. With some quirks, for example the spec.Targets is always nullified to avoid re-applying upgrades whenever the target clusters are updated.Also all client side logic to prevent concurrent upgrades (using a file based lock) has been removed. Instead we exploit the system-upgrade-controller
exclusive
flag.For example, this will be the resulting state after a successful upgrade:
On downstream, the snapshot will carry the CorrelationID
And the plan as well: