Commit e68a396
committed
fix(talosctl): reboot after a failed drain during upgrade
talosctl upgrade writes the new installer image to disk before it
drains the Kubernetes node and reboots into it. When the drain step
failed - for example because the apiserver is unreachable or the
cluster is not yet bootstrapped - the command returned early, before
the reboot. That left the upgrade half-applied: the new image was
staged on disk while the node kept running the old version, with no
reboot to activate it and no signal to the operator, since the earlier
progress output already read "upgrade completed". The next unrelated
reboot would then silently boot into the staged image.
Once the image is committed to disk, aborting before the reboot is the
worst outcome. The drain is a best-effort courtesy and must not strand
the upgrade, so warn about the failed drain and continue to the reboot
so the staged image is actually applied.
Assisted-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>1 parent ea95578 commit e68a396
1 file changed
Lines changed: 9 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
147 | 147 | | |
148 | 148 | | |
149 | 149 | | |
150 | | - | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
151 | 159 | | |
152 | 160 | | |
153 | 161 | | |
| |||
0 commit comments