Find a good way to dry-run schedules
!342 (merged) introduced a serious problem described in #357 (closed), and we need a good way to dry-run those schedule configurations.
Proposal
I am thinking that we can perhaps create a special manual dry-run job, which takes a new variable called TRIAGE_SCHEDULE_NAME
, and given for example gitlab-org
, then the job will parse pipeline-schedules.yml
, and the corresponding schedule (YAML top-level key should be unique), and then simulate running the schedule in dry-run mode.
This should honor the priority of variables mentioned in Priority of environment variables
It's still not an "actual" dry-run, because we need to simulate the priorities, and that can be changing and we'll need to adapt. However I guess this is better than nothing?
Alternative proposal
Alternatively, we can make the dry-run actually generates a dry-run schedule, and trigger it to run! This will be the best dry-run but could be much more difficult to set up.