* Track active/passive boot for upgrade workflow
Track what are we booting from during upgrade in order to not backup
active into passive if we are booting from passive.
If we are booting from active or recovery the workflow keeps as it was,
backup active into passive, and then move the transition image into
active.
Signed-off-by: Itxaka <itxaka@kairos.io>
Our current example for cloud images on the docs on how to use the reset
with a cloud-config and a stage does not actually work as the tty
adquisition and such seems to be failing due tto not being properly run
in a tty.
This pathc introduces 2 new flags to the reset command.
reboot: Enable reboot after reset, overriding any config in the system.
This is only a enable switch, so if the flag is disabled but the config
says reset it will NOT override it.
unattended: Disables printing stuff into the screen, locking the
terminal and falling back to a new tty on run. Also enables fast mode
automatically.
Signed-off-by: Itxaka <itxaka@kairos.io>
* Fix config loading, install device and call sanitize
Syncs the cfg.install.device to the installspec.target
As on manual-install the device can actually come from a flag and its
not on the cloud-config, we need to initialize the InstallSpec with the
value of the cfg.Install.Device as by that time we already have the
final value of the install target.
Also calls sanitize on config and specs and warns if anything goes wrong
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* Fix platform override and tests
The sanitize method for Config was never called so we never noticed that
its overriding the platform, even if we pass the WithPLatform option.
This patch fixes it by only overriding platform by default on sanitize
if the platform is empty, otherwise leave the platform on it values.
Also fixes the tests to use test facilities and a small fix to not try
to load the platform values form yaml
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* Init the Install in the Config init
Just in case something tries to access it so they dont find a nil
Also adjusts some more tests
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
---------
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>