summaryrefslogtreecommitdiff
path: root/.gitlab
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab')
-rw-r--r--.gitlab/ci/dev-fixtures.gitlab-ci.yml6
-rw-r--r--.gitlab/ci/docs.gitlab-ci.yml4
-rw-r--r--.gitlab/ci/frontend.gitlab-ci.yml6
-rw-r--r--.gitlab/ci/global.gitlab-ci.yml10
-rw-r--r--.gitlab/ci/memory.gitlab-ci.yml6
-rw-r--r--.gitlab/ci/rails.gitlab-ci.yml189
-rw-r--r--.gitlab/ci/review.gitlab-ci.yml13
-rw-r--r--.gitlab/ci/rules.gitlab-ci.yml9
-rw-r--r--.gitlab/ci/setup.gitlab-ci.yml2
9 files changed, 109 insertions, 136 deletions
diff --git a/.gitlab/ci/dev-fixtures.gitlab-ci.yml b/.gitlab/ci/dev-fixtures.gitlab-ci.yml
index f7c4b29169c..27ceb6f37db 100644
--- a/.gitlab/ci/dev-fixtures.gitlab-ci.yml
+++ b/.gitlab/ci/dev-fixtures.gitlab-ci.yml
@@ -3,9 +3,9 @@
- .default-retry
- .default-cache
- .default-before_script
- - .use-pg10
+ - .use-pg11
stage: test
- needs: ["setup-test-env pg10"]
+ needs: ["setup-test-env pg11"]
variables:
FIXTURE_PATH: "db/fixtures/development"
SEED_CYCLE_ANALYTICS: "true"
@@ -26,7 +26,7 @@ run-dev-fixtures-ee:
extends:
- .run-dev-fixtures
- .dev-fixtures:rules:ee-only
- - .use-pg10-ee
+ - .use-pg11-ee
script:
- scripts/gitaly-test-spawn
- cp ee/db/fixtures/development/* $FIXTURE_PATH
diff --git a/.gitlab/ci/docs.gitlab-ci.yml b/.gitlab/ci/docs.gitlab-ci.yml
index 1a1076164e1..b8a66decbb7 100644
--- a/.gitlab/ci/docs.gitlab-ci.yml
+++ b/.gitlab/ci/docs.gitlab-ci.yml
@@ -66,9 +66,9 @@ graphql-reference-verify:
- .default-cache
- .default-before_script
- .docs:rules:graphql-reference-verify
- - .use-pg10
+ - .use-pg11
stage: test
- needs: ["setup-test-env pg10"]
+ needs: ["setup-test-env pg11"]
script:
- bundle exec rake gitlab:graphql:check_docs
- bundle exec rake gitlab:graphql:check_schema
diff --git a/.gitlab/ci/frontend.gitlab-ci.yml b/.gitlab/ci/frontend.gitlab-ci.yml
index f465099195b..2b22162b0c2 100644
--- a/.gitlab/ci/frontend.gitlab-ci.yml
+++ b/.gitlab/ci/frontend.gitlab-ci.yml
@@ -129,9 +129,9 @@ compile-assets pull-cache as-if-foss:
- .default-retry
- .default-cache
- .default-before_script
- - .use-pg10
+ - .use-pg11
stage: fixtures
- needs: ["setup-test-env pg10", "compile-assets pull-cache"]
+ needs: ["setup-test-env pg11", "compile-assets pull-cache"]
script:
- date
- scripts/gitaly-test-spawn
@@ -289,7 +289,7 @@ webpack-dev-server:
- .default-cache
- .frontend:rules:default-frontend-jobs
stage: test
- needs: ["setup-test-env pg10", "compile-assets pull-cache"]
+ needs: ["setup-test-env pg11", "compile-assets pull-cache"]
variables:
WEBPACK_MEMORY_TEST: "true"
WEBPACK_VENDOR_DLL: "true"
diff --git a/.gitlab/ci/global.gitlab-ci.yml b/.gitlab/ci/global.gitlab-ci.yml
index 83a2f7abad0..66b7c47efcf 100644
--- a/.gitlab/ci/global.gitlab-ci.yml
+++ b/.gitlab/ci/global.gitlab-ci.yml
@@ -21,7 +21,7 @@
# Jobs that only need to pull cache
.default-cache:
cache:
- key: "debian-stretch-ruby-2.6.5-pg10-node-12.x"
+ key: "debian-stretch-ruby-2.6.5-pg11-node-12.x"
paths:
- .go/pkg/mod
- vendor/ruby
@@ -98,6 +98,14 @@
cache:
key: "debian-stretch-ruby-2.6.5-pg11-node-12.x"
+# Pin kaniko to v0.16.0 due to https://github.com/GoogleContainerTools/kaniko/issues/1162
+.use-kaniko:
+ image:
+ name: gcr.io/kaniko-project/executor:debug-v0.16.0
+ entrypoint: [""]
+ before_script:
+ - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json
+
.as-if-foss:
variables:
FOSS_ONLY: '1'
diff --git a/.gitlab/ci/memory.gitlab-ci.yml b/.gitlab/ci/memory.gitlab-ci.yml
index 0f107373ea8..af75ff257ea 100644
--- a/.gitlab/ci/memory.gitlab-ci.yml
+++ b/.gitlab/ci/memory.gitlab-ci.yml
@@ -8,7 +8,7 @@
memory-static:
extends: .only-code-memory-job-base
stage: test
- needs: ["setup-test-env pg10"]
+ needs: ["setup-test-env pg11"]
variables:
SETUP_DB: "false"
script:
@@ -36,9 +36,9 @@ memory-static:
memory-on-boot:
extends:
- .only-code-memory-job-base
- - .use-pg10
+ - .use-pg11
stage: test
- needs: ["setup-test-env pg10", "compile-assets pull-cache"]
+ needs: ["setup-test-env pg11", "compile-assets pull-cache"]
variables:
NODE_ENV: "production"
RAILS_ENV: "production"
diff --git a/.gitlab/ci/rails.gitlab-ci.yml b/.gitlab/ci/rails.gitlab-ci.yml
index a230880fa7d..28ec96b838a 100644
--- a/.gitlab/ci/rails.gitlab-ci.yml
+++ b/.gitlab/ci/rails.gitlab-ci.yml
@@ -1,5 +1,5 @@
.rails:needs:setup-and-assets:
- needs: ["setup-test-env pg10", "compile-assets pull-cache"]
+ needs: ["setup-test-env pg11", "compile-assets pull-cache"]
.rails-job-base:
extends:
@@ -25,17 +25,17 @@
cache:
policy: pull-push
-setup-test-env pg10:
+setup-test-env pg11:
extends:
- .base-setup-test-env
- .rails:rules:default-refs-code-backstage-qa
- - .use-pg10
+ - .use-pg11
-setup-test-env pg11:
+setup-test-env pg10:
extends:
- .base-setup-test-env
- .rails:rules:master-refs-code-backstage
- - .use-pg11
+ - .use-pg10
setup-test-env pg9:
extends:
@@ -55,7 +55,7 @@ static-analysis:
script:
- scripts/static-analysis
cache:
- key: "ruby-2.6.5-pg10-rubocop"
+ key: "ruby-2.6.5-pg11-rubocop"
paths:
- vendor/ruby
- tmp/rubocop_cache
@@ -75,7 +75,7 @@ downtime_check:
.rspec-base:
extends: .rails-job-base
stage: test
- needs: ["setup-test-env pg10", "retrieve-tests-metadata", "compile-assets pull-cache"]
+ needs: ["setup-test-env pg11", "retrieve-tests-metadata", "compile-assets pull-cache"]
script:
- source scripts/rspec_helpers.sh
- rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag ~level:migration"
@@ -93,48 +93,37 @@ downtime_check:
reports:
junit: junit_rspec.xml
-.rspec-base-quarantine-pg10:
- extends:
- - .rspec-base
- - .use-pg10
- variables:
- RSPEC_OPTS: "--tag quarantine -- spec/"
- script:
- - source scripts/rspec_helpers.sh
- - rspec_simple_job "${RSPEC_OPTS}"
- allow_failure: true
-
-.rspec-base-pg10:
+.rspec-base-pg11:
extends:
- .rspec-base
- .rails:rules:ee-and-foss
- - .use-pg10
+ - .use-pg11
.rspec-base-migration:
script:
- source scripts/rspec_helpers.sh
- rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag level:migration"
-rspec migration pg10:
+rspec migration pg11:
extends:
- - .rspec-base-pg10
+ - .rspec-base-pg11
- .rspec-base-migration
parallel: 5
-rspec unit pg10:
- extends: .rspec-base-pg10
+rspec unit pg11:
+ extends: .rspec-base-pg11
parallel: 20
-rspec integration pg10:
- extends: .rspec-base-pg10
+rspec integration pg11:
+ extends: .rspec-base-pg11
parallel: 8
-rspec system pg10:
- extends: .rspec-base-pg10
+rspec system pg11:
+ extends: .rspec-base-pg11
parallel: 24
rspec fast_spec_helper:
- extends: .rspec-base-pg10
+ extends: .rspec-base-pg11
script:
- bin/rspec spec/fast_spec_helper.rb
@@ -142,9 +131,9 @@ rspec fast_spec_helper:
extends:
- .rails-job-base
- .rails:rules:ee-and-foss
- - .use-pg10
+ - .use-pg11
stage: test
- needs: ["setup-test-env pg10"]
+ needs: ["setup-test-env pg11"]
db:migrate:reset:
extends: .db-job-base
@@ -213,18 +202,18 @@ rspec:coverage:
# We cannot use needs since it would mean needing 84 jobs (since most are parallelized)
# so we use `dependencies` here.
dependencies:
- - setup-test-env pg10
- - rspec migration pg10
- - rspec unit pg10
- - rspec integration pg10
- - rspec system pg10
- - rspec-ee migration pg10
- - rspec-ee unit pg10
- - rspec-ee integration pg10
- - rspec-ee system pg10
- - rspec-ee unit pg10 geo
- - rspec-ee integration pg10 geo
- - rspec-ee system pg10 geo
+ - setup-test-env pg11
+ - rspec migration pg11
+ - rspec unit pg11
+ - rspec integration pg11
+ - rspec system pg11
+ - rspec-ee migration pg11
+ - rspec-ee unit pg11
+ - rspec-ee integration pg11
+ - rspec-ee system pg11
+ - rspec-ee unit pg11 geo
+ - rspec-ee integration pg11 geo
+ - rspec-ee system pg11 geo
- memory-static
- memory-on-boot
variables:
@@ -247,34 +236,29 @@ rspec:coverage:
####################
# master-only jobs #
-rspec quarantine pg10:
- extends:
- - .rspec-base-quarantine-pg10
- - .rails:rules:master-refs-code-backstage
-
-.rspec-base-pg11:
+.rspec-base-pg10:
extends:
- .rspec-base
- .rails:rules:master-refs-code-backstage
- - .use-pg11
- needs: ["setup-test-env pg11", "retrieve-tests-metadata", "compile-assets pull-cache"]
+ - .use-pg10
+ needs: ["setup-test-env pg10", "retrieve-tests-metadata", "compile-assets pull-cache"]
-rspec migration pg11:
+rspec migration pg10:
extends:
- - .rspec-base-pg11
+ - .rspec-base-pg10
- .rspec-base-migration
parallel: 5
-rspec unit pg11:
- extends: .rspec-base-pg11
+rspec unit pg10:
+ extends: .rspec-base-pg10
parallel: 20
-rspec integration pg11:
- extends: .rspec-base-pg11
+rspec integration pg10:
+ extends: .rspec-base-pg10
parallel: 8
-rspec system pg11:
- extends: .rspec-base-pg11
+rspec system pg10:
+ extends: .rspec-base-pg10
parallel: 24
# master-only jobs #
####################
@@ -310,41 +294,34 @@ rspec system pg9:
#######################
# EE master-only jobs #
-rspec-ee quarantine pg10:
- extends:
- - .rspec-base-quarantine-pg10
- - .rails:rules:master-refs-code-backstage-ee-only
- variables:
- RSPEC_OPTS: "--tag quarantine -- ee/spec/"
-
-.rspec-ee-base-pg11:
+.rspec-ee-base-pg10:
extends:
- .rspec-base-ee
- - .use-pg11-ee
- needs: ["setup-test-env pg11", "retrieve-tests-metadata", "compile-assets pull-cache"]
+ - .use-pg10-ee
+ needs: ["setup-test-env pg10", "retrieve-tests-metadata", "compile-assets pull-cache"]
-rspec-ee migration pg11:
+rspec-ee migration pg10:
extends:
- - .rspec-ee-base-pg11
+ - .rspec-ee-base-pg10
- .rspec-base-migration
- .rails:rules:master-refs-code-backstage
parallel: 2
-rspec-ee unit pg11:
+rspec-ee unit pg10:
extends:
- - .rspec-ee-base-pg11
+ - .rspec-ee-base-pg10
- .rails:rules:master-refs-code-backstage
parallel: 10
-rspec-ee integration pg11:
+rspec-ee integration pg10:
extends:
- - .rspec-ee-base-pg11
+ - .rspec-ee-base-pg10
- .rails:rules:master-refs-code-backstage
parallel: 4
-rspec-ee system pg11:
+rspec-ee system pg10:
extends:
- - .rspec-ee-base-pg11
+ - .rspec-ee-base-pg10
- .rails:rules:master-refs-code-backstage
parallel: 6
# EE master-only jobs #
@@ -357,52 +334,52 @@ rspec-ee system pg11:
- .rspec-base
- .rails:rules:ee-only
-.rspec-base-pg10-as-if-foss:
+.rspec-base-pg11-as-if-foss:
extends:
- .rspec-base-ee
- .as-if-foss
- - .use-pg10
- needs: ["setup-test-env pg10", "retrieve-tests-metadata", "compile-assets pull-cache as-if-foss"]
+ - .use-pg11
+ needs: ["setup-test-env pg11", "retrieve-tests-metadata", "compile-assets pull-cache as-if-foss"]
-.rspec-ee-base-pg10:
+.rspec-ee-base-pg11:
extends:
- .rspec-base-ee
- - .use-pg10-ee
+ - .use-pg11-ee
-rspec migration pg10-as-if-foss:
+rspec migration pg11-as-if-foss:
extends:
- - .rspec-base-pg10-as-if-foss
+ - .rspec-base-pg11-as-if-foss
- .rspec-base-migration
parallel: 5
-rspec unit pg10-as-if-foss:
- extends: .rspec-base-pg10-as-if-foss
+rspec unit pg11-as-if-foss:
+ extends: .rspec-base-pg11-as-if-foss
parallel: 20
-rspec integration pg10-as-if-foss:
- extends: .rspec-base-pg10-as-if-foss
+rspec integration pg11-as-if-foss:
+ extends: .rspec-base-pg11-as-if-foss
parallel: 8
-rspec system pg10-as-if-foss:
- extends: .rspec-base-pg10-as-if-foss
+rspec system pg11-as-if-foss:
+ extends: .rspec-base-pg11-as-if-foss
parallel: 24
-rspec-ee migration pg10:
+rspec-ee migration pg11:
extends:
- - .rspec-ee-base-pg10
+ - .rspec-ee-base-pg11
- .rspec-base-migration
parallel: 2
-rspec-ee unit pg10:
- extends: .rspec-ee-base-pg10
+rspec-ee unit pg11:
+ extends: .rspec-ee-base-pg11
parallel: 10
-rspec-ee integration pg10:
- extends: .rspec-ee-base-pg10
+rspec-ee integration pg11:
+ extends: .rspec-ee-base-pg11
parallel: 4
-rspec-ee system pg10:
- extends: .rspec-ee-base-pg10
+rspec-ee system pg11:
+ extends: .rspec-ee-base-pg11
parallel: 6
.rspec-ee-base-geo:
@@ -412,20 +389,20 @@ rspec-ee system pg10:
- scripts/prepare_postgres_fdw.sh
- rspec_paralellized_job "--tag ~quarantine --tag geo"
-.rspec-ee-base-geo-pg10:
+.rspec-ee-base-geo-pg11:
extends:
- .rspec-ee-base-geo
- - .use-pg10-ee
+ - .use-pg11-ee
-rspec-ee unit pg10 geo:
- extends: .rspec-ee-base-geo-pg10
+rspec-ee unit pg11 geo:
+ extends: .rspec-ee-base-geo-pg11
parallel: 2
-rspec-ee integration pg10 geo:
- extends: .rspec-ee-base-geo-pg10
+rspec-ee integration pg11 geo:
+ extends: .rspec-ee-base-geo-pg11
-rspec-ee system pg10 geo:
- extends: .rspec-ee-base-geo-pg10
+rspec-ee system pg11 geo:
+ extends: .rspec-ee-base-geo-pg11
db:rollback geo:
extends:
diff --git a/.gitlab/ci/review.gitlab-ci.yml b/.gitlab/ci/review.gitlab-ci.yml
index 4a13a92598e..06710b3b9dd 100644
--- a/.gitlab/ci/review.gitlab-ci.yml
+++ b/.gitlab/ci/review.gitlab-ci.yml
@@ -8,17 +8,14 @@
build-qa-image:
extends:
- - .review-docker
+ - .use-kaniko
+ - .default-retry
- .review:rules:mr-and-schedule-auto
stage: prepare
script:
- '[[ ! -d "ee/" ]] || export GITLAB_EDITION="ee"'
- - export QA_MASTER_IMAGE="${CI_REGISTRY}/${CI_PROJECT_PATH}/gitlab/gitlab-${GITLAB_EDITION}-qa:master"
- - export QA_IMAGE="${CI_REGISTRY}/${CI_PROJECT_PATH}/gitlab/gitlab-${GITLAB_EDITION}-qa:${CI_COMMIT_REF_SLUG}"
- - echo "${CI_JOB_TOKEN}" | docker login --username gitlab-ci-token --password-stdin ${CI_REGISTRY}
- - time docker pull "${QA_MASTER_IMAGE}"
- - time docker build --cache-from "${QA_MASTER_IMAGE}" --tag ${QA_IMAGE} --file ./qa/Dockerfile ./
- - time docker push ${QA_IMAGE}
+ - export QA_IMAGE="${CI_REGISTRY}/${CI_PROJECT_PATH}/gitlab-${GITLAB_EDITION}-qa:${CI_COMMIT_REF_SLUG}"
+ - /kaniko/executor --context=${CI_PROJECT_DIR} --dockerfile=${CI_PROJECT_DIR}/qa/Dockerfile --destination=${QA_IMAGE} --cache=true
.review-cleanup-base:
extends:
@@ -183,7 +180,7 @@ review-stop:
EE_LICENSE: "${REVIEW_APPS_EE_LICENSE}"
before_script:
- '[[ ! -d "ee/" ]] || export GITLAB_EDITION="ee"'
- - export QA_IMAGE="${CI_REGISTRY}/${CI_PROJECT_PATH}/gitlab/gitlab-${GITLAB_EDITION}-qa:${CI_COMMIT_REF_SLUG}"
+ - export QA_IMAGE="${CI_REGISTRY}/${CI_PROJECT_PATH}/gitlab-${GITLAB_EDITION}-qa:${CI_COMMIT_REF_SLUG}"
- export CI_ENVIRONMENT_URL="$(cat environment_url.txt)"
- echo "${CI_ENVIRONMENT_URL}"
- echo "${QA_IMAGE}"
diff --git a/.gitlab/ci/rules.gitlab-ci.yml b/.gitlab/ci/rules.gitlab-ci.yml
index c5b142a63d7..79ae7823853 100644
--- a/.gitlab/ci/rules.gitlab-ci.yml
+++ b/.gitlab/ci/rules.gitlab-ci.yml
@@ -363,15 +363,6 @@
when: on_success
- changes: [".gitlab/ci/rails.gitlab-ci.yml"]
-.rails:rules:master-refs-code-backstage-ee-only:
- rules:
- - <<: *if-not-ee
- when: never
- - <<: *if-master-refs
- changes: *code-backstage-patterns
- when: on_success
- - changes: [".gitlab/ci/rails.gitlab-ci.yml"]
-
.rails:rules:nightly-master-refs-code-backstage:
rules:
- <<: *if-nightly-master-schedule
diff --git a/.gitlab/ci/setup.gitlab-ci.yml b/.gitlab/ci/setup.gitlab-ci.yml
index 8ef7ad2979e..e79f3939bc7 100644
--- a/.gitlab/ci/setup.gitlab-ci.yml
+++ b/.gitlab/ci/setup.gitlab-ci.yml
@@ -7,7 +7,7 @@ cache gems:
- .default-before_script
- .setup:rules:cache-gems
stage: test
- needs: ["setup-test-env pg10"]
+ needs: ["setup-test-env pg11"]
variables:
SETUP_DB: "false"
script: