Kubernetes termination grace period
What does this MR do?
Add a configuration option for the termination grace period of build pods.
Why was this MR needed?
When a build is finished (e.g. Pod is deleted) Kubernetes will send SIGTERM to applications in the containers of the Pod, which can be handled in order to effect graceful termination. SIGKILL is sent a configurable number of seconds later if the application does not terminate sooner (defaults to 30 seconds, controlled by
Lots of fast, parallel builds will leave Pods of finished builds behind for 30 seconds, blocking cluster resources. With a lower (or even
terminationGracePeriodSeconds, Pods of finished builds will be cleaned up immediately.
Are there points in the code the reviewer needs to double check?
@munnerz could you give me a hint on how to integrate that into the existing tests?
Does this MR meet the acceptance criteria?
- Documentation created/updated
- Added for this feature/bug
- All builds are passing
Branch has no merge conflicts with
master(if you do - rebase it please)