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

Migration on non-registered nodes blocks the upgrade flow #92

Open
atanasdinov opened this issue Sep 20, 2024 · 1 comment
Open

Migration on non-registered nodes blocks the upgrade flow #92

atanasdinov opened this issue Sep 20, 2024 · 1 comment

Comments

@atanasdinov
Copy link
Contributor

A non-registered node is incapable of finding the upgrade path to the next SL Micro version e.g. trying to upgrade from 5.5 to 6.0 looks like this:

2024-09-19 21:32:16 Executing `zypper migration --non-interactive --product SL-Micro/6.0/x86_64 --root /`:

Executing '/usr/bin/zypper --non-interactive patch-check --updatestack-only'

Loading repository data...
Reading installed packages...

0 patches needed (0 security patches)


Executing '/usr/bin/zypper --root / --non-interactive ref'

Repository 'opensuse-ca' is up to date.
All repositories have been refreshed.

Executing '/usr/bin/zypper --root / --disable-repositories --xmlout --non-interactive products -i'

Can't get available migrations from server: Credentials file is missing
'/usr/lib/zypper/commands/zypper-migration' exited with status 1
2024-09-19 21:32:18 Application returned with exit status 1.

After this the node is restarted and SUC considers the plan as finished. However, since we check against the pretty name of the operating system, as a done criteria for our condition, the reconciliation on our upgrade plan hangs indefinitely and cannot proceed.

@ipetrov117
Copy link
Contributor

This is currently happening due to the limitation in the transactional-update run zypper migration command. It does not seem to propagate the exit codes of the commands that are executed within the run block, hence always resulting in a 0 exit code.

This will be fixed once transactional-update migration supports the flags that zypper migration does. Then we will not be limited by the aforementioned problem and the 1 exit code will be properly propagated and handled. Which will result in a failure of the pod instead of it being marked as "Completed".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants