Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab/ci/rails.gitlab-ci.yml')
-rw-r--r--.gitlab/ci/rails.gitlab-ci.yml112
1 files changed, 108 insertions, 4 deletions
diff --git a/.gitlab/ci/rails.gitlab-ci.yml b/.gitlab/ci/rails.gitlab-ci.yml
index 14b07dd4a2a..2818b6be176 100644
--- a/.gitlab/ci/rails.gitlab-ci.yml
+++ b/.gitlab/ci/rails.gitlab-ci.yml
@@ -14,6 +14,10 @@
- run_timed_command "scripts/gitaly-test-spawn"
- source ./scripts/rspec_helpers.sh
+.minimal-rspec-tests:
+ variables:
+ RSPEC_TESTS_MAPPING_ENABLED: "true"
+
.rspec-base:
extends: .rails-job-base
stage: test
@@ -21,7 +25,8 @@
RUBY_GC_MALLOC_LIMIT: 67108864
RUBY_GC_MALLOC_LIMIT_MAX: 134217728
CRYSTALBALL: "true"
- needs: ["setup-test-env", "retrieve-tests-metadata", "compile-test-assets"]
+ RECORD_DEPRECATIONS: "true"
+ needs: ["setup-test-env", "retrieve-tests-metadata", "compile-test-assets", "detect-tests"]
script:
- *base-script
- rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag ~level:migration"
@@ -31,6 +36,7 @@
paths:
- coverage/
- crystalball/
+ - deprecations/
- knapsack/
- rspec_flaky/
- rspec_profiling/
@@ -62,7 +68,7 @@
- .rspec-base
- .as-if-foss
- .use-pg11
- needs: ["setup-test-env", "retrieve-tests-metadata", "compile-test-assets as-if-foss"]
+ needs: ["setup-test-env", "retrieve-tests-metadata", "compile-test-assets as-if-foss", "detect-tests"]
.rspec-ee-base-pg11:
extends:
@@ -238,24 +244,48 @@ rspec migration pg11:
- .rspec-base-migration
- .rspec-migration-parallel
+rspec migration pg11 minimal:
+ extends:
+ - rspec migration pg11
+ - .minimal-rspec-tests
+ - .rails:rules:ee-and-foss-migration:minimal
+
rspec unit pg11:
extends:
- .rspec-base-pg11
- .rails:rules:ee-and-foss-unit
- .rspec-unit-parallel
+rspec unit pg11 minimal:
+ extends:
+ - rspec unit pg11
+ - .minimal-rspec-tests
+ - .rails:rules:ee-and-foss-unit:minimal
+
rspec integration pg11:
extends:
- .rspec-base-pg11
- .rails:rules:ee-and-foss-integration
- .rspec-integration-parallel
+rspec integration pg11 minimal:
+ extends:
+ - rspec integration pg11
+ - .minimal-rspec-tests
+ - .rails:rules:ee-and-foss-integration:minimal
+
rspec system pg11:
extends:
- .rspec-base-pg11
- .rails:rules:ee-and-foss-system
- .rspec-system-parallel
+rspec system pg11 minimal:
+ extends:
+ - rspec system pg11
+ - .minimal-rspec-tests
+ - .rails:rules:ee-and-foss-system:minimal
+
rspec fast_spec_helper:
extends:
- .rspec-base-pg11
@@ -263,6 +293,12 @@ rspec fast_spec_helper:
script:
- bin/rspec spec/fast_spec_helper.rb
+rspec fast_spec_helper minimal:
+ extends:
+ - rspec fast_spec_helper
+ - .minimal-rspec-tests
+ - .rails:rules:ee-and-foss-fast_spec_helper:minimal
+
db:migrate:reset:
extends: .db-job-base
script:
@@ -284,7 +320,7 @@ db:migrate-from-v12.10.0:
- export TAG_TO_CHECKOUT="v12.10.0-ee"
- '[[ -d "ee/" ]] || export PROJECT_TO_CHECKOUT="gitlab-foss"'
- '[[ -d "ee/" ]] || export TAG_TO_CHECKOUT="v12.10.0"'
- - git fetch https://gitlab.com/gitlab-org/$PROJECT_TO_CHECKOUT.git $TAG_TO_CHECKOUT
+ - retry 'git fetch https://gitlab.com/gitlab-org/$PROJECT_TO_CHECKOUT.git $TAG_TO_CHECKOUT'
- git checkout -f FETCH_HEAD
- sed -i -e "s/gem 'grpc', '~> 1.24.0'/gem 'grpc', '~> 1.30.2'/" Gemfile # Update gRPC for Ruby 2.7
- sed -i -e "s/gem 'google-protobuf', '~> 3.8.0'/gem 'google-protobuf', '~> 3.12.0'/" Gemfile
@@ -382,6 +418,7 @@ rspec:feature-flags:
- .coverage-base
- .rails:rules:rspec-feature-flags
stage: post-test
+ allow_failure: true
# We cannot use needs since it would mean needing 84 jobs (since most are parallelized)
# so we use `dependencies` here.
dependencies:
@@ -401,7 +438,8 @@ rspec:feature-flags:
- 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"
- - run_timed_command "bundle exec scripts/used-feature-flags"
+ - '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)'
+
# EE/FOSS: default refs (MRs, master, schedules) jobs #
#######################################################
@@ -414,24 +452,48 @@ rspec migration pg11-as-if-foss:
- .rails:rules:as-if-foss-migration
- .rspec-migration-parallel
+rspec migration pg11-as-if-foss minimal:
+ extends:
+ - rspec migration pg11-as-if-foss
+ - .minimal-rspec-tests
+ - .rails:rules:as-if-foss-migration:minimal
+
rspec unit pg11-as-if-foss:
extends:
- .rspec-base-pg11-as-if-foss
- .rails:rules:as-if-foss-unit
- .rspec-unit-parallel
+rspec unit pg11-as-if-foss minimal:
+ extends:
+ - rspec unit pg11-as-if-foss
+ - .minimal-rspec-tests
+ - .rails:rules:as-if-foss-unit:minimal
+
rspec integration pg11-as-if-foss:
extends:
- .rspec-base-pg11-as-if-foss
- .rails:rules:as-if-foss-integration
- .rspec-integration-parallel
+rspec integration pg11-as-if-foss minimal:
+ extends:
+ - rspec integration pg11-as-if-foss
+ - .minimal-rspec-tests
+ - .rails:rules:as-if-foss-integration:minimal
+
rspec system pg11-as-if-foss:
extends:
- .rspec-base-pg11-as-if-foss
- .rails:rules:as-if-foss-system
- .rspec-system-parallel
+rspec system pg11-as-if-foss minimal:
+ extends:
+ - rspec system pg11-as-if-foss
+ - .minimal-rspec-tests
+ - .rails:rules:as-if-foss-system:minimal
+
rspec-ee migration pg11:
extends:
- .rspec-ee-base-pg11
@@ -439,40 +501,82 @@ rspec-ee migration pg11:
- .rails:rules:ee-only-migration
- .rspec-ee-migration-parallel
+rspec-ee migration pg11 minimal:
+ extends:
+ - rspec-ee migration pg11
+ - .minimal-rspec-tests
+ - .rails:rules:ee-only-migration:minimal
+
rspec-ee unit pg11:
extends:
- .rspec-ee-base-pg11
- .rails:rules:ee-only-unit
- .rspec-ee-unit-parallel
+rspec-ee unit pg11 minimal:
+ extends:
+ - rspec-ee unit pg11
+ - .minimal-rspec-tests
+ - .rails:rules:ee-only-unit:minimal
+
rspec-ee integration pg11:
extends:
- .rspec-ee-base-pg11
- .rails:rules:ee-only-integration
- .rspec-ee-integration-parallel
+rspec-ee integration pg11 minimal:
+ extends:
+ - rspec-ee integration pg11
+ - .minimal-rspec-tests
+ - .rails:rules:ee-only-integration:minimal
+
rspec-ee system pg11:
extends:
- .rspec-ee-base-pg11
- .rails:rules:ee-only-system
- .rspec-ee-system-parallel
+rspec-ee system pg11 minimal:
+ extends:
+ - rspec-ee system pg11
+ - .minimal-rspec-tests
+ - .rails:rules:ee-only-system:minimal
+
rspec-ee unit pg11 geo:
extends:
- .rspec-ee-base-geo-pg11
- .rails:rules:ee-only-unit
- .rspec-ee-unit-geo-parallel
+rspec-ee unit pg11 geo minimal:
+ extends:
+ - rspec-ee unit pg11 geo
+ - .minimal-rspec-tests
+ - .rails:rules:ee-only-unit:minimal
+
rspec-ee integration pg11 geo:
extends:
- .rspec-ee-base-geo-pg11
- .rails:rules:ee-only-integration
+rspec-ee integration pg11 geo minimal:
+ extends:
+ - rspec-ee integration pg11 geo
+ - .minimal-rspec-tests
+ - .rails:rules:ee-only-integration:minimal
+
rspec-ee system pg11 geo:
extends:
- .rspec-ee-base-geo-pg11
- .rails:rules:ee-only-system
+rspec-ee system pg11 geo minimal:
+ extends:
+ - rspec-ee system pg11 geo
+ - .minimal-rspec-tests
+ - .rails:rules:ee-only-system:minimal
+
db:rollback geo:
extends:
- db:rollback