Description
When a CloudBees CD (CloudBees Flow) step is aborted or force aborted, what mechanism is being used in the OS?
Solution
For force abort, the server:
-
sends an abort command to the agent
-
marks the step aborted (without waiting for the agent to finish aborting the step)
After the agent receives the message, it:
-
sends a SIGTERM signal to ecwrapper
-
waits for ecwrapper to complete
-
ecwrapper in turn sends a SIGTERM to the actual running command even though this is a force abort.
-
If the command does not complete in 2 minutes, ecwrapper sends a kill -9 to all child processes associated with this step.
-
In other words, regardless of regular abort or force abort, the agent waits two minutes before kill -9’ing the step.