The operator's BootcNodePool spec already has a disruption.rebootPolicy field with RebootOnly (default) and AllowSoftReboot values, but the daemon doesn't implement soft reboot yet.
When AllowSoftReboot is set, the daemon should pass --soft-reboot=auto to bootc switch --from-downloaded --apply. This performs a userspace-only restart when possible (no kernel changes), avoiding a full hardware reboot. This significantly reduces disruption for updates that only change userspace content.
Upstream bootc support: bootc switch --apply --soft-reboot=auto is already available (see bootc-switch.8).
Add an e2e test that creates a pool with AllowSoftReboot, triggers an update, and verifies the node comes back up without a full reboot (e.g. by checking that the boot ID is preserved).
The operator's
BootcNodePoolspec already has adisruption.rebootPolicyfield withRebootOnly(default) andAllowSoftRebootvalues, but the daemon doesn't implement soft reboot yet.When
AllowSoftRebootis set, the daemon should pass--soft-reboot=autotobootc switch --from-downloaded --apply. This performs a userspace-only restart when possible (no kernel changes), avoiding a full hardware reboot. This significantly reduces disruption for updates that only change userspace content.Upstream bootc support:
bootc switch --apply --soft-reboot=autois already available (see bootc-switch.8).Add an e2e test that creates a pool with
AllowSoftReboot, triggers an update, and verifies the node comes back up without a full reboot (e.g. by checking that the boot ID is preserved).