feat: input variable with options to enable automatic runwayjob execution
What
How It Works
Service Project Flow:
- Service projects have jobs that extend
.[$[[ inputs.runway_service_id ]]] Execute Job <name>
- These jobs in
impl.yml
andrunway.yml
trigger the deployment project withRUNWAY_EXECUTE_JOB_MODE: automatic
- The deployment project receives this trigger and runs
👷 <name> Run job
(defined incloud-run.yml
)
Current Behavior:
-
👷 <name> Run job
seesRUNWAY_EXECUTE_JOB=true
and runs withwhen: manual
With This Change:
- If
RUNWAY_EXECUTE_JOB_MODE=automatic
, the job runs automatically - Otherwise, it still requires manual execution
How to Use It
In a service project's CI file (e.g., .gitlab-ci.yml
), when you include the service-project file:
include:
- project: gitlab-com/gl-infra/platform/runway/runwayctl
file: ci-tasks/service-project/runway.yml
inputs:
runway_service_id: $[[ inputs.runway_service_id ]]
runway_job_execute_mode: automatic # New field added here
image: $[[ inputs.container_image ]]
runway_version: v4.3.0 # datasource=gitlab-releases depName=gitlab-com/gl-infra/platform/runway/runwayctl
Trigger Example Job - staging:
extends: .[example-job-431wm0] Execute Job staging
Documentation update in docs!283 (merged)
Why
This change will support allowing RunwayJobs to be triggered automatically by CI.
This is ideal for cells/protocells and this Issue is motivating this feature.
Edited by Steve Xuereb