Skip to content

Commit 4d18bba

Browse files
author
GitLab Bot
committed
Add latest changes from gitlab-org/gitlab@master
1 parent 33c8693 commit 4d18bba

File tree

61 files changed

+1273
-449
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+1273
-449
lines changed

.dockerignore

Lines changed: 40 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,60 @@
11
# `build_from_dir` can't find Dockerfile when `.dockerignore` is "*"
22
# See https://github.com/swipely/docker-api/issues/484
3-
# Ignore all folders except the following files we need to build the QA image:
4-
# - ./config/initializers/0_inject_enterprise_edition_module.rb
5-
# - ./config/feature_flags
6-
# - ./ee/config/feature_flags
7-
# - ./ee/app/models/license.rb
8-
# - ./lib/gitlab_edition.rb
9-
# - ./lib/gitlab/utils.rb
10-
# - ./qa/
11-
# - ./INSTALLATION_TYPE
12-
# - ./VERSION
13-
3+
# Ignore all folders except the one listed at the bottom of this file.
144
/.git/
155
/app/
166
/bin/
177
/builds/
188
/changelogs/
19-
/config/environments/
20-
/config/helpers/
21-
/config/knative/
22-
/config/locales/
23-
/config/prometheus/
24-
/config/routes/
9+
/config/
10+
/coverage/
2511
/danger/
12+
/data/
2613
/db/
2714
/doc/
28-
/docker/
29-
/ee/bin/
30-
/ee/changelogs/
31-
/ee/config/events/
32-
/ee/config/metrics/
33-
/ee/config/routes/
34-
/ee/db/
35-
/ee/fixtures/
36-
/ee/lib/
37-
/ee/locale/
38-
/ee/spec/
15+
/ee/
16+
/file_hooks/
3917
/fixtures/
40-
/templates/
41-
/lint/
42-
/lib/api/
43-
/lib/assets/
44-
/lib/backup/
45-
/lib/banzai/
46-
/lib/bitbucket/
47-
/lib/server/
48-
/lib/constraints/
49-
/lib/registry/
50-
/lib/policy/
51-
/lib/feature/
52-
/lib/generators/
53-
/lib/gitaly/
54-
/lib/api/
55-
/lib/token/
56-
/lib/mattermost/
57-
/lib/teams/
58-
/lib/storage/
59-
/lib/auth/
60-
/lib/peek/
61-
/lib/prometheus/
62-
/lib/quality/
63-
/lib/rouge/
64-
/lib/flaky/
65-
/lib/zip/
66-
/lib/sentry/
67-
/lib/serializers/
68-
/lib/support/
69-
/lib/check/
70-
/lib/tasks/
18+
/gems/
19+
/generator_templates/
20+
/glfm_specification/
21+
/haml_lint/
22+
/jh/
23+
/lib/
7124
/locale/
7225
/log/
73-
/modules/
26+
/metrics_server/
7427
/node_modules/
75-
/plugins/
28+
/patches/
7629
/public/
30+
/qa/
7731
/rubocop/
7832
/scripts/
7933
/shared/
34+
/sidekiq_cluster/
8035
/spec/
81-
/symbol/
36+
/storybook/
8237
/tmp/
38+
/tooling/
39+
/vendor/
40+
/workhorse/
41+
42+
!/config/initializers/0_inject_enterprise_edition_module.rb
43+
!/config/feature_flags/
44+
!/config/bundler_setup.rb
45+
!/lib/gitlab_edition.rb
46+
!/lib/gitlab/utils.rb
47+
!/spec/support/fast_quarantine.rb
48+
!/tooling/lib/tooling/fast_quarantine.rb
49+
!/INSTALLATION_TYPE
50+
!/VERSION
51+
!/gems/
52+
!/qa/
53+
!/vendor/gems/
54+
55+
!/ee/app/models/license.rb
56+
!/ee/config/feature_flags/
57+
58+
!/jh/qa/
59+
!/jh/lib/
60+
!/jh/config/feature_flags/

.gitlab-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ variables:
163163
KNAPSACK_RSPEC_SUITE_REPORT_PATH: knapsack/report-master.json
164164
RSPEC_CHANGED_FILES_PATH: rspec/changed_files.txt
165165
RSPEC_FAIL_FAST_THRESHOLD: 20
166-
RSPEC_FAST_QUARANTINE_LOCAL_PATH: rspec/fast_quarantine-gitlab.txt
166+
RSPEC_FAST_QUARANTINE_PATH: rspec/fast_quarantine-gitlab.txt
167167
RSPEC_FOSS_IMPACT_PIPELINE_TEMPLATE_YML: .gitlab/ci/rails/rspec-foss-impact.gitlab-ci.yml.erb
168168
RSPEC_LAST_RUN_RESULTS_FILE: rspec/rspec_last_run_results.txt
169169
RSPEC_MATCHING_JS_FILES_PATH: rspec/js_matching_files.txt

.gitlab/ci/package-and-test/main.gitlab-ci.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,11 @@ download-knapsack-report:
3535
- .download-knapsack-report
3636
- .rules:download-knapsack
3737

38+
download-fast-quarantine-report:
39+
extends:
40+
- .download-fast-quarantine-report
41+
- .rules:download-fast-quarantine-report
42+
3843
cache-gems:
3944
extends:
4045
- .qa-install

.gitlab/ci/qa-common/main.gitlab-ci.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,11 @@ stages:
6161
GITLAB_LICENSE_MODE: test
6262
GITLAB_QA_ADMIN_ACCESS_TOKEN: $QA_ADMIN_ACCESS_TOKEN
6363
GITLAB_QA_OPTS: $EXTRA_GITLAB_QA_OPTS
64+
before_script:
65+
- !reference [.qa-base, before_script]
66+
# Prepend the file paths with the absolute path from inside the container since the files will be read from there
67+
- export RSPEC_FAST_QUARANTINE_PATH="/home/gitlab/qa/${RSPEC_FAST_QUARANTINE_PATH}"
68+
- export RSPEC_SKIPPED_TESTS_REPORT_PATH="/home/gitlab/qa/rspec/skipped_tests-${CI_JOB_ID}.txt"
6469
# Allow QA jobs to fail as they are flaky. The top level `package-and-e2e:ee`
6570
# pipeline is not allowed to fail, so without allowing QA to fail, we will be
6671
# blocking merges due to flaky tests.
@@ -85,6 +90,26 @@ stages:
8590
- qa/knapsack/*.json
8691
expire_in: 1 day
8792

93+
.download-fast-quarantine-report:
94+
image: ${GITLAB_DEPENDENCY_PROXY_ADDRESS}alpine:edge
95+
stage: .pre
96+
variables:
97+
GIT_STRATEGY: none
98+
before_script:
99+
- apk add --no-cache --update curl bash
100+
script:
101+
- mkdir -p "${QA_RSPEC_REPORT_PATH}"
102+
- |
103+
if [[ ! -f "${QA_RSPEC_REPORT_PATH}/${RSPEC_FAST_QUARANTINE_FILE}" ]]; then
104+
curl --location -o "${QA_RSPEC_REPORT_PATH}/${RSPEC_FAST_QUARANTINE_FILE}" "https://gitlab-org.gitlab.io/quality/engineering-productivity/fast-quarantine/${RSPEC_FAST_QUARANTINE_PATH}" ||
105+
echo "" > "${QA_RSPEC_REPORT_PATH}/${RSPEC_FAST_QUARANTINE_FILE}"
106+
fi
107+
allow_failure: true
108+
artifacts:
109+
paths:
110+
- "${QA_RSPEC_REPORT_PATH}/${RSPEC_FAST_QUARANTINE_FILE}"
111+
expire_in: 1 day
112+
88113
.upload-knapsack-report:
89114
extends:
90115
- .generate-knapsack-report-base

.gitlab/ci/qa-common/rules.gitlab-ci.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,10 @@
6464
rules:
6565
- when: always
6666

67+
.rules:download-fast-quarantine-report:
68+
rules:
69+
- when: always
70+
6771
# ------------------------------------------
6872
# Test
6973
# ------------------------------------------

.gitlab/ci/qa-common/variables.gitlab-ci.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# Default variables for package-and-test
22

33
variables:
4+
USE_OLD_RUBY_VERSION: "true"
45
REGISTRY_HOST: "registry.gitlab.com"
56
REGISTRY_GROUP: "gitlab-org"
67
ALLURE_JOB_NAME: $CI_PROJECT_NAME
@@ -11,4 +12,8 @@ variables:
1112
# run all tests by default when package-and-test is included natively in other projects
1213
# this will be overridden when selective test execution is used in gitlab canonical project
1314
QA_RUN_ALL_TESTS: "true"
14-
USE_OLD_RUBY_VERSION: "true"
15+
# Used by gitlab-qa to set up a volume for `${CI_PROJECT_DIR}/qa/rspec:/home/gitlab/qa/rspec/`
16+
QA_RSPEC_REPORT_PATH: "${CI_PROJECT_DIR}/qa/rspec"
17+
RSPEC_FAST_QUARANTINE_FILE: "fast_quarantine-gitlab.txt"
18+
# This path is relative to /home/gitlab/qa/ in the QA container
19+
RSPEC_FAST_QUARANTINE_PATH: "rspec/${RSPEC_FAST_QUARANTINE_FILE}"

.gitlab/ci/rails.gitlab-ci.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -548,9 +548,6 @@ rspec:flaky-tests-report:
548548
- .rails:rules:flaky-tests-report
549549
stage: post-test
550550
needs: !reference ["rspec:coverage", "needs"]
551-
variables:
552-
SKIPPED_TESTS_REPORT_PATH: rspec/skipped_tests_report.txt
553-
RETRIED_TESTS_REPORT_PATH: rspec/flaky/retried_tests_report.txt
554551
before_script:
555552
- source scripts/utils.sh
556553
- source scripts/rspec_helpers.sh

.gitlab/ci/rails/shared.gitlab-ci.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ include:
2525
# gems could not be found under some circumstance. No idea why, hours wasted.
2626
- run_timed_command "gem install knapsack --no-document"
2727
- section_start "gitaly-test-spawn" "Spawning Gitaly"; scripts/gitaly-test-spawn; section_end "gitaly-test-spawn" # Do not use 'bundle exec' here
28+
- export RSPEC_SKIPPED_TESTS_REPORT_PATH="rspec/skipped_tests-${CI_JOB_ID}.txt"
29+
- export RSPEC_RETRIED_TESTS_REPORT_PATH="rspec/retried_tests-${CI_JOB_ID}.txt"
2830

2931
.no-redis-cluster:
3032
variables:

.gitlab/ci/test-on-gdk/main.gitlab-ci.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,11 @@ cache-gems:
117117
gdk reconfigure &&\
118118
gdk restart"
119119
120+
download-fast-quarantine-report:
121+
extends:
122+
- .download-fast-quarantine-report
123+
- .rules:download-fast-quarantine-report
124+
120125
gdk-qa-smoke:
121126
extends:
122127
- .gdk-qa-base

0 commit comments

Comments
 (0)