Commit dd123a4a authored by Albert Salim's avatar Albert Salim

Merge branch...

Merge branch '343510-allow-mr-author-to-automatically-run-review-app-pipeline-by-using-a-label' into 'master'

ci: Allow to force Review App to be deployed with a label

See merge request gitlab-org/gitlab!73568
parents e43c8d5b 045f13de
...@@ -58,6 +58,9 @@ ...@@ -58,6 +58,9 @@
.if-merge-request-labels-run-decomposed: &if-merge-request-labels-run-decomposed .if-merge-request-labels-run-decomposed: &if-merge-request-labels-run-decomposed
if: '$CI_MERGE_REQUEST_LABELS =~ /pipeline:run-decomposed/' if: '$CI_MERGE_REQUEST_LABELS =~ /pipeline:run-decomposed/'
.if-merge-request-labels-run-review-app: &if-merge-request-labels-run-review-app
if: '$CI_MERGE_REQUEST_LABELS =~ /pipeline:run-review-app/'
.if-security-merge-request: &if-security-merge-request .if-security-merge-request: &if-security-merge-request
if: '$CI_PROJECT_NAMESPACE == "gitlab-org/security" && $CI_MERGE_REQUEST_IID' if: '$CI_PROJECT_NAMESPACE == "gitlab-org/security" && $CI_MERGE_REQUEST_IID'
...@@ -447,6 +450,7 @@ ...@@ -447,6 +450,7 @@
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-dot-com-gitlab-org-and-security-merge-request - <<: *if-dot-com-gitlab-org-and-security-merge-request
changes: *ci-build-images-patterns changes: *ci-build-images-patterns
- <<: *if-dot-com-gitlab-org-and-security-merge-request - <<: *if-dot-com-gitlab-org-and-security-merge-request
...@@ -459,6 +463,7 @@ ...@@ -459,6 +463,7 @@
rules: rules:
- <<: *if-not-canonical-namespace - <<: *if-not-canonical-namespace
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-auto-deploy-branches - <<: *if-auto-deploy-branches
- changes: *ci-build-images-patterns - changes: *ci-build-images-patterns
- changes: *code-qa-patterns - changes: *code-qa-patterns
...@@ -540,6 +545,7 @@ ...@@ -540,6 +545,7 @@
rules: rules:
- <<: *if-not-canonical-namespace - <<: *if-not-canonical-namespace
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-auto-deploy-branches - <<: *if-auto-deploy-branches
- changes: *code-qa-patterns - changes: *code-qa-patterns
...@@ -1505,6 +1511,7 @@ ...@@ -1505,6 +1511,7 @@
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *ci-review-patterns changes: *ci-review-patterns
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
...@@ -1521,6 +1528,7 @@ ...@@ -1521,6 +1528,7 @@
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *ci-review-patterns changes: *ci-review-patterns
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
...@@ -1536,6 +1544,7 @@ ...@@ -1536,6 +1544,7 @@
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *ci-review-patterns changes: *ci-review-patterns
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
...@@ -1554,6 +1563,7 @@ ...@@ -1554,6 +1563,7 @@
when: never when: never
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *ci-review-patterns changes: *ci-review-patterns
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
...@@ -1569,6 +1579,7 @@ ...@@ -1569,6 +1579,7 @@
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *code-qa-patterns changes: *code-qa-patterns
...@@ -1576,6 +1587,7 @@ ...@@ -1576,6 +1587,7 @@
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *ci-review-patterns changes: *ci-review-patterns
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
...@@ -1590,11 +1602,17 @@ ...@@ -1590,11 +1602,17 @@
# The rule needs to be duplicated between `on_success` and `on_failure` # The rule needs to be duplicated between `on_success` and `on_failure`
# because the jobs `needs` the previous job to complete. # because the jobs `needs` the previous job to complete.
# With `when: always`, and the `review-qa-*` jobs are manual, the `allure-report-qa-*` jobs
# would start running before the qa jobs have started.
# See https://gitlab.com/gitlab-org/gitlab/-/merge_requests/63844#note_599012559 # See https://gitlab.com/gitlab-org/gitlab/-/merge_requests/63844#note_599012559
.review:rules:review-qa-smoke-report: .review:rules:review-qa-smoke-report:
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
when: on_success
- <<: *if-merge-request-labels-run-review-app
when: on_failure
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *ci-review-patterns changes: *ci-review-patterns
when: on_success when: on_success
...@@ -1622,6 +1640,7 @@ ...@@ -1622,6 +1640,7 @@
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *code-patterns changes: *code-patterns
when: manual when: manual
...@@ -1634,11 +1653,17 @@ ...@@ -1634,11 +1653,17 @@
# The rule needs to be duplicated between `on_success` and `on_failure` # The rule needs to be duplicated between `on_success` and `on_failure`
# because the jobs `needs` the previous job to complete. # because the jobs `needs` the previous job to complete.
# With `when: always`, and the `review-qa-*` jobs are manual, the `allure-report-qa-*` jobs
# would start running before the qa jobs have started.
# See https://gitlab.com/gitlab-org/gitlab/-/merge_requests/63844#note_599012559 # See https://gitlab.com/gitlab-org/gitlab/-/merge_requests/63844#note_599012559
.review:rules:review-qa-all-report: .review:rules:review-qa-all-report:
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
when: on_success
- <<: *if-merge-request-labels-run-review-app
when: on_failure
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *code-patterns changes: *code-patterns
when: manual when: manual
...@@ -1673,6 +1698,9 @@ ...@@ -1673,6 +1698,9 @@
rules: rules:
- <<: *if-not-ee - <<: *if-not-ee
when: never when: never
- <<: *if-merge-request-labels-run-review-app
when: manual
allow_failure: true
- <<: *if-dot-com-gitlab-org-merge-request - <<: *if-dot-com-gitlab-org-merge-request
changes: *code-qa-patterns changes: *code-qa-patterns
when: manual when: manual
......
...@@ -181,6 +181,8 @@ that includes `rspec-profile` in their name. ...@@ -181,6 +181,8 @@ that includes `rspec-profile` in their name.
Consult the [Review Apps](testing_guide/review_apps.md) dedicated page for more information. Consult the [Review Apps](testing_guide/review_apps.md) dedicated page for more information.
If you want to force a Review App to be deployed regardless of your changes, you can add the `pipeline:run-review-app` label to the merge request.
## As-if-FOSS jobs ## As-if-FOSS jobs
The `* as-if-foss` jobs run the GitLab test suite "as if FOSS", meaning as if the jobs would run in the context The `* as-if-foss` jobs run the GitLab test suite "as if FOSS", meaning as if the jobs would run in the context
......
...@@ -16,6 +16,7 @@ For any of the following scenarios, the `start-review-app-pipeline` job would be ...@@ -16,6 +16,7 @@ For any of the following scenarios, the `start-review-app-pipeline` job would be
- for merge requests with frontend changes - for merge requests with frontend changes
- for merge requests with QA changes - for merge requests with QA changes
- for scheduled pipelines - for scheduled pipelines
- the MR has the `pipeline:run-review-app` label set
## QA runs on Review Apps ## QA runs on Review Apps
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment