.qa-job-base: image: ${REGISTRY_HOST}/${REGISTRY_GROUP}/gitlab-build-images/debian-bullseye-ruby-${RUBY_VERSION}:bundler-2.3-chrome-${CHROME_VERSION}-docker-${DOCKER_VERSION} extends: - .default-retry - .qa-cache stage: test needs: [] variables: USE_BUNDLE_INSTALL: "false" SETUP_DB: "false" before_script: - !reference [.default-before_script, before_script] - cd qa && bundle install qa:internal: extends: - .qa-job-base - .qa:rules:internal script: - bundle exec rspec -O .rspec_internal qa:internal-as-if-foss: extends: - qa:internal - .qa:rules:internal-as-if-foss - .as-if-foss qa:master-auto-quarantine-dequarantine: extends: - .qa-job-base rules: - if: '$QA_TRIGGER_AUTO_QUARANTINE =~ /true|yes|1/i' script: - bundle exec confiner -r .confiner/master.yml allow_failure: true 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 qa:update-qa-cache: extends: - .qa-job-base - .qa-cache-push - .shared:rules:update-cache stage: prepare script: - echo "Cache has been updated and ready to be uploaded." e2e:package-and-test-ee: extends: - .production # this makes sure GITLAB_ALLOW_SEPARATE_CI_DATABASE is passed to the child pipeline - .qa:rules:package-and-test-ee stage: qa needs: - build-assets-image - build-qa-image - e2e-test-pipeline-generate variables: # This is needed by `trigger-omnibus-env` (`.gitlab/ci/package-and-test/main.gitlab-ci.yml`). PARENT_PIPELINE_ID: $CI_PIPELINE_ID SKIP_MESSAGE: Skipping package-and-test due to mr containing only quarantine changes! RELEASE: "${REGISTRY_HOST}/${REGISTRY_GROUP}/build/omnibus-gitlab-mirror/gitlab-ee:${CI_COMMIT_SHA}" GITLAB_QA_IMAGE: "${CI_REGISTRY_IMAGE}/gitlab-ee-qa:${CI_COMMIT_SHA}" RUN_WITH_BUNDLE: "true" # instructs pipeline to install and run gitlab-qa gem via bundler QA_PATH: qa # sets the optional path for bundler to run from QA_RUN_TYPE: e2e-package-and-test ALLURE_JOB_NAME: e2e-package-and-test PIPELINE_NAME: E2E Omnibus GitLab EE inherit: variables: - CHROME_VERSION - RUBY_VERSION - DOCKER_VERSION - REGISTRY_GROUP - REGISTRY_HOST - OMNIBUS_GITLAB_CACHE_EDITION - OMNIBUS_GITLAB_RUBY3_BUILD - OMNIBUS_GITLAB_RUBY2_BUILD trigger: strategy: depend forward: yaml_variables: true pipeline_variables: true include: - artifact: package-and-test-pipeline.yml job: e2e-test-pipeline-generate e2e:package-and-test-ce: extends: - e2e:package-and-test-ee - .qa:rules:package-and-test-ce needs: - build-assets-image as-if-foss - build-qa-image as-if-foss - e2e-test-pipeline-generate variables: FOSS_ONLY: "1" RELEASE: ${REGISTRY_HOST}/${REGISTRY_GROUP}/build/omnibus-gitlab-mirror/gitlab-ce:${CI_COMMIT_SHA} GITLAB_QA_IMAGE: ${CI_REGISTRY_IMAGE}/gitlab-ce-qa:${CI_COMMIT_SHA} QA_RUN_TYPE: e2e-package-and-test-ce ALLURE_JOB_NAME: e2e-package-and-test-ce PIPELINE_NAME: E2E Omnibus GitLab CE e2e:package-and-test-super-sidebar: extends: - e2e:package-and-test-ee - .qa:rules:package-and-test-sidebar when: manual variables: QA_SUPER_SIDEBAR_ENABLED: "true" EXTRA_GITLAB_QA_OPTS: --set-feature-flags super_sidebar_nav=enabled QA_RUN_TYPE: e2e-package-and-test-super-sidebar ALLURE_JOB_NAME: e2e-package-and-test-super-sidebar PIPELINE_NAME: E2E Omnibus Super Sidebar e2e:test-on-gdk: extends: - .qa:rules:e2e:test-on-gdk stage: qa needs: # In scheduled master pipelines we wait for the image to be built. # In MRs we assume the last scheduled master pipeline built the image already. - job: build-qa-on-gdk-master-image optional: true allow_failure: true trigger: strategy: depend forward: yaml_variables: true pipeline_variables: true include: .gitlab/ci/test-on-gdk/main.gitlab-ci.yml