tests/upgrade: disable zincati at runtime

Ignition versions before 2.14 do not remove pre-existing enablement
symlinks for units configured with `enabled: false`.[1] On older upgrades,
this leaves Zincati enabled across the upgrade chain, where it can stage
an update and reboot before the external test regains control.

Disable and stop Zincati before setup on every invocation. The test
continues to start it explicitly once it is ready to monitor the update.

[1]: https://github.com/coreos/ignition/releases/tag/v2.14.0

Assisted-by: <openai/gpt-5.6-sol>
This commit is contained in:
Michael Armijo 2026-10-20 16:44:28 -06:00 committed by Michael Armijo
parent e8d012f020
commit 5d5f97281e

View file

@ -228,6 +228,13 @@ selinux-sanity-check() {
need_restart='false'
arch=$(arch)
# Keep Zincati under the test's control. Ignition versions before 2.14 do not
# remove pre-existing enablement symlinks for units set to `enabled: false`.
# Disabling it here also persists across subsequent upgrades.
if systemctl is-enabled zincati.service 1>/dev/null; then
systemctl disable --now zincati.service
fi
# If there is an ostree repo archive tarball, let's extract/use it.
if [ -f "$KOLA_EXT_DATA/ostree-repo.tar" ]; then
tar -C /srv/ -xf "$KOLA_EXT_DATA/ostree-repo.tar"