2019-10-10 14:06:00 -04:00
|
|
|
.qa-job-base:
|
2022-08-30 08:12:25 -04:00
|
|
|
image: ${REGISTRY_HOST}/${REGISTRY_GROUP}/gitlab-build-images/debian-bullseye-ruby-${RUBY_VERSION}:bundler-2.3-chrome-${CHROME_VERSION}-docker-${DOCKER_VERSION}
|
2019-10-10 14:06:00 -04:00
|
|
|
extends:
|
|
|
|
- .default-retry
|
2020-06-02 08:08:33 -04:00
|
|
|
- .qa-cache
|
2019-10-10 14:06:00 -04:00
|
|
|
stage: test
|
2020-02-20 13:08:51 -05:00
|
|
|
needs: []
|
2021-05-14 14:10:34 -04:00
|
|
|
variables:
|
|
|
|
USE_BUNDLE_INSTALL: "false"
|
|
|
|
SETUP_DB: "false"
|
2021-09-07 08:11:26 -04:00
|
|
|
QA_EXPORT_TEST_METRICS: "false"
|
2019-10-10 14:06:00 -04:00
|
|
|
before_script:
|
2021-05-14 14:10:34 -04:00
|
|
|
- !reference [.default-before_script, before_script]
|
2022-07-15 05:10:09 -04:00
|
|
|
- cd qa && bundle install
|
2019-10-10 14:06:00 -04:00
|
|
|
|
|
|
|
qa:internal:
|
2020-02-06 13:08:54 -05:00
|
|
|
extends:
|
|
|
|
- .qa-job-base
|
2022-04-12 14:10:14 -04:00
|
|
|
- .qa:rules:internal
|
2019-10-10 14:06:00 -04:00
|
|
|
script:
|
2022-04-14 02:08:29 -04:00
|
|
|
- bundle exec rspec -O .rspec_internal
|
2019-10-10 14:06:00 -04:00
|
|
|
|
2020-02-18 10:08:51 -05:00
|
|
|
qa:internal-as-if-foss:
|
2020-01-23 07:08:38 -05:00
|
|
|
extends:
|
2020-06-02 08:08:33 -04:00
|
|
|
- qa:internal
|
2022-04-12 14:10:14 -04:00
|
|
|
- .qa:rules:internal-as-if-foss
|
2020-02-06 13:08:54 -05:00
|
|
|
- .as-if-foss
|
2020-01-23 07:08:38 -05:00
|
|
|
|
2019-10-10 14:06:00 -04:00
|
|
|
qa:selectors:
|
2020-02-06 13:08:54 -05:00
|
|
|
extends:
|
|
|
|
- .qa-job-base
|
|
|
|
- .qa:rules:ee-and-foss
|
2019-10-10 14:06:00 -04:00
|
|
|
script:
|
|
|
|
- bundle exec bin/qa Test::Sanity::Selectors
|
|
|
|
|
2022-03-25 14:07:24 -04:00
|
|
|
qa:master-auto-quarantine-dequarantine:
|
2022-01-19 10:14:05 -05:00
|
|
|
extends:
|
|
|
|
- .qa-job-base
|
|
|
|
rules:
|
|
|
|
- if: '$QA_TRIGGER_AUTO_QUARANTINE =~ /true|yes|1/i'
|
|
|
|
script:
|
2022-03-25 14:07:24 -04:00
|
|
|
- bundle exec confiner -r .confiner/master.yml
|
2022-01-19 10:14:05 -05:00
|
|
|
allow_failure: true
|
|
|
|
|
2022-03-25 14:07:24 -04:00
|
|
|
qa:nightly-auto-quarantine-dequarantine:
|
|
|
|
extends:
|
|
|
|
- .qa-job-base
|
|
|
|
rules:
|
|
|
|
- if: '$QA_TRIGGER_AUTO_QUARANTINE =~ /true|yes|1/i'
|
|
|
|
script:
|
|
|
|
- bundle exec confiner -r .confiner/nightly.yml
|
|
|
|
allow_failure: true
|
|
|
|
|
2020-02-18 10:08:51 -05:00
|
|
|
qa:selectors-as-if-foss:
|
2019-10-10 14:06:00 -04:00
|
|
|
extends:
|
|
|
|
- qa:selectors
|
2020-05-15 11:08:04 -04:00
|
|
|
- .qa:rules:as-if-foss
|
2020-02-06 13:08:54 -05:00
|
|
|
- .as-if-foss
|
2019-10-10 14:06:00 -04:00
|
|
|
|
2022-08-30 08:12:25 -04:00
|
|
|
qa:update-qa-cache:
|
2020-06-02 08:08:33 -04:00
|
|
|
extends:
|
|
|
|
- .qa-job-base
|
2021-05-18 08:10:26 -04:00
|
|
|
- .qa-cache-push
|
2020-06-02 08:08:33 -04:00
|
|
|
- .shared:rules:update-cache
|
|
|
|
stage: prepare
|
|
|
|
script:
|
|
|
|
- echo "Cache has been updated and ready to be uploaded."
|
|
|
|
|
2022-08-30 08:12:25 -04:00
|
|
|
populate-e2e-test-vars:
|
2022-06-09 14:08:13 -04:00
|
|
|
extends:
|
2022-08-30 08:12:25 -04:00
|
|
|
- .qa-job-base
|
2022-08-31 05:13:12 -04:00
|
|
|
- .qa:rules:determine-e2e-tests
|
2022-06-09 14:08:13 -04:00
|
|
|
stage: prepare
|
2022-08-30 08:12:25 -04:00
|
|
|
variables:
|
|
|
|
ENV_FILE: $CI_PROJECT_DIR/qa_tests_vars.env
|
|
|
|
COLORIZED_LOGS: "true"
|
2022-06-09 14:08:13 -04:00
|
|
|
script:
|
2022-08-30 08:12:25 -04:00
|
|
|
- bundle exec rake "ci:detect_changes[$ENV_FILE]"
|
2022-06-09 14:08:13 -04:00
|
|
|
artifacts:
|
2022-08-30 08:12:25 -04:00
|
|
|
expire_in: 1 day
|
2022-06-09 14:08:13 -04:00
|
|
|
reports:
|
2022-08-30 08:12:25 -04:00
|
|
|
dotenv: $ENV_FILE
|
2022-06-09 14:08:13 -04:00
|
|
|
|
2022-08-30 08:12:25 -04:00
|
|
|
e2e-test-pipeline-generate:
|
|
|
|
extends:
|
2022-08-31 05:13:12 -04:00
|
|
|
- .qa:rules:determine-e2e-tests
|
2022-08-30 08:12:25 -04:00
|
|
|
stage: prepare
|
|
|
|
when: on_success
|
2020-03-19 11:09:41 -04:00
|
|
|
needs:
|
2022-08-30 08:12:25 -04:00
|
|
|
- populate-e2e-test-vars
|
2021-10-18 20:10:29 -04:00
|
|
|
variables:
|
2022-08-30 08:12:25 -04:00
|
|
|
PIPELINE_YML: package-and-test.yml
|
2021-10-18 20:10:29 -04:00
|
|
|
script:
|
2022-08-30 08:12:25 -04:00
|
|
|
- scripts/generate-e2e-pipeline $PIPELINE_YML
|
|
|
|
artifacts:
|
|
|
|
expire_in: 1 day
|
|
|
|
paths:
|
|
|
|
- $PIPELINE_YML
|
2021-10-18 20:10:29 -04:00
|
|
|
|
2022-08-30 08:12:25 -04:00
|
|
|
e2e:package-and-test:
|
2021-10-18 20:10:29 -04:00
|
|
|
extends:
|
2022-08-31 05:13:12 -04:00
|
|
|
- .qa:rules:package-and-test
|
2022-08-30 08:12:25 -04:00
|
|
|
stage: qa
|
|
|
|
when: on_success
|
|
|
|
needs:
|
|
|
|
- build-assets-image
|
|
|
|
- build-qa-image
|
|
|
|
- e2e-test-pipeline-generate
|
|
|
|
trigger:
|
|
|
|
strategy: depend
|
|
|
|
include:
|
|
|
|
- artifact: package-and-test.yml
|
|
|
|
job: e2e-test-pipeline-generate
|