Allow customization of ProductionStatus checks at call-time
In the future we will want to customize the checks run on conditions
besides a singular skip_active_deployment_check
parameter.
Rather than adding a new conditional argument every time we want to add (or remove) a check, this change sets a defined list of checks that always get run, and then accepts a list of additional checks to include if the caller deems them necessary.
For user friendliness, these checks are provided as short symbol names
and then converted to instances of a Check
class at runtime.
This is a refactor to support gitlab-com/gl-infra/delivery#1391 (closed), where we'll implement a "canary drained" check only for the baking time path.
Edited by Robert Speicher