.gitlab-ci.yml 5.11 KB
Newer Older
Markus Frosch's avatar
Markus Frosch committed
1
2
3
4
5
6
7
stages:
  - build
  - test
  - upload

variables:
  DOCKER_IMAGE_BASE: registry.icinga.com/build-docker
Henrik Triem's avatar
Henrik Triem committed
8
9
  ICINGA_BUILD_TYPE: snapshot
  #ICINGA_BUILD_TYPE: release
Markus Frosch's avatar
Markus Frosch committed
10
  #ICINGA_BUILD_RELEASE_TYPE:
Markus Frosch's avatar
Markus Frosch committed
11
  #ICINGA_BUILD_UPSTREAM_BRANCH:
Markus Frosch's avatar
Markus Frosch committed
12
13
14
15
16
17
18
19
20
21
22
23

.build: &build
  stage: build
  tags:
    - docker
  image: ${DOCKER_IMAGE_BASE}/${DOCKER_IMAGE}
  script:
    - icinga-build-package
  cache:
    key: "${CI_JOB_NAME}"
    paths:
      - ccache/
24
      - 'icinga2.git'
Markus Frosch's avatar
Markus Frosch committed
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
  artifacts:
    paths:
      - build/*
    expire_in: 1 week

.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
47
  only:
Markus Frosch's avatar
Markus Frosch committed
48
49
    - master
    - tags
Markus Frosch's avatar
Markus Frosch committed
50

Markus Frosch's avatar
Markus Frosch committed
51
52
53
###################################
# EPEL
###################################
Markus Frosch's avatar
Markus Frosch committed
54
build/centos/8:
Markus Frosch's avatar
Markus Frosch committed
55
56
  <<: *build
  variables:
Markus Frosch's avatar
Markus Frosch committed
57
    DOCKER_IMAGE: centos/8
Markus Frosch's avatar
Markus Frosch committed
58

Markus Frosch's avatar
Markus Frosch committed
59
test/centos/8:
Markus Frosch's avatar
Markus Frosch committed
60
61
  <<: *test
  variables:
Markus Frosch's avatar
Markus Frosch committed
62
    DOCKER_IMAGE: centos/8
Markus Frosch's avatar
Markus Frosch committed
63
  dependencies:
Markus Frosch's avatar
Markus Frosch committed
64
    - build/centos/8
Markus Frosch's avatar
Markus Frosch committed
65
66
67
68

upload/epel/8:
  <<: *upload
  dependencies:
Markus Frosch's avatar
Markus Frosch committed
69
    - build/centos/8
Markus Frosch's avatar
Markus Frosch committed
70

Markus Frosch's avatar
Markus Frosch committed
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
build/centos/7:
  <<: *build
  variables:
    DOCKER_IMAGE: centos/7

test/centos/7:
  <<: *test
  variables:
    DOCKER_IMAGE: centos/7
  dependencies:
    - build/centos/7

upload/epel/7:
  <<: *upload
  dependencies:
    - build/centos/7
Markus Frosch's avatar
Markus Frosch committed
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103

build/centos/6:
  <<: *build
  variables:
    DOCKER_IMAGE: centos/6

test/centos/6:
  <<: *test
  variables:
    DOCKER_IMAGE: centos/6
  dependencies:
    - build/centos/6

upload/epel/6:
  <<: *upload
  dependencies:
    - build/centos/6
Markus Frosch's avatar
Markus Frosch committed
104

Markus Frosch's avatar
Markus Frosch committed
105
106
107
###################################
# Fedora
###################################
Alexander A. Klimov's avatar
Alexander A. Klimov committed
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
build/fedora/33:
  <<: *build
  variables:
    DOCKER_IMAGE: fedora/33

test/fedora/33:
  <<: *test
  variables:
    DOCKER_IMAGE: fedora/33
  dependencies:
    - build/fedora/33

upload/fedora/33:
  <<: *upload
  dependencies:
    - build/fedora/33

Henrik Triem's avatar
Henrik Triem committed
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
build/fedora/32:
  <<: *build
  variables:
    DOCKER_IMAGE: fedora/32

test/fedora/32:
  <<: *test
  variables:
    DOCKER_IMAGE: fedora/32
  dependencies:
    - build/fedora/32

upload/fedora/32:
  <<: *upload
  dependencies:
    - build/fedora/32

Henrik Triem's avatar
Henrik Triem committed
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
build/fedora/31:
  <<: *build
  variables:
    DOCKER_IMAGE: fedora/31

test/fedora/31:
  <<: *test
  variables:
    DOCKER_IMAGE: fedora/31
  dependencies:
    - build/fedora/31

upload/fedora/31:
  <<: *upload
  dependencies:
    - build/fedora/31

Markus Frosch's avatar
Markus Frosch committed
159
build/fedora/30:
Markus Frosch's avatar
Markus Frosch committed
160
161
  <<: *build
  variables:
Markus Frosch's avatar
Markus Frosch committed
162
    DOCKER_IMAGE: fedora/30
Markus Frosch's avatar
Markus Frosch committed
163

Markus Frosch's avatar
Markus Frosch committed
164
test/fedora/30:
Markus Frosch's avatar
Markus Frosch committed
165
166
  <<: *test
  variables:
Markus Frosch's avatar
Markus Frosch committed
167
    DOCKER_IMAGE: fedora/30
Markus Frosch's avatar
Markus Frosch committed
168
  dependencies:
Markus Frosch's avatar
Markus Frosch committed
169
    - build/fedora/30
Markus Frosch's avatar
Markus Frosch committed
170

Markus Frosch's avatar
Markus Frosch committed
171
upload/fedora/30:
Markus Frosch's avatar
Markus Frosch committed
172
173
  <<: *upload
  dependencies:
Markus Frosch's avatar
Markus Frosch committed
174
    - build/fedora/30
Markus Frosch's avatar
Markus Frosch committed
175

Markus Frosch's avatar
Markus Frosch committed
176
build/fedora/29:
Markus Frosch's avatar
Markus Frosch committed
177
178
  <<: *build
  variables:
Markus Frosch's avatar
Markus Frosch committed
179
    DOCKER_IMAGE: fedora/29
Markus Frosch's avatar
Markus Frosch committed
180

Markus Frosch's avatar
Markus Frosch committed
181
test/fedora/29:
Markus Frosch's avatar
Markus Frosch committed
182
183
  <<: *test
  variables:
Markus Frosch's avatar
Markus Frosch committed
184
    DOCKER_IMAGE: fedora/29
Markus Frosch's avatar
Markus Frosch committed
185
  dependencies:
Markus Frosch's avatar
Markus Frosch committed
186
    - build/fedora/29
Markus Frosch's avatar
Markus Frosch committed
187

Markus Frosch's avatar
Markus Frosch committed
188
upload/fedora/29:
Markus Frosch's avatar
Markus Frosch committed
189
190
  <<: *upload
  dependencies:
Markus Frosch's avatar
Markus Frosch committed
191
    - build/fedora/29
Markus Frosch's avatar
Markus Frosch committed
192

Markus Frosch's avatar
Markus Frosch committed
193
194
195
###################################
# SLES
###################################
Noah Hilverling's avatar
Noah Hilverling committed
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
build/sles/15.2:
  <<: *build
  variables:
    DOCKER_IMAGE: sles/15.2

test/sles/15.2:
  <<: *test
  variables:
    DOCKER_IMAGE: sles/15.2
  dependencies:
    - build/sles/15.2

upload/SUSE/15.2:
  <<: *upload
  dependencies:
    - build/sles/15.2

Markus Frosch's avatar
Markus Frosch committed
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
build/sles/15.1:
  <<: *build
  variables:
    DOCKER_IMAGE: sles/15.1

test/sles/15.1:
  <<: *test
  variables:
    DOCKER_IMAGE: sles/15.1
  dependencies:
    - build/sles/15.1

upload/SUSE/15.1:
  <<: *upload
  dependencies:
    - build/sles/15.1

Markus Frosch's avatar
Markus Frosch committed
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
build/sles/15.0:
  <<: *build
  variables:
    DOCKER_IMAGE: sles/15.0

test/sles/15.0:
  <<: *test
  variables:
    DOCKER_IMAGE: sles/15.0
  dependencies:
    - build/sles/15.0

upload/SUSE/15.0:
  <<: *upload
  dependencies:
    - build/sles/15.0

Henrik Triem's avatar
Henrik Triem committed
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
build/sles/12.5:
  <<: *build
  variables:
    DOCKER_IMAGE: sles/12.5

test/sles/12.5:
  <<: *test
  variables:
    DOCKER_IMAGE: sles/12.5
  dependencies:
    - build/sles/12.5

upload/SUSE/12.5:
  <<: *upload
  dependencies:
    - build/sles/12.5

Markus Frosch's avatar
Markus Frosch committed
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
build/sles/12.4:
  <<: *build
  variables:
    DOCKER_IMAGE: sles/12.4

test/sles/12.4:
  <<: *test
  variables:
    DOCKER_IMAGE: sles/12.4
  dependencies:
    - build/sles/12.4

upload/SUSE/12.4:
  <<: *upload
  dependencies:
    - build/sles/12.4

###################################
# openSUSE
###################################
Alexander A. Klimov's avatar
Alexander A. Klimov committed
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
build/opensuse/15.2:
  <<: *build
  variables:
    DOCKER_IMAGE: opensuse/15.2

test/opensuse/15.2:
  <<: *test
  variables:
    DOCKER_IMAGE: opensuse/15.2
  dependencies:
    - build/opensuse/15.2

upload/openSUSE/15.2:
  <<: *upload
  dependencies:
    - build/opensuse/15.2

Henrik Triem's avatar
Henrik Triem committed
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
build/opensuse/15.1:
  <<: *build
  variables:
    DOCKER_IMAGE: opensuse/15.1

test/opensuse/15.1:
  <<: *test
  variables:
    DOCKER_IMAGE: opensuse/15.1
  dependencies:
    - build/opensuse/15.1

upload/openSUSE/15.1:
  <<: *upload
  dependencies:
    - build/opensuse/15.1

Markus Frosch's avatar
Markus Frosch committed
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
build/opensuse/15.0:
  <<: *build
  variables:
    DOCKER_IMAGE: opensuse/15.0

test/opensuse/15.0:
  <<: *test
  variables:
    DOCKER_IMAGE: opensuse/15.0
  dependencies:
    - build/opensuse/15.0

upload/openSUSE/15.0:
  <<: *upload
  dependencies:
    - build/opensuse/15.0