cirrus-ci-docs
cirrus-ci-docs copied to clipboard
Support rebooting VMs
Description
Support script instruction which will result in the VM rebooting, requiring the Cirrus agent to re-connect before the next script instruction can run.
Context
Occasionally testing low-level changes like kernel options or (some kinds of) disk partitioning require rebooting. It's also useful when testing system-services or state which is intended to persist across reboots.
Anything Else
This is a low-priority item for us, as producing custom VM images is more/less a good enough solution for now. However, it is occasionally requested and could be a key differentiation for Cirrus vs other CI systems. Many don't support this, likely given the implementation/support cost.
@fkorotkov commented in an e-mail:
there was some work done to support Docker Pipes that allows to handle agent reconnection and continuation of a task from another container so it might be easier to do in the future.