summaryrefslogtreecommitdiff
path: root/.gitlab/ci
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-03-16 18:18:33 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2021-03-16 18:18:33 +0000
commitf64a639bcfa1fc2bc89ca7db268f594306edfd7c (patch)
treea2c3c2ebcc3b45e596949db485d6ed18ffaacfa1 /.gitlab/ci
parentbfbc3e0d6583ea1a91f627528bedc3d65ba4b10f (diff)
downloadgitlab-ce-f64a639bcfa1fc2bc89ca7db268f594306edfd7c.tar.gz
Add latest changes from gitlab-org/gitlab@13-10-stable-eev13.10.0-rc40
Diffstat (limited to '.gitlab/ci')
-rw-r--r--.gitlab/ci/cache-repo.gitlab-ci.yml2
-rw-r--r--.gitlab/ci/frontend.gitlab-ci.yml20
-rw-r--r--.gitlab/ci/global.gitlab-ci.yml12
-rw-r--r--.gitlab/ci/graphql.gitlab-ci.yml1
-rw-r--r--.gitlab/ci/rails.gitlab-ci.yml42
-rw-r--r--.gitlab/ci/reports.gitlab-ci.yml2
-rw-r--r--.gitlab/ci/review.gitlab-ci.yml18
-rw-r--r--.gitlab/ci/rules.gitlab-ci.yml64
-rw-r--r--.gitlab/ci/verify-lockfile.gitlab-ci.yml11
-rw-r--r--.gitlab/ci/workhorse.gitlab-ci.yml12
10 files changed, 115 insertions, 69 deletions
diff --git a/.gitlab/ci/cache-repo.gitlab-ci.yml b/.gitlab/ci/cache-repo.gitlab-ci.yml
index 18e1ca1644d..324c8615083 100644
--- a/.gitlab/ci/cache-repo.gitlab-ci.yml
+++ b/.gitlab/ci/cache-repo.gitlab-ci.yml
@@ -29,6 +29,7 @@ cache-repo:
- '[ -z "$CI_REPO_CACHE_CREDENTIALS" ] || gcloud auth activate-service-account --key-file=$CI_REPO_CACHE_CREDENTIALS'
script:
# Enable shallow repo caching only if the $ENABLE_SHALLOW_REPO_CACHING variable exists
+ # The `git repack` call works around a Git bug with shallow clones: https://gitlab.com/gitlab-org/git/-/issues/86
- if [ -n "$ENABLE_SHALLOW_REPO_CACHING" ]; then
cd .. && rm -rf $CI_PROJECT_NAME;
today=$(date +%Y-%m-%d);
@@ -38,6 +39,7 @@ cache-repo:
echo "Cloning $CI_REPOSITORY_URL into $CI_PROJECT_NAME with commits from $one_year_ago.";
time git clone --progress --no-checkout --shallow-since=$one_year_ago $CI_REPOSITORY_URL $CI_PROJECT_NAME;
cd $CI_PROJECT_NAME;
+ time git repack -d;
echo "Archiving $CI_PROJECT_NAME into /tmp/$SHALLOW_CLONE_TAR_FILENAME.";
time tar cf /tmp/$SHALLOW_CLONE_TAR_FILENAME .;
echo "GZipping /tmp/$SHALLOW_CLONE_TAR_FILENAME.";
diff --git a/.gitlab/ci/frontend.gitlab-ci.yml b/.gitlab/ci/frontend.gitlab-ci.yml
index 1b4b8a12772..910a58bcd0e 100644
--- a/.gitlab/ci/frontend.gitlab-ci.yml
+++ b/.gitlab/ci/frontend.gitlab-ci.yml
@@ -131,6 +131,24 @@ rspec-ee frontend_fixture:
- .frontend:rules:default-frontend-jobs
parallel: 2
+graphql-schema-dump:
+ variables:
+ SETUP_DB: "false"
+ extends:
+ - .default-retry
+ - .rails-cache
+ - .default-before_script
+ - .frontend:rules:default-frontend-jobs
+ stage: fixtures
+ needs: []
+ script:
+ - bundle exec rake gitlab:graphql:schema:dump
+ artifacts:
+ name: graphql-schema
+ paths:
+ - tmp/tests/graphql/gitlab_schema.graphql
+ - tmp/tests/graphql/gitlab_schema.json
+
.frontend-test-base:
extends:
- .frontend-base
@@ -214,7 +232,7 @@ jest-integration:
- *yarn-install
- run_timed_command "yarn jest:integration --ci"
# Don't use `needs` since `rspec-ee frontend_fixture` doesn't exist in `gitlab-foss` pipelines.
- dependencies: ["rspec frontend_fixture", "rspec-ee frontend_fixture"]
+ dependencies: ["rspec frontend_fixture", "rspec-ee frontend_fixture", "graphql-schema-dump"]
jest-as-if-foss:
extends:
diff --git a/.gitlab/ci/global.gitlab-ci.yml b/.gitlab/ci/global.gitlab-ci.yml
index 5de8a6bc250..de4b609098d 100644
--- a/.gitlab/ci/global.gitlab-ci.yml
+++ b/.gitlab/ci/global.gitlab-ci.yml
@@ -49,6 +49,14 @@
- vendor/ruby/
policy: pull
+.danger-review-cache:
+ cache:
+ key: "danger-review-v1"
+ paths:
+ - vendor/ruby/
+ - node_modules/
+ policy: pull
+
.qa-cache:
cache:
key: "qa-v2"
@@ -102,7 +110,7 @@
- name: postgres:11.6
command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"]
- name: redis:5.0-alpine
- - name: elasticsearch:7.10.1
+ - name: elasticsearch:7.11.1
command: ["elasticsearch", "-E", "discovery.type=single-node"]
variables:
POSTGRES_HOST_AUTH_METHOD: trust
@@ -113,7 +121,7 @@
- name: postgres:12
command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"]
- name: redis:5.0-alpine
- - name: elasticsearch:7.10.1
+ - name: elasticsearch:7.11.1
command: ["elasticsearch", "-E", "discovery.type=single-node"]
variables:
POSTGRES_HOST_AUTH_METHOD: trust
diff --git a/.gitlab/ci/graphql.gitlab-ci.yml b/.gitlab/ci/graphql.gitlab-ci.yml
index 4aff0ef6306..1a05f68b178 100644
--- a/.gitlab/ci/graphql.gitlab-ci.yml
+++ b/.gitlab/ci/graphql.gitlab-ci.yml
@@ -11,4 +11,3 @@ graphql-verify:
script:
- bundle exec rake gitlab:graphql:validate
- bundle exec rake gitlab:graphql:check_docs
- - bundle exec rake gitlab:graphql:check_schema
diff --git a/.gitlab/ci/rails.gitlab-ci.yml b/.gitlab/ci/rails.gitlab-ci.yml
index 22aa92779ea..e1ddefca99e 100644
--- a/.gitlab/ci/rails.gitlab-ci.yml
+++ b/.gitlab/ci/rails.gitlab-ci.yml
@@ -6,12 +6,17 @@
- .default-before_script
- .rails-cache
-.base-script: &base-script
- # Only install knapsack after bundle install! Otherwise oddly some native
- # gems could not be found under some circumstance. No idea why, hours wasted.
- - run_timed_command "gem install knapsack --no-document"
- - run_timed_command "scripts/gitaly-test-spawn"
- - source ./scripts/rspec_helpers.sh
+.minimal-bundle-install:
+ script:
+ - run_timed_command "bundle install --jobs=$(nproc) --path=vendor --retry=3 --quiet --without default development test production puma unicorn kerberos metrics omnibus ed25519"
+
+.base-script:
+ script:
+ # Only install knapsack after bundle install! Otherwise oddly some native
+ # gems could not be found under some circumstance. No idea why, hours wasted.
+ - run_timed_command "gem install knapsack --no-document"
+ - run_timed_command "scripts/gitaly-test-spawn"
+ - source ./scripts/rspec_helpers.sh
.minimal-rspec-tests:
variables:
@@ -27,7 +32,7 @@
RECORD_DEPRECATIONS: "true"
needs: ["setup-test-env", "retrieve-tests-metadata", "compile-test-assets", "detect-tests"]
script:
- - *base-script
+ - !reference [.base-script, script]
- rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag ~level:migration"
artifacts:
expire_in: 31d
@@ -49,7 +54,7 @@
.rspec-base-migration:
extends: .rails:rules:ee-and-foss-migration
script:
- - *base-script
+ - !reference [.base-script, script]
- rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag level:migration"
.rspec-base-pg11:
@@ -82,7 +87,7 @@
.rspec-ee-base-geo:
extends: .rspec-base
script:
- - *base-script
+ - !reference [.base-script, script]
- rspec_paralellized_job "--tag ~quarantine --tag geo"
.rspec-ee-base-geo-pg11:
@@ -142,7 +147,7 @@ setup-test-env:
extends:
- .rails-job-base
- .setup-test-env-cache
- - .rails:rules:default-refs-code-backstage-qa
+ - .rails:rules:code-backstage-qa
- .use-pg11
stage: prepare
variables:
@@ -162,6 +167,7 @@ setup-test-env:
- tmp/tests/gitaly/gitaly-lfs-smudge
- tmp/tests/gitaly/gitaly-ssh
- tmp/tests/gitaly/internal/
+ - tmp/tests/gitaly/internal_gitaly2/
- tmp/tests/gitaly/internal_sockets/
- tmp/tests/gitaly/Makefile
- tmp/tests/gitaly/praefect
@@ -212,7 +218,7 @@ update-coverage-cache:
- .shared:rules:update-cache
stage: prepare
script:
- - run_timed_command "bundle install --jobs=$(nproc) --path=vendor --retry=3 --quiet --without default development test production puma unicorn kerberos metrics omnibus ed25519"
+ - !reference [.minimal-bundle-install, script]
cache:
policy: push # We want to rebuild the cache from scratch to ensure stale dependencies are cleaned up.
@@ -243,7 +249,7 @@ update-static-analysis-cache:
static-analysis:
extends:
- .static-analysis-base
- - .rails:rules:default-refs-code-backstage-qa
+ - .rails:rules:code-backstage-qa
stage: test
parallel: 4
script:
@@ -316,7 +322,7 @@ rspec db-library-code pg12:
- .rspec-base-pg12
- .rails:rules:ee-and-foss-db-library-code
script:
- - *base-script
+ - !reference [.base-script, script]
- rspec_db_library_code
rspec fast_spec_helper:
@@ -405,7 +411,7 @@ gitlab:setup:
# db/fixtures/development/04_project.rb thanks to SIZE=1 below
- git clone https://gitlab.com/gitlab-org/gitlab-test.git
/home/git/repositories/gitlab-org/gitlab-test.git
- - *base-script
+ - !reference [.base-script, script]
- force=yes SIZE=1 FIXTURE_PATH="db/fixtures/development" bundle exec rake gitlab:setup
artifacts:
when: on_failure
@@ -485,7 +491,7 @@ rspec:coverage:
- memory-static
- memory-on-boot
script:
- - run_timed_command "bundle install --jobs=$(nproc) --path=vendor --retry=3 --quiet --without default development test production puma unicorn kerberos metrics omnibus ed25519"
+ - !reference [.minimal-bundle-install, script]
- run_timed_command "bundle exec scripts/merge-simplecov"
- run_timed_command "bundle exec scripts/gather-test-memory-data"
coverage: '/LOC \((\d+\.\d+%)\) covered.$/'
@@ -522,7 +528,7 @@ rspec:feature-flags:
- memory-static
- memory-on-boot
script:
- - run_timed_command "bundle install --jobs=$(nproc) --path=vendor --retry=3 --quiet --without default development test production puma unicorn kerberos metrics omnibus ed25519"
+ - !reference [.minimal-bundle-install, script]
- if [ "$CI_COMMIT_BRANCH" == "$CI_DEFAULT_BRANCH" ]; then
run_timed_command "bundle exec scripts/used-feature-flags" || (scripts/slack master-broken "☠️ \`${CI_JOB_NAME}\` failed! ☠️ See ${CI_JOB_URL}" ci_failing "GitLab Bot" && exit 1);
else
@@ -762,7 +768,7 @@ rspec fail-fast:
stage: test
needs: ["setup-test-env", "retrieve-tests-metadata", "compile-test-assets", "detect-tests"]
script:
- - *base-script
+ - !reference [.base-script, script]
- rspec_fail_fast tmp/matching_tests.txt "--tag ~quarantine"
artifacts:
expire_in: 7d
@@ -775,7 +781,7 @@ rspec foss-impact:
- .rails:rules:rspec-foss-impact
needs: ["setup-test-env", "retrieve-tests-metadata", "compile-test-assets as-if-foss", "detect-tests as-if-foss"]
script:
- - *base-script
+ - !reference [.base-script, script]
- rspec_matched_foss_tests tmp/matching_foss_tests.txt "--tag ~quarantine"
artifacts:
expire_in: 7d
diff --git a/.gitlab/ci/reports.gitlab-ci.yml b/.gitlab/ci/reports.gitlab-ci.yml
index 77ada89aa6a..4d54380cefe 100644
--- a/.gitlab/ci/reports.gitlab-ci.yml
+++ b/.gitlab/ci/reports.gitlab-ci.yml
@@ -15,7 +15,7 @@ code_quality:
stage: test
needs: []
variables:
- CODE_QUALITY_IMAGE: "registry.gitlab.com/gitlab-org/ci-cd/codequality:0.85.18"
+ CODE_QUALITY_IMAGE: "registry.gitlab.com/gitlab-org/ci-cd/codequality:0.85.23"
script:
- |
if ! docker info &>/dev/null; then
diff --git a/.gitlab/ci/review.gitlab-ci.yml b/.gitlab/ci/review.gitlab-ci.yml
index c18e898dc12..76191a923bf 100644
--- a/.gitlab/ci/review.gitlab-ci.yml
+++ b/.gitlab/ci/review.gitlab-ci.yml
@@ -225,12 +225,22 @@ parallel-spec-reports:
danger-review:
extends:
- .default-retry
- - .yarn-cache
+ - .danger-review-cache
- .review:rules:danger
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:danger
stage: test
needs: []
- script:
+ before_script:
- source ./scripts/utils.sh
+ - run_timed_command "bundle install --jobs=$(nproc) --path=vendor --retry=3 --quiet --with danger"
- run_timed_command "retry yarn install --frozen-lockfile"
- - danger --fail-on-errors=true --verbose
+ script:
+ - run_timed_command "bundle exec danger --fail-on-errors=true --verbose"
+
+update-danger-review-cache:
+ extends:
+ - danger-review
+ - .shared:rules:update-cache
+ stage: prepare
+ script: echo 'Cache is fresh!'
+ cache:
+ policy: push # We want to rebuild the cache from scratch to ensure stale dependencies are cleaned up.
diff --git a/.gitlab/ci/rules.gitlab-ci.yml b/.gitlab/ci/rules.gitlab-ci.yml
index 1eafd024f5e..e76b0f2d07f 100644
--- a/.gitlab/ci/rules.gitlab-ci.yml
+++ b/.gitlab/ci/rules.gitlab-ci.yml
@@ -11,25 +11,25 @@
if: '$CI_PROJECT_NAME != "gitlab-foss" && $CI_PROJECT_NAME != "gitlab-ce" && $CI_PROJECT_NAME != "gitlabhq"'
.if-default-refs: &if-default-refs
- if: '$CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_REF_NAME =~ /^[\d-]+-stable(-ee)?$/ || $CI_COMMIT_REF_NAME =~ /^\d+-\d+-auto-deploy-\d+$/ || $CI_COMMIT_REF_NAME =~ /^security\// || $CI_MERGE_REQUEST_IID || $CI_COMMIT_TAG || $FORCE_GITLAB_CI'
+ if: '$CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_REF_NAME == "main" || $CI_COMMIT_REF_NAME =~ /^[\d-]+-stable(-ee)?$/ || $CI_COMMIT_REF_NAME =~ /^\d+-\d+-auto-deploy-\d+$/ || $CI_COMMIT_REF_NAME =~ /^security\// || $CI_MERGE_REQUEST_IID || $CI_COMMIT_TAG || $FORCE_GITLAB_CI'
.if-master-refs: &if-master-refs
- if: '$CI_COMMIT_REF_NAME == "master"'
+ if: '$CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_REF_NAME == "main"'
.if-master-push: &if-master-push
- if: '$CI_COMMIT_BRANCH == "master" && $CI_PIPELINE_SOURCE == "push"'
+ if: '($CI_COMMIT_BRANCH == "master" || $CI_COMMIT_REF_NAME == "main") && $CI_PIPELINE_SOURCE == "push"'
.if-master-schedule-2-hourly: &if-master-schedule-2-hourly
- if: '$CI_COMMIT_BRANCH == "master" && $CI_PIPELINE_SOURCE == "schedule" && $FREQUENCY == "2-hourly"'
+ if: '($CI_COMMIT_BRANCH == "master" || $CI_COMMIT_REF_NAME == "main") && $CI_PIPELINE_SOURCE == "schedule" && $FREQUENCY == "2-hourly"'
.if-master-schedule-nightly: &if-master-schedule-nightly
- if: '$CI_COMMIT_BRANCH == "master" && $CI_PIPELINE_SOURCE == "schedule" && $FREQUENCY == "nightly"'
+ if: '($CI_COMMIT_BRANCH == "master" || $CI_COMMIT_REF_NAME == "main") && $CI_PIPELINE_SOURCE == "schedule" && $FREQUENCY == "nightly"'
.if-auto-deploy-branches: &if-auto-deploy-branches
if: '$CI_COMMIT_BRANCH =~ /^\d+-\d+-auto-deploy-\d+$/'
.if-master-or-tag: &if-master-or-tag
- if: '$CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_TAG'
+ if: '$CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_REF_NAME == "main" || $CI_COMMIT_TAG'
.if-merge-request: &if-merge-request
if: '$CI_MERGE_REQUEST_IID'
@@ -53,7 +53,7 @@
if: '$CI_SERVER_HOST == "gitlab.com" && $CI_PROJECT_NAMESPACE == "gitlab-org" && $CI_PIPELINE_SOURCE == "schedule"'
.if-dot-com-gitlab-org-master: &if-dot-com-gitlab-org-master
- if: '$CI_SERVER_HOST == "gitlab.com" && $CI_PROJECT_NAMESPACE == "gitlab-org" && $CI_COMMIT_REF_NAME == "master"'
+ if: '$CI_SERVER_HOST == "gitlab.com" && $CI_PROJECT_NAMESPACE == "gitlab-org" && ($CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_REF_NAME == "main")'
.if-dot-com-gitlab-org-merge-request: &if-dot-com-gitlab-org-merge-request
if: '$CI_SERVER_HOST == "gitlab.com" && $CI_PROJECT_NAMESPACE == "gitlab-org" && $CI_MERGE_REQUEST_IID'
@@ -149,6 +149,7 @@
- "{,ee/}{app/channels,app/controllers,app/finders,app/graphql,app/helpers,app/mailers,app/models,app/policies,app/presenters,app/serializers,app/services,app/uploaders,app/validators,app/views,app/workers}/**/*"
- "{,ee/}{bin,cable,config,db,lib}/**/*"
- "{,ee/}spec/**/*.rb"
+ # CI changes
- ".gitlab-ci.yml"
- ".gitlab/ci/**/*"
- "*_VERSION"
@@ -162,6 +163,9 @@
- "{,ee/}spec/support/helpers/database/**/*"
- "config/prometheus/common_metrics.yml" # Used by Gitlab::DatabaseImporters::CommonMetrics::Importer
- "{,ee/}app/models/project_statistics.rb" # Used to calculate sizes in migration specs
+ # CI changes
+ - ".gitlab-ci.yml"
+ - ".gitlab/ci/**/*"
.db-library-patterns: &db-library-patterns
- "{,ee/}{,spec/}lib/{,ee/}gitlab/database/**/*"
@@ -183,9 +187,11 @@
- ".csscomb.json"
- "Dockerfile.assets"
- "vendor/assets/**/*"
+ # CI changes
+ - ".gitlab-ci.yml"
- ".gitlab/ci/**/*"
- ".{eslintignore,gitattributes,nvmrc,prettierrc,stylelintrc,yamllint}"
- - ".{codeclimate,eslintrc,gitlab-ci,haml-lint,haml-lint_todo,rubocop,rubocop_todo,rubocop_manual_todo,scss-lint}.yml"
+ - ".{codeclimate,eslintrc,gitlab-ci,haml-lint,haml-lint_todo,rubocop,rubocop_todo,rubocop_manual_todo}.yml"
- "*_VERSION"
- "Gemfile{,.lock}"
- "Rakefile"
@@ -193,6 +199,7 @@
- "config.ru"
- "{,ee/}{app,bin,config,db,haml_lint,lib,locale,public,scripts,symbol,vendor}/**/*"
- "doc/api/graphql/reference/*" # Files in this folder are auto-generated
+ - "data/whats_new/*.yml"
.qa-patterns: &qa-patterns
- ".dockerignore"
@@ -205,9 +212,11 @@
- ".csscomb.json"
- "Dockerfile.assets"
- "vendor/assets/**/*"
+ # CI changes
+ - ".gitlab-ci.yml"
- ".gitlab/ci/**/*"
- ".{eslintignore,gitattributes,nvmrc,prettierrc,stylelintrc,yamllint}"
- - ".{codeclimate,eslintrc,gitlab-ci,haml-lint,haml-lint_todo,rubocop,rubocop_todo,rubocop_manual_todo,scss-lint}.yml"
+ - ".{codeclimate,eslintrc,gitlab-ci,haml-lint,haml-lint_todo,rubocop,rubocop_todo,rubocop_manual_todo}.yml"
- "*_VERSION"
- "Gemfile{,.lock}"
- "Rakefile"
@@ -215,6 +224,7 @@
- "config.ru"
- "{,ee/}{app,bin,config,db,haml_lint,lib,locale,public,scripts,symbol,vendor}/**/*"
- "doc/api/graphql/reference/*" # Files in this folder are auto-generated
+ - "data/whats_new/*.yml"
# Backstage changes
- "Dangerfile"
- "danger/**/*"
@@ -230,9 +240,11 @@
- ".csscomb.json"
- "Dockerfile.assets"
- "vendor/assets/**/*"
+ # CI changes
+ - ".gitlab-ci.yml"
- ".gitlab/ci/**/*"
- ".{eslintignore,gitattributes,nvmrc,prettierrc,stylelintrc,yamllint}"
- - ".{codeclimate,eslintrc,gitlab-ci,haml-lint,haml-lint_todo,rubocop,rubocop_todo,rubocop_manual_todo,scss-lint}.yml"
+ - ".{codeclimate,eslintrc,gitlab-ci,haml-lint,haml-lint_todo,rubocop,rubocop_todo,rubocop_manual_todo}.yml"
- "*_VERSION"
- "Gemfile{,.lock}"
- "Rakefile"
@@ -240,6 +252,7 @@
- "config.ru"
- "{,ee/}{app,bin,config,db,haml_lint,lib,locale,public,scripts,symbol,vendor}/**/*"
- "doc/api/graphql/reference/*" # Files in this folder are auto-generated
+ - "data/whats_new/*.yml"
# QA changes
- ".dockerignore"
- "qa/**/*"
@@ -251,9 +264,11 @@
- ".csscomb.json"
- "Dockerfile.assets"
- "vendor/assets/**/*"
+ # CI changes
+ - ".gitlab-ci.yml"
- ".gitlab/ci/**/*"
- ".{eslintignore,gitattributes,nvmrc,prettierrc,stylelintrc,yamllint}"
- - ".{codeclimate,eslintrc,gitlab-ci,haml-lint,haml-lint_todo,rubocop,rubocop_todo,rubocop_manual_todo,scss-lint}.yml"
+ - ".{codeclimate,eslintrc,gitlab-ci,haml-lint,haml-lint_todo,rubocop,rubocop_todo,rubocop_manual_todo}.yml"
- "*_VERSION"
- "Gemfile{,.lock}"
- "Rakefile"
@@ -261,6 +276,7 @@
- "config.ru"
- "{,ee/}{app,bin,config,db,haml_lint,lib,locale,public,scripts,symbol,vendor}/**/*"
- "doc/api/graphql/reference/*" # Files in this folder are auto-generated
+ - "data/whats_new/*.yml"
# Backstage changes
- "Dangerfile"
- "danger/**/*"
@@ -405,6 +421,7 @@
- <<: *if-security-merge-request
changes: *code-backstage-patterns
- <<: *if-merge-request-title-as-if-foss
+ - <<: *if-merge-request-title-run-all-rspec
- <<: *if-merge-request
changes: *ci-patterns
@@ -445,7 +462,9 @@
.frontend:rules:bundle-size-review:
rules:
- - if: '$DANGER_GITLAB_API_TOKEN && $CI_MERGE_REQUEST_IID && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master"'
+ - <<: *if-not-canonical-namespace
+ when: never
+ - if: '$DANGER_GITLAB_API_TOKEN && $CI_MERGE_REQUEST_IID && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main")'
changes: *frontend-patterns
allow_failure: true
@@ -483,6 +502,7 @@
- <<: *if-security-merge-request
changes: *code-qa-patterns
- <<: *if-merge-request-title-as-if-foss
+ - <<: *if-merge-request-title-run-all-rspec
- <<: *if-merge-request
changes: *ci-patterns
@@ -602,10 +622,9 @@
- <<: *if-merge-request
changes: ["config/**/*"]
-.rails:rules:default-refs-code-backstage-qa:
+.rails:rules:code-backstage-qa:
rules:
- - <<: *if-default-refs
- changes: *code-backstage-qa-patterns
+ - changes: *code-backstage-qa-patterns
- <<: *if-merge-request-title-run-all-rspec
.rails:rules:ee-only-migration:
@@ -700,6 +719,7 @@
changes: *db-patterns
- <<: *if-merge-request-title-as-if-foss
changes: *db-patterns
+ - <<: *if-merge-request-title-run-all-rspec
- <<: *if-merge-request
changes: *ci-patterns
@@ -716,6 +736,7 @@
changes: *db-patterns
- <<: *if-merge-request-title-as-if-foss
changes: *db-patterns
+ - <<: *if-merge-request-title-run-all-rspec
.rails:rules:as-if-foss-unit:
rules:
@@ -725,6 +746,7 @@
changes: *backend-patterns
- <<: *if-merge-request-title-as-if-foss
changes: *backend-patterns
+ - <<: *if-merge-request-title-run-all-rspec
- <<: *if-merge-request
changes: *ci-patterns
@@ -741,6 +763,7 @@
changes: *backend-patterns
- <<: *if-merge-request-title-as-if-foss
changes: *backend-patterns
+ - <<: *if-merge-request-title-run-all-rspec
.rails:rules:as-if-foss-integration:
rules:
@@ -750,6 +773,7 @@
changes: *backend-patterns
- <<: *if-merge-request-title-as-if-foss
changes: *backend-patterns
+ - <<: *if-merge-request-title-run-all-rspec
- <<: *if-merge-request
changes: *ci-patterns
@@ -766,6 +790,7 @@
changes: *backend-patterns
- <<: *if-merge-request-title-as-if-foss
changes: *backend-patterns
+ - <<: *if-merge-request-title-run-all-rspec
.rails:rules:as-if-foss-system:
rules:
@@ -775,6 +800,7 @@
changes: *code-backstage-patterns
- <<: *if-merge-request-title-as-if-foss
changes: *code-backstage-patterns
+ - <<: *if-merge-request-title-run-all-rspec
- <<: *if-merge-request
changes: *ci-patterns
@@ -791,6 +817,7 @@
changes: *code-backstage-patterns
- <<: *if-merge-request-title-as-if-foss
changes: *code-backstage-patterns
+ - <<: *if-merge-request-title-run-all-rspec
.rails:rules:ee-and-foss-db-library-code:
rules:
@@ -809,8 +836,7 @@
.rails:rules:detect-tests:
rules:
- - <<: *if-default-refs
- changes: *code-backstage-patterns
+ - changes: *code-backstage-patterns
- <<: *if-merge-request-title-run-all-rspec
.rails:rules:rspec-foss-impact:
@@ -1123,8 +1149,7 @@
#######################
.test-metadata:rules:retrieve-tests-metadata:
rules:
- - <<: *if-default-refs
- changes: *code-backstage-patterns
+ - changes: *code-backstage-patterns
when: on_success
- <<: *if-merge-request-title-run-all-rspec
@@ -1136,7 +1161,6 @@
- ".gitlab/ci/test-metadata.gitlab-ci.yml"
- "scripts/rspec_helpers.sh"
- <<: *if-dot-com-ee-schedule
- changes: *code-backstage-patterns
###################
# workhorse rules #
diff --git a/.gitlab/ci/verify-lockfile.gitlab-ci.yml b/.gitlab/ci/verify-lockfile.gitlab-ci.yml
deleted file mode 100644
index 6336a428b4b..00000000000
--- a/.gitlab/ci/verify-lockfile.gitlab-ci.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-verify_lockfile:
- stage: test
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.7.2-git-2.29-lfs-2.9-node-14.15-yarn-1.22-graphicsmagick-1.3.34
- needs: []
- rules:
- - changes:
- - yarn.lock
- script:
- - npm config set @dappelt:registry https://gitlab.com/api/v4/projects/22564149/packages/npm/
- - npx lockfile-lint@4.3.7 --path yarn.lock --allowed-hosts yarn --validate-https
- - npx @dappelt/untamper-my-lockfile --lockfile yarn.lock
diff --git a/.gitlab/ci/workhorse.gitlab-ci.yml b/.gitlab/ci/workhorse.gitlab-ci.yml
index a40eebd131b..8361d20d2b7 100644
--- a/.gitlab/ci/workhorse.gitlab-ci.yml
+++ b/.gitlab/ci/workhorse.gitlab-ci.yml
@@ -1,20 +1,10 @@
-workhorse:
- extends: .workhorse:rules:workhorse
- image: ${GITLAB_DEPENDENCY_PROXY}golang:1.14
- stage: test
- needs: []
- script:
- - rm .git/hooks/post-checkout
- - git checkout .
- - scripts/update-workhorse check
- - make -C workhorse
-
workhorse:verify:
extends: .workhorse:rules:workhorse
image: ${GITLAB_DEPENDENCY_PROXY}golang:1.15
stage: test
needs: []
script:
+ - make -C workhorse # test build
- make -C workhorse verify
.workhorse:test: