-
Notifications
You must be signed in to change notification settings - Fork 5.7k
/
test-metadata.gitlab-ci.yml
50 lines (48 loc) · 1.6 KB
/
test-metadata.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
.tests-metadata-state:
image: ${GITLAB_DEPENDENCY_PROXY_ADDRESS}ruby:${RUBY_VERSION}
before_script:
- source scripts/utils.sh
artifacts:
expire_in: 31d
paths:
- knapsack/
- rspec/
- crystalball/
when: always
retrieve-tests-metadata:
extends:
- .tests-metadata-state
- .test-metadata:rules:retrieve-tests-metadata
# We use a smaller image for this job only (update-tests-metadata compiles some gems)
image: ${GITLAB_DEPENDENCY_PROXY_ADDRESS}ruby:${RUBY_VERSION}-slim
stage: prepare
needs: []
script:
- apt-get update && apt-get install -y curl # Not present in ruby-slim, so we add it manually
- install_gitlab_gem
- source ./scripts/rspec_helpers.sh
- retrieve_tests_metadata
update-tests-metadata:
extends:
- .tests-metadata-state
- .test-metadata:rules:update-tests-metadata
stage: post-test
needs:
- job: retrieve-tests-metadata
optional: true
- job: rspec:artifact-collector unit
optional: true
- job: rspec:artifact-collector part-a
optional: true
- job: rspec:artifact-collector part-b
optional: true
- job: rspec:artifact-collector ee unit
optional: true
- job: rspec:artifact-collector ee remainder
optional: true
script:
- run_timed_command "retry gem install fog-aws mime-types activesupport rspec_profiling postgres-copy --no-document"
- source ./scripts/rspec_helpers.sh
- test -f "${FLAKY_RSPEC_SUITE_REPORT_PATH}" || echo -e "\e[31m" 'Consider add ~"pipeline:run-all-rspec" to run full rspec jobs' "\e[0m"
- update_tests_metadata
- update_tests_mapping