Add more chaos to GitLab
As part of the puma experiment, it would be helpful to have some endpoints in the GitLab application that deliberately do bad things.
What type of bad things?
- Memory leaks
- CPU spins
- Long running http responses
- Worker Harikari:
kill -9 Process.pid
I propose we add three new endpoints to GitLab:
/-/chaos/leakmem
/-/chaos/cpuspin
/-/chaos/sleep
/-/chaos/kill
These would obviously be disabled in a normal operation.
By default these would be disabled. In order to enable them an environment variable needs to be set GITLAB_ENABLE_CHAOS_ENDPOINTS
. Additionally a GITLAB_CHAOS_SECRET
env var needs to be set. Additionally, a X-Chaos-Secret
header should be set in order for these endpoints to work.
Edited by Andrew Newdigate