Bridge jobs can't be restarted if a pipeline is canceled.
teamDelivery uses multi-project pipelines to trigger deployments to our different environments: staging-canary, staging, canary, and production. In a general overview, the release-tools pipeline, also known as the coordinated pipeline: tags, builds a package and then deploys it through our different environments by triggering a pipeline into the deployer project. The complete definition of this coordinated pipeline can be found in the release-tools
repository.
On more than one occasion, we've canceled and retried a coordinated pipeline, only to notice that the bridge jobs were not restarted as expected, they continue to be marked as skipped
. Example:
- Pipeline: https://ops.gitlab.net/gitlab-org/release/tools/-/pipelines/717341 1
- Screenshot:
This was surprising to us as we were expecting that restarting the parent pipeline would cause the bridge jobs to be restarted as well.
Expected outcome
When canceling and retrying an upstream pipeline, the bridge jobs should be restarted as well.
Slack conversation - Internal only
-
You might not have access to this repository for compliance reasons.
↩