+include:
+ - template: 'Workflows/Branch-Pipelines.gitlab-ci.yml'
+
stages:
- 'build docker'
- 'preparation'
manifest:
image: $MANIFEST_IMAGE
rules:
- - if: '$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME && $GITLAB_USER_LOGIN == "gstreamer-merge-bot"'
- when: 'always'
+ # Always have automatic pipeline for branchs in cerbero and docs
+ # cause they need to update artifacts, like the docs site or cerbero deps
- if: '$CI_PROJECT_PATH == "gstreamer/cerbero"'
- when: 'always'
- if: '$CI_PROJECT_PATH == "gstreamer/gst-docs"'
- when: 'always'
- - when: 'manual'
+
+ # If the user that triggered the Pipeline is the Merge bot and the branch doesn't match
+ # the upstream branch set, run the pipeline
+ - if: '$GITLAB_USER_LOGIN == "gstreamer-merge-bot" && $CI_COMMIT_BRANCH != "$GST_UPS_BRANCH"'
+ # When the user isn't the merge bot, require an explicit action to trigger the pipeline
+ # to avoid wasting CI resources
+ - if: '$GITLAB_USER_LOGIN != "gstreamer-merge-bot"'
+ when: 'manual'
+ # If this matches, it means the pipeline is running against either the main
+ # or a stable branch, so make it manual
+ - if: '$CI_COMMIT_BRANCH == "$GST_UPS_BRANCH"'
+ when: 'manual'
+
stage: 'preparation'
script:
- cd /gst-ci