diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-01-18 22:00:14 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-01-18 22:00:14 +0300 |
commit | 05f0ebba3a2c8ddf39e436f412dc2ab5bf1353b2 (patch) | |
tree | 11d0f2a6ec31c7793c184106cedc2ded3d9a2cc5 /.gitlab-ci.yml | |
parent | ec73467c23693d0db63a797d10194da9e72a74af (diff) |
Add latest changes from gitlab-org/gitlab@15-8-stable-eev15.8.0-rc42
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r-- | .gitlab-ci.yml | 66 |
1 files changed, 43 insertions, 23 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 18a3fad2f3f..595a41fd8ca 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -29,6 +29,8 @@ workflow: rules: # If `$FORCE_GITLAB_CI` is set, create a pipeline. - if: '$FORCE_GITLAB_CI' + variables: + RUBY_VERSION: "3.0" # As part of the process of creating RCs automatically, we update stable # branches with the changes of the most recent production deployment. The # merge requests used for this merge a branch release-tools/X into a stable @@ -36,53 +38,70 @@ workflow: # they serve no purpose and will run anyway when the changes are merged. - if: '$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^release-tools\/\d+\.\d+\.\d+-rc\d+$/ && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME =~ /^[\d-]+-stable(-ee)?$/ && $CI_PROJECT_PATH == "gitlab-org/gitlab"' when: never - # For merge requests running exclusively in Ruby 3.0 - - if: '$CI_MERGE_REQUEST_LABELS =~ /pipeline:run-in-ruby3/' + # For merge requests running exclusively in Ruby 2.7 + - if: '$CI_MERGE_REQUEST_LABELS =~ /pipeline:run-in-ruby2/' variables: - RUBY_VERSION: "3.0" - PIPELINE_NAME: 'Ruby 3 $CI_MERGE_REQUEST_EVENT_TYPE MR pipeline' + RUBY_VERSION: "2.7" + PIPELINE_NAME: 'Ruby 2 $CI_MERGE_REQUEST_EVENT_TYPE MR pipeline' # For (detached) merge request pipelines. - if: '$CI_MERGE_REQUEST_IID' variables: - PIPELINE_NAME: '$CI_MERGE_REQUEST_EVENT_TYPE MR pipeline' + RUBY_VERSION: "3.0" + OMNIBUS_GITLAB_RUBY3_BUILD: "true" + OMNIBUS_GITLAB_CACHE_EDITION: "GITLAB_RUBY3" + PIPELINE_NAME: 'Ruby 3 $CI_MERGE_REQUEST_EVENT_TYPE MR pipeline' # For the scheduled pipelines, we set specific variables. - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_PIPELINE_SOURCE == "schedule"' variables: + RUBY_VERSION: "3.0" + OMNIBUS_GITLAB_RUBY3_BUILD: "true" + OMNIBUS_GITLAB_CACHE_EDITION: "GITLAB_RUBY3" CRYSTALBALL: "true" CREATE_INCIDENT_FOR_PIPELINE_FAILURE: "true" NOTIFY_PIPELINE_FAILURE_CHANNEL: "master-broken" PIPELINE_NAME: 'Scheduled $CI_COMMIT_BRANCH pipeline' - # Run pipelines for ruby3 branch - - if: '$CI_COMMIT_BRANCH == "ruby3" && $CI_PIPELINE_SOURCE == "schedule"' + # Run pipelines for ruby2 branch + - if: '$CI_COMMIT_BRANCH == "ruby2" && $CI_PIPELINE_SOURCE == "schedule"' variables: - RUBY_VERSION: "3.0" + RUBY_VERSION: "2.7" NOTIFY_PIPELINE_FAILURE_CHANNEL: "f_ruby3" - OMNIBUS_GITLAB_RUBY3_BUILD: "true" - OMNIBUS_GITLAB_CACHE_EDITION: "GITLAB_RUBY3" - PIPELINE_NAME: 'Scheduled ruby 3 pipeline' + PIPELINE_NAME: 'Scheduled ruby 2 pipeline' # This work around https://gitlab.com/gitlab-org/gitlab/-/issues/332411 whichs prevents usage of dependency proxy # when pipeline is triggered by a project access token. - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $GITLAB_USER_LOGIN =~ /project_\d+_bot\d*/' variables: + RUBY_VERSION: "3.0" + OMNIBUS_GITLAB_RUBY3_BUILD: "true" + OMNIBUS_GITLAB_CACHE_EDITION: "GITLAB_RUBY3" GITLAB_DEPENDENCY_PROXY_ADDRESS: "" CREATE_INCIDENT_FOR_PIPELINE_FAILURE: "true" NOTIFY_PIPELINE_FAILURE_CHANNEL: "master-broken" # For `$CI_DEFAULT_BRANCH` branch, create a pipeline (this includes on schedules, pushes, merges, etc.). - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' variables: + RUBY_VERSION: "3.0" + OMNIBUS_GITLAB_RUBY3_BUILD: "true" + OMNIBUS_GITLAB_CACHE_EDITION: "GITLAB_RUBY3" CREATE_INCIDENT_FOR_PIPELINE_FAILURE: "true" NOTIFY_PIPELINE_FAILURE_CHANNEL: "master-broken" # For tags, create a pipeline. - if: '$CI_COMMIT_TAG' + variables: + RUBY_VERSION: "2.7" # If `$GITLAB_INTERNAL` isn't set, don't create a pipeline. - if: '$GITLAB_INTERNAL == null' when: never # For stable, auto-deploy, and security branches, create a pipeline. - if: '$CI_COMMIT_BRANCH =~ /^[\d-]+-stable(-ee)?$/' variables: + RUBY_VERSION: "2.7" NOTIFY_PIPELINE_FAILURE_CHANNEL: "releases" - if: '$CI_COMMIT_BRANCH =~ /^\d+-\d+-auto-deploy-\d+$/' + variables: + RUBY_VERSION: "2.7" - if: '$CI_COMMIT_BRANCH =~ /^security\//' + variables: + RUBY_VERSION: "2.7" variables: PG_VERSION: "12" @@ -108,22 +127,23 @@ variables: RUBY_VERSION: "2.7" GO_VERSION: "1.18" - TMP_TEST_FOLDER: "${CI_PROJECT_DIR}/tmp/tests" - GITLAB_WORKHORSE_FOLDER: "gitlab-workhorse" - TMP_TEST_GITLAB_WORKHORSE_PATH: "${TMP_TEST_FOLDER}/${GITLAB_WORKHORSE_FOLDER}" - KNAPSACK_RSPEC_SUITE_REPORT_PATH: knapsack/report-master.json FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json - RSPEC_TESTS_MAPPING_PATH: crystalball/mapping.json - RSPEC_PACKED_TESTS_MAPPING_PATH: crystalball/packed-mapping.json - RSPEC_PROFILING_FOLDER_PATH: rspec/profiling FRONTEND_FIXTURES_MAPPING_PATH: crystalball/frontend_fixtures_mapping.json - RSPEC_CHANGED_FILES_PATH: rspec/changed_files.txt - RSPEC_MATCHING_TESTS_PATH: rspec/matching_tests.txt - RSPEC_MATCHING_TESTS_FOSS_PATH: rspec/matching_tests-foss.txt - RSPEC_LAST_RUN_RESULTS_FILE: rspec/rspec_last_run_results.txt - RSPEC_FOSS_IMPACT_PIPELINE_YML: rspec-foss-impact-pipeline.yml + GITLAB_WORKHORSE_FOLDER: "gitlab-workhorse" JUNIT_RESULT_FILE: rspec/junit_rspec.xml JUNIT_RETRY_FILE: rspec/junit_rspec-retry.xml + KNAPSACK_RSPEC_SUITE_REPORT_PATH: knapsack/report-master.json + RSPEC_CHANGED_FILES_PATH: rspec/changed_files.txt + RSPEC_FOSS_IMPACT_PIPELINE_YML: rspec-foss-impact-pipeline.yml + RSPEC_LAST_RUN_RESULTS_FILE: rspec/rspec_last_run_results.txt + RSPEC_MATCHING_JS_FILES_PATH: rspec/js_matching_files.txt + RSPEC_MATCHING_TESTS_FOSS_PATH: rspec/matching_tests-foss.txt + RSPEC_MATCHING_TESTS_PATH: rspec/matching_tests.txt + RSPEC_PACKED_TESTS_MAPPING_PATH: crystalball/packed-mapping.json + RSPEC_PROFILING_FOLDER_PATH: rspec/profiling + RSPEC_TESTS_MAPPING_PATH: crystalball/mapping.json + TMP_TEST_FOLDER: "${CI_PROJECT_DIR}/tmp/tests" + TMP_TEST_GITLAB_WORKHORSE_PATH: "${TMP_TEST_FOLDER}/${GITLAB_WORKHORSE_FOLDER}" ES_JAVA_OPTS: "-Xms256m -Xmx256m" ELASTIC_URL: "http://elastic:changeme@elasticsearch:9200" |