-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy path.gitlab-ci.yml
75 lines (66 loc) · 1.39 KB
/
.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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
---
stages:
- lint
- test
- doc
cache:
paths:
- vendor/
before_script:
- bundle config set path 'vendor'
.tests:
before_script:
- apt-get update -qy
- apt-get install -y libapt-pkg-dev
- ruby -v
- which ruby
- gem install bundler --no-document
- bundle install --jobs "$(nproc)" "${FLAGS[@]}"
script: bundle exec rake
stage: test
test:3.0:
extends: .tests
image: 'ruby:3.0'
test:3.1:
extends: .tests
image: 'ruby:3.1'
test:3.2:
extends: .tests
image: 'ruby:3.2'
lint:
image: 'ruby:3.2-slim'
before_script:
- apt-get update -qy
- apt-get install -y libapt-pkg-dev cppcheck
- ruby -v
- which ruby
- gem install bundler --no-document
- bundle install --jobs "$(nproc)" "${FLAGS[@]}"
script:
- bundle exec rake cppcheck
stage: lint
audit:
image: 'ruby:3.2-slim'
before_script:
- apt-get update -qy
- apt-get install -y git
- gem install bundler bundler-audit --no-document
- bundle install --jobs "$(nproc)" "${FLAGS[@]}"
allow_failure: true
script:
- bundle-audit update
- bundle-audit check
stage: lint
pages:
image: 'ruby:3.2-slim'
before_script:
- gem install bundler --no-document
- bundle install --jobs "$(nproc)" "${FLAGS[@]}"
script:
- bundle exec rake rdoc
artifacts:
paths:
- public
rules:
- if: '$CI_COMMIT_BRANCH == "master"'
stage: doc