-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gitlab-ci.yml
139 lines (117 loc) · 2.11 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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
stages:
- test
- auto-docs
.lein:
stage: test
image: clojure:lein
.lein-api:
extends: .lein
before_script:
- cd api
.lein-worker:
extends: .lein
before_script:
- cd worker
.lein-worker-docker:
extends: .lein-worker
services:
- docker:dind
- mongo:4.2
variables:
DOCKER_DRIVER: overlay2
DOCKER_HOST: tcp://docker:2375/
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: password
before_script:
- cd worker
- curl -fsSL https://download.docker.com/linux/static/stable/x86_64/docker-19.03.1.tgz -o /tmp/docker.tar.gz
- tar -zxvf /tmp/docker.tar.gz --strip 1 -C /usr/bin
.lein-style:
extends: .lein
script:
- lein cljfmt check
.lein-linter:
extends: .lein
script:
- lein eastwood || true
.lein-unit:
script:
- lein cloverage --junit --output ../target
artifacts:
reports:
junit: target/junit.xml
.lein-kibit:
extends: .lein
script:
- lein kibit
.hadolint:
image: hadolint/hadolint:latest-debian
stage: test
.lein-docs:
stage: auto-docs
script:
- lein codox
only:
- master
- tags
style:api:
extends:
- .lein-api
- .lein-style
style:worker:
extends:
- .lein-worker
- .lein-style
linter:api:
extends:
- .lein-api
- .lein-linter
linter:worker:
extends:
- .lein-worker
- .lein-linter
unit:api:
services:
- mongo:4.2
allow_failure: true
variables:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: password
extends:
- .lein-api
- .lein-unit
unit:worker:
allow_failure: true
extends:
- .lein-worker-docker
- .lein-unit
kibit:api:
extends:
- .lein-api
- .lein-kibit
kibit:worker:
extends:
- .lein-worker
- .lein-kibit
hadolint:api:
extends: .hadolint
script:
- hadolint api/Dockerfile
hadolint:worker:
extends: .hadolint
script:
- hadolint worker/Dockerfile
codox:api:
extends:
- .lein-api
- .lein-docs
artifacts:
paths:
- /api/target/doc
codox:worker:
extends:
- .lein-worker
- .lein-docs
artifacts:
paths:
- worker/target/default/doc