.gitlab-ci.yml 5.43 KB
Newer Older
1
stages:
2
3
  - source
  - binary
4
5
6
7
8
  - test
  - upload

variables:
  DOCKER_IMAGE_BASE: registry.icinga.com/build-docker
9
  ICINGA_BUILD_RELEASE_TYPE: testing
Markus Frosch's avatar
Markus Frosch committed
10
  ICINGA_BUILD_TYPE: snapshot
Markus Frosch's avatar
Markus Frosch committed
11
  #ICINGA_BUILD_UPSTREAM_BRANCH:
12

13
14
.source: &source
  stage: source
15
16
17
18
  tags:
    - docker
  image: ${DOCKER_IMAGE_BASE}/${DOCKER_IMAGE}
  script:
19
    - icinga-build-deb-source
20
21
22
23
24
25
26
27
28
  cache:
    key: "${CI_JOB_NAME}"
    paths:
      - 'icinga2.git'
  artifacts:
    paths:
      - build/*
    expire_in: 1 week

29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
.binary: &binary
  stage: binary
  tags:
    - docker
  image: ${DOCKER_IMAGE_BASE}/${DOCKER_IMAGE}
  script:
    - icinga-build-deb-binary
  cache:
    key: "${CI_JOB_NAME}"
    paths:
      - ccache/
  artifacts:
    paths:
      - build/*
    expire_in: 1 week

45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
.test: &test
  stage: test
  tags:
    - docker
  image: ${DOCKER_IMAGE_BASE}/${DOCKER_IMAGE}
  script:
    - find build/
    - icinga-build-test

.upload: &upload
  stage: upload
  tags:
    - docker
  image: ${DOCKER_IMAGE_BASE}/upload
  script:
    - find build/
    - icinga-build-upload-aptly
Markus Frosch's avatar
Markus Frosch committed
62
  only:
Markus Frosch's avatar
Markus Frosch committed
63
64
    - master
    - tags
65
66
67
68

###################################
# Debian
###################################
69
70
71
72
73
74
75
76
77

# buster
debian/buster:
  <<: *source
  variables:
    DOCKER_IMAGE: debian/buster

debian/buster:x86_64:
  <<: *binary
Markus Frosch's avatar
Markus Frosch committed
78
79
  variables:
    DOCKER_IMAGE: debian/buster
80
81
  dependencies:
    - debian/buster
Markus Frosch's avatar
Markus Frosch committed
82

83
test/debian/buster:x86_64:
Markus Frosch's avatar
Markus Frosch committed
84
85
86
87
  <<: *test
  variables:
    DOCKER_IMAGE: debian/buster
  dependencies:
88
    - debian/buster
Markus Frosch's avatar
Markus Frosch committed
89

90
91
debian/buster:x86:
  <<: *binary
Markus Frosch's avatar
Markus Frosch committed
92
93
  variables:
    DOCKER_IMAGE: debian/buster:x86
94
95
  dependencies:
    - debian/buster
Markus Frosch's avatar
Markus Frosch committed
96
97
98
99
100
101

test/debian/buster:x86:
  <<: *test
  variables:
    DOCKER_IMAGE: debian/buster:x86
  dependencies:
102
103
    - debian/buster:x86
    - debian/buster:x86_64
Markus Frosch's avatar
Markus Frosch committed
104
105
106
107

upload/debian/buster:
  <<: *upload
  dependencies:
108
109
110
    - debian/buster:x86
    - debian/buster:x86_64
    - debian/buster
Markus Frosch's avatar
Markus Frosch committed
111

112
113
114
# stretch
debian/stretch:
  <<: *source
115
116
117
  variables:
    DOCKER_IMAGE: debian/stretch

118
119
120
121
122
123
124
125
debian/stretch:x86_64:
  <<: *binary
  variables:
    DOCKER_IMAGE: debian/stretch
  dependencies:
    - debian/stretch

test/debian/stretch:x86_64:
126
127
128
129
  <<: *test
  variables:
    DOCKER_IMAGE: debian/stretch
  dependencies:
130
    - debian/stretch
131

132
133
debian/stretch:x86:
  <<: *binary
134
135
  variables:
    DOCKER_IMAGE: debian/stretch:x86
136
137
  dependencies:
    - debian/stretch
138
139
140
141
142
143

test/debian/stretch:x86:
  <<: *test
  variables:
    DOCKER_IMAGE: debian/stretch:x86
  dependencies:
144
145
    - debian/stretch:x86
    - debian/stretch:x86_64
146
147
148
149

upload/debian/stretch:
  <<: *upload
  dependencies:
150
151
152
    - debian/stretch:x86
    - debian/stretch:x86_64
    - debian/stretch
153

Markus Frosch's avatar
Markus Frosch committed
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
# jessie
debian/jessie:
  <<: *source
  variables:
    DOCKER_IMAGE: debian/jessie

debian/jessie:x86_64:
  <<: *binary
  variables:
    DOCKER_IMAGE: debian/jessie
  dependencies:
    - debian/jessie

test/debian/jessie:x86_64:
  <<: *test
  variables:
    DOCKER_IMAGE: debian/jessie
  dependencies:
    - debian/jessie

debian/jessie:x86:
  <<: *binary
  variables:
    DOCKER_IMAGE: debian/jessie:x86
  dependencies:
    - debian/jessie

test/debian/jessie:x86:
  <<: *test
  variables:
    DOCKER_IMAGE: debian/jessie:x86
  dependencies:
    - debian/jessie:x86
    - debian/jessie:x86_64

upload/debian/jessie:
  <<: *upload
  dependencies:
    - debian/jessie:x86
    - debian/jessie:x86_64
    - debian/jessie

Markus Frosch's avatar
Markus Frosch committed
196
197
198
###################################
# Ubuntu
###################################
199
200
201
202

# disco
ubuntu/disco:
  <<: *source
Markus Frosch's avatar
Markus Frosch committed
203
  variables:
Markus Frosch's avatar
Markus Frosch committed
204
    DOCKER_IMAGE: ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
205

206
207
208
209
210
211
212
213
ubuntu/disco:x86_64:
  <<: *binary
  variables:
    DOCKER_IMAGE: ubuntu/disco
  dependencies:
    - ubuntu/disco

test/ubuntu/disco:x86_64:
Markus Frosch's avatar
Markus Frosch committed
214
215
  <<: *test
  variables:
Markus Frosch's avatar
Markus Frosch committed
216
    DOCKER_IMAGE: ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
217
  dependencies:
218
    - ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
219

220
221
ubuntu/disco:x86:
  <<: *binary
Markus Frosch's avatar
Markus Frosch committed
222
  variables:
Markus Frosch's avatar
Markus Frosch committed
223
    DOCKER_IMAGE: ubuntu/disco:x86
224
225
  dependencies:
    - ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
226

Markus Frosch's avatar
Markus Frosch committed
227
test/ubuntu/disco:x86:
Markus Frosch's avatar
Markus Frosch committed
228
229
  <<: *test
  variables:
Markus Frosch's avatar
Markus Frosch committed
230
    DOCKER_IMAGE: ubuntu/disco:x86
Markus Frosch's avatar
Markus Frosch committed
231
  dependencies:
232
233
    - ubuntu/disco:x86
    - ubuntu/disco:x86_64
Markus Frosch's avatar
Markus Frosch committed
234

Markus Frosch's avatar
Markus Frosch committed
235
upload/ubuntu/disco:
Markus Frosch's avatar
Markus Frosch committed
236
237
  <<: *upload
  dependencies:
238
239
240
    - ubuntu/disco:x86
    - ubuntu/disco:x86_64
    - ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
241

242
243
244
# bionic
ubuntu/bionic:
  <<: *source
Markus Frosch's avatar
Markus Frosch committed
245
246
247
  variables:
    DOCKER_IMAGE: ubuntu/bionic

248
249
250
251
252
253
254
255
ubuntu/bionic:x86_64:
  <<: *binary
  variables:
    DOCKER_IMAGE: ubuntu/bionic
  dependencies:
    - ubuntu/bionic

test/ubuntu/bionic:x86_64:
Markus Frosch's avatar
Markus Frosch committed
256
257
258
259
  <<: *test
  variables:
    DOCKER_IMAGE: ubuntu/bionic
  dependencies:
260
    - ubuntu/bionic
Markus Frosch's avatar
Markus Frosch committed
261

262
263
ubuntu/bionic:x86:
  <<: *binary
Markus Frosch's avatar
Markus Frosch committed
264
265
  variables:
    DOCKER_IMAGE: ubuntu/bionic:x86
266
267
  dependencies:
    - ubuntu/bionic
Markus Frosch's avatar
Markus Frosch committed
268
269
270
271
272
273

test/ubuntu/bionic:x86:
  <<: *test
  variables:
    DOCKER_IMAGE: ubuntu/bionic:x86
  dependencies:
274
275
    - ubuntu/bionic:x86
    - ubuntu/bionic:x86_64
Markus Frosch's avatar
Markus Frosch committed
276
277
278
279

upload/ubuntu/bionic:
  <<: *upload
  dependencies:
280
281
282
    - ubuntu/bionic:x86
    - ubuntu/bionic:x86_64
    - ubuntu/bionic
Markus Frosch's avatar
Markus Frosch committed
283

284
285
286
# xenial
ubuntu/xenial:
  <<: *source
Markus Frosch's avatar
Markus Frosch committed
287
288
289
  variables:
    DOCKER_IMAGE: ubuntu/xenial

290
291
292
293
294
295
296
297
ubuntu/xenial:x86_64:
  <<: *binary
  variables:
    DOCKER_IMAGE: ubuntu/xenial
  dependencies:
    - ubuntu/xenial

test/ubuntu/xenial:x86_64:
Markus Frosch's avatar
Markus Frosch committed
298
299
300
301
  <<: *test
  variables:
    DOCKER_IMAGE: ubuntu/xenial
  dependencies:
302
    - ubuntu/xenial
Markus Frosch's avatar
Markus Frosch committed
303

304
305
ubuntu/xenial:x86:
  <<: *binary
Markus Frosch's avatar
Markus Frosch committed
306
307
  variables:
    DOCKER_IMAGE: ubuntu/xenial:x86
308
309
  dependencies:
    - ubuntu/xenial
Markus Frosch's avatar
Markus Frosch committed
310
311
312
313
314
315

test/ubuntu/xenial:x86:
  <<: *test
  variables:
    DOCKER_IMAGE: ubuntu/xenial:x86
  dependencies:
316
317
    - ubuntu/xenial:x86
    - ubuntu/xenial:x86_64
Markus Frosch's avatar
Markus Frosch committed
318
319
320
321

upload/ubuntu/xenial:
  <<: *upload
  dependencies:
322
323
324
    - ubuntu/xenial:x86
    - ubuntu/xenial:x86_64
    - ubuntu/xenial