Don't run assets and QA relevant jobs before approved
What does this MR do and why?
Don't run build-assets-images
, compile-production-assets
, and build-qa-image
before approved
This requires aligning with all the dependent jobs, meaning that we also no longer run some of the E2E tests under some conditions.
This also completes some of the missing parts from !145544 (merged)
The goal is the same. We don't want to run E2E tests and all relevant jobs before approval, unless really needed.
-
This also fixes that we run E2E tests when pipeline:run-all-e2e even when the merge request is not approved.
Break down of the intended behaviours:
Before approval
- If pipeline:run-all-e2e is set, we run E2E tests automatically
- If there are specific changes like
qa-patterns
, etc, we run E2E tests automatically - We provide a manual action
FILL ME
to trigger E2E tests otherwise.
After approval
- Everything from before approval is still true after approval
- If there are some other specific changes like
dependency-patterns
, etc, we run E2E tests automatically
How to validate
Testing this at !148195 (closed) for before approval and at !147915 (closed) for after approval.
Changing only to:
Before approval
-
.dockerignore
(qa-patterns): https://gitlab.com/gitlab-org/gitlab/-/pipelines/1238328082-
✅ E2E tests are running automatically. No manual job to run another E2E because no changes to code-pattern
-
-
config/feature_flags/ops/feature_flag_state_logs.yml
(feature-flag-development-config-patterns): https://gitlab.com/gitlab-org/gitlab/-/pipelines/1238361502-
✅ E2E tests are not running automatically. A manual job is there to run it
-
-
ee/app/controllers/admin/audit_log_reports_controller.rb
(code-pattern): https://gitlab.com/gitlab-org/gitlab/-/pipelines/1238369642-
✅ E2E tests are not running automatically. A manual job is there to run it
-
After approval
-
.dockerignore
(qa-patterns): https://gitlab.com/gitlab-org/gitlab/-/pipelines/1238341837-
✅ E2E tests are running automatically. No manual job to run another E2E because no changes to code-pattern
-
-
config/feature_flags/ops/feature_flag_state_logs.yml
(feature-flag-development-config-patterns): https://gitlab.com/gitlab-org/gitlab/-/pipelines/1238353062-
✅ E2E tests are running automatically. A manual job is there to run it, too, which is not ideal but not a big deal.
-
-
ee/app/controllers/admin/audit_log_reports_controller.rb
(code-patterns): https://gitlab.com/gitlab-org/gitlab/-/pipelines/1238399216-
✅ E2E tests are not running automatically. Bothtrigger-omnibus
andmanual:e2e-test-pipeline-generate
are manual
-
-
ee/app/controllers/admin/audit_log_reports_controller.rb
(code-patterns) with devopssecure: https://gitlab.com/gitlab-org/gitlab/-/pipelines/1238410601-
✅ E2E tests are not running automatically. Bothtrigger-omnibus
andmanual:e2e-test-pipeline-generate
are manual. -
✅ A message to ask people to trigger it: !147915 (comment 1843790538)
-
Related to #449031 (closed)
Edited by Lin Jen-Shin