Merge "Update CentOS7 devstack newton image"
[releng/builder.git] / jjb / releng-jobs.yaml
1 ---
2 - project:
3     name: builder-jobs
4     jobs:
5       - '{project-name}-ci-jobs'
6       - '{project-name}-verify-tox-{stream}'
7       - 'builder-check-poms'
8       # OpenStack Related
9       - 'builder-verify-image-visibility'
10       - 'builder-cleanup-old-images'
11       - 'builder-delete-stale-nodes'
12       - 'builder-delete-stale-stacks'
13       # Automation for docs and jobs
14       - 'builder-update-image-list'
15
16     # The following values are only specified here
17     # so that code blocks look similar to other projects.
18     project: 'releng/builder'
19     project-name: builder
20     stream: master
21     branch: master
22     build-node: centos7-java-builder-2c-4g
23     archive-artifacts: '**/*.log'
24     build-timeout: 10
25
26 - project:
27     name: packer-jobs
28     # packer jobs templates are defined in global-jjb
29     jobs:
30       - '{project-name}-packer-jobs'
31     project: 'releng/builder'
32     project-name: builder
33     branch: master
34     archive-artifacts: '**/*.log'
35
36     platforms:
37       - centos
38       - ubuntu-14.04
39       - ubuntu-16.04
40
41     templates:
42       - devstack
43       - devstack-pre-pip-newton:
44           build-timeout: 75
45       - devstack-pre-pip-ocata:
46           build-timeout: 60
47       - devstack-pre-pip-pike:
48           build-timeout: 75
49       - docker
50       - gbp
51       - java-builder:
52           build-timeout: 75
53       - mininet
54       - mininet-ovs-2.5:
55           build-timeout: 60
56       - mininet-ovs-2.6:
57           build-timeout: 75
58       - robot
59
60     exclude:
61       - platforms: centos
62         templates: gbp
63       - platforms: centos
64         templates: mininet
65       - platforms: centos
66         templates: mininet-ovs-2.5
67       - platforms: centos
68         templates: mininet-ovs-2.6
69       - platforms: ubuntu-14.04
70         templates: java-builder
71       - platforms: ubuntu-14.04
72         templates: robot
73       - platforms: ubuntu-14.04
74         templates: devstack-pre-pip-newton
75       - platforms: ubuntu-14.04
76         templates: devstack-pre-pip-ocata
77       - platforms: ubuntu-14.04
78         templates: devstack-pre-pip-pike
79       - platforms: ubuntu-14.04
80         templates: devstack
81       - platforms: ubuntu-14.04
82         templates: docker
83       - platforms: ubuntu-14.04
84         templates: mininet-ovs-2.5
85       - platforms: ubuntu-14.04
86         templates: mininet-ovs-2.6
87       - platforms: ubuntu-16.04
88         templates: java-builder
89       - platforms: ubuntu-16.04
90         templates: robot
91       - platforms: ubuntu-16.04
92         templates: devstack-pre-pip-newton
93       - platforms: ubuntu-16.04
94         templates: devstack-pre-pip-ocata
95       - platforms: ubuntu-16.04
96         templates: devstack-pre-pip-pike
97       - platforms: ubuntu-16.04
98         templates: devstack
99       - platforms: ubuntu-16.04
100         templates: docker
101       - platforms: ubuntu-16.04
102         templates: mininet
103       - platforms: ubuntu-16.04
104         templates: gbp
105       - platforms: ubuntu-16.04
106         templates: baseline
107       - platforms: centos
108         templates: baseline
109
110 - job-template:
111     name: builder-check-poms
112     node: centos7-java-builder-2c-4g
113
114     project-type: freestyle
115
116     properties:
117       - opendaylight-infra-properties:
118           build-days-to-keep: 14
119
120     parameters:
121       - opendaylight-infra-parameters:
122           os-cloud: '{os-cloud}'
123           project: '{project}'
124           branch: '{branch}'
125           refspec: 'refs/heads/{branch}'
126           artifacts: '{archive-artifacts}'
127
128     wrappers:
129       - opendaylight-infra-wrappers:
130           build-timeout: '{build-timeout}'
131
132     triggers:
133       - timed: 'H H * * 1'
134
135     builders:
136       - shell: !include-raw-escape: check-poms.sh
137
138     publishers:
139       - email-notification:
140           email-recipients: '{email-recipients}'
141           email-prefix: '[releng]'
142       - lf-infra-publish
143
144
145 - job-template:
146     name: 'builder-verify-image-visibility'
147     project-type: freestyle
148     node: centos7-java-builder-2c-4g
149
150     os-cloud: 'odlpriv-sandbox'
151
152     properties:
153       - opendaylight-infra-properties:
154           build-days-to-keep: 7
155
156     parameters:
157       - opendaylight-infra-parameters:
158           os-cloud: '{os-cloud}'
159           project: '{project}'
160           branch: '{branch}'
161           refspec: 'refs/heads/{branch}'
162           artifacts: '{archive-artifacts}'
163
164     scm:
165       - git-scm:
166           branch: '{branch}'
167
168     wrappers:
169       - opendaylight-infra-wrappers:
170           build-timeout: '{build-timeout}'
171       # Listed after to override openstack-infra-wrappers clouds.yaml definition
172       - config-file-provider:
173           files:
174             - file-id: opendaylight-private-clouds-yaml
175               target: '$HOME/.config/openstack/clouds.yaml'
176
177     triggers:
178       # Check images visibility on a daily schedule
179       - timed: '@daily'
180
181     builders:
182       - shell: !include-raw-escape:
183           - opendaylight-infra-check-image-visibility.sh
184
185     publishers:
186       - email-notification:
187           email-recipients: '{email-recipients}'
188           email-prefix: '[releng]'
189       - lf-infra-publish
190
191
192 - job-template:
193     name: 'builder-cleanup-old-images'
194     project-type: freestyle
195     node: centos7-java-builder-2c-4g
196
197     properties:
198       - opendaylight-infra-properties:
199           build-days-to-keep: 7
200
201     parameters:
202       - opendaylight-infra-parameters:
203           os-cloud: '{os-cloud}'
204           project: '{project}'
205           branch: '{branch}'
206           refspec: 'refs/heads/{branch}'
207           artifacts: '{archive-artifacts}'
208
209     scm:
210       - git-scm:
211           branch: '{branch}'
212
213     wrappers:
214       - opendaylight-infra-wrappers:
215           build-timeout: '{build-timeout}'
216       # Listed after to override openstack-infra-wrappers clouds.yaml definition
217       - config-file-provider:
218           files:
219             - file-id: opendaylight-private-clouds-yaml
220               target: '$HOME/.config/openstack/clouds.yaml'
221
222     triggers:
223       # Cleanup images on a weekly schedule
224       - timed: '@weekly'
225
226     builders:
227       - shell: !include-raw-escape:
228           - global-jjb/shell/lftools-install.sh
229           - opendaylight-infra-cleanup-old-images.sh
230
231     publishers:
232       - email-notification:
233           email-recipients: '{email-recipients}'
234           email-prefix: '[releng]'
235       - lf-infra-publish
236
237
238 - job-template:
239     name: 'builder-delete-stale-nodes'
240     project-type: freestyle
241     node: centos7-java-builder-2c-4g
242
243     properties:
244       - opendaylight-infra-properties:
245           build-days-to-keep: 7
246
247     parameters:
248       - opendaylight-infra-parameters:
249           os-cloud: '{os-cloud}'
250           project: '{project}'
251           branch: '{branch}'
252           refspec: 'refs/heads/{branch}'
253           artifacts: '{archive-artifacts}'
254
255     wrappers:
256       - opendaylight-infra-wrappers:
257           build-timeout: '{build-timeout}'
258
259     triggers:
260       # Attempt to clear up stacks every 30 mins in case we have orphaned stacks
261       - timed: '0,30 * * * *'
262
263     builders:
264       - shell: !include-raw-escape:
265           - global-jjb/shell/lftools-install.sh
266           - opendaylight-infra-cleanup-stale-nodes.sh
267
268     publishers:
269       - email-notification:
270           email-recipients: '{email-recipients}'
271           email-prefix: '[releng]'
272       - lf-infra-publish
273
274
275 - job-template:
276     name: 'builder-delete-stale-stacks'
277     project-type: freestyle
278     node: centos7-java-builder-2c-4g
279
280     properties:
281       - opendaylight-infra-properties:
282           build-days-to-keep: 7
283
284     parameters:
285       - opendaylight-infra-parameters:
286           os-cloud: '{os-cloud}'
287           project: '{project}'
288           branch: '{branch}'
289           refspec: 'refs/heads/{branch}'
290           artifacts: '{archive-artifacts}'
291
292     wrappers:
293       - opendaylight-infra-wrappers:
294           build-timeout: '{build-timeout}'
295
296     triggers:
297       # Attempt to clear up stacks every 30 mins in case we have orphaned stacks
298       - timed: '0,30 * * * *'
299
300     builders:
301       - shell: !include-raw-escape: opendaylight-infra-cleanup-stale-stacks.sh
302
303     publishers:
304       - email-notification:
305           email-recipients: '{email-recipients}'
306           email-prefix: '[releng]'
307       - lf-infra-publish
308
309
310 - job-template:
311     name: 'builder-update-image-list'
312     project-type: freestyle
313     node: centos7-java-builder-2c-4g
314
315     properties:
316       - opendaylight-infra-properties:
317           build-days-to-keep: 7
318
319     parameters:
320       - opendaylight-infra-parameters:
321           os-cloud: odlpriv
322           project: '{project}'
323           branch: '{branch}'
324           refspec: 'refs/heads/{branch}'
325           artifacts: '{archive-artifacts}'
326
327     scm:
328       - git-scm:
329           branch: '{branch}'
330
331     wrappers:
332       - opendaylight-infra-wrappers:
333           build-timeout: '{build-timeout}'
334       # Listed after to override openstack-infra-wrappers clouds.yaml definition
335       - config-file-provider:
336           files:
337             - file-id: opendaylight-private-clouds-yaml
338               target: '$HOME/.config/openstack/clouds.yaml'
339
340     triggers:
341       # Update image list every Monday to Friday at 11:00 UTC
342       - timed: '0 11 * * 1-5'
343
344     builders:
345       - shell: !include-raw-escape: opendaylight-infra-update-image-list.sh
346       - opendaylight-infra-push-gerrit-patch:
347           project: '{project}'
348           gerrit-topic: 'releng-update-cloud-image-list'
349           gerrit-commit-message: 'Update cloud image list docs'
350
351     publishers:
352       - email-notification:
353           email-recipients: '{email-recipients}'
354           email-prefix: '[releng]'
355       - lf-infra-publish