.gitlab-ci.yml 4.72 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
10
  ICINGA_BUILD_RELEASE_TYPE: testing
  #ICINGA_BUILD_TYPE:
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
###################################
# Ubuntu
###################################
157
158
159
160

# disco
ubuntu/disco:
  <<: *source
Markus Frosch's avatar
Markus Frosch committed
161
  variables:
Markus Frosch's avatar
Markus Frosch committed
162
    DOCKER_IMAGE: ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
163

164
165
166
167
168
169
170
171
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
172
173
  <<: *test
  variables:
Markus Frosch's avatar
Markus Frosch committed
174
    DOCKER_IMAGE: ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
175
  dependencies:
176
    - ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
177

178
179
ubuntu/disco:x86:
  <<: *binary
Markus Frosch's avatar
Markus Frosch committed
180
  variables:
Markus Frosch's avatar
Markus Frosch committed
181
    DOCKER_IMAGE: ubuntu/disco:x86
182
183
  dependencies:
    - ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
184

Markus Frosch's avatar
Markus Frosch committed
185
test/ubuntu/disco:x86:
Markus Frosch's avatar
Markus Frosch committed
186
187
  <<: *test
  variables:
Markus Frosch's avatar
Markus Frosch committed
188
    DOCKER_IMAGE: ubuntu/disco:x86
Markus Frosch's avatar
Markus Frosch committed
189
  dependencies:
190
191
    - ubuntu/disco:x86
    - ubuntu/disco:x86_64
Markus Frosch's avatar
Markus Frosch committed
192

Markus Frosch's avatar
Markus Frosch committed
193
upload/ubuntu/disco:
Markus Frosch's avatar
Markus Frosch committed
194
195
  <<: *upload
  dependencies:
196
197
198
    - ubuntu/disco:x86
    - ubuntu/disco:x86_64
    - ubuntu/disco
Markus Frosch's avatar
Markus Frosch committed
199

200
201
202
# bionic
ubuntu/bionic:
  <<: *source
Markus Frosch's avatar
Markus Frosch committed
203
204
205
  variables:
    DOCKER_IMAGE: ubuntu/bionic

206
207
208
209
210
211
212
213
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
214
215
216
217
  <<: *test
  variables:
    DOCKER_IMAGE: ubuntu/bionic
  dependencies:
218
    - ubuntu/bionic
Markus Frosch's avatar
Markus Frosch committed
219

220
221
ubuntu/bionic:x86:
  <<: *binary
Markus Frosch's avatar
Markus Frosch committed
222
223
  variables:
    DOCKER_IMAGE: ubuntu/bionic:x86
224
225
  dependencies:
    - ubuntu/bionic
Markus Frosch's avatar
Markus Frosch committed
226
227
228
229
230
231

test/ubuntu/bionic:x86:
  <<: *test
  variables:
    DOCKER_IMAGE: ubuntu/bionic:x86
  dependencies:
232
233
    - ubuntu/bionic:x86
    - ubuntu/bionic:x86_64
Markus Frosch's avatar
Markus Frosch committed
234
235
236
237

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

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

248
249
250
251
252
253
254
255
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
256
257
258
259
  <<: *test
  variables:
    DOCKER_IMAGE: ubuntu/xenial
  dependencies:
260
    - ubuntu/xenial
Markus Frosch's avatar
Markus Frosch committed
261

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

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

upload/ubuntu/xenial:
  <<: *upload
  dependencies:
280
281
282
    - ubuntu/xenial:x86
    - ubuntu/xenial:x86_64
    - ubuntu/xenial