Merge "Don't allow retry to fail stacking"
[releng/builder.git] / jjb / releng-jobs.yaml
1 ---
2 - project:
3     name: builder-jobs
4     jobs:
5       - '{project-name}-ci-jobs':
6           build-node: centos7-builder-2c-2g
7           build-timeout: 60
8           jenkins-silos: releng sandbox
9       - builder-check-poms
10       - builder-copy-sandbox-logs
11       - builder-openstack-cron
12       - gerrit-tox-verify
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-builder-2c-1g
23     archive-artifacts: '**/*.log'
24     build-timeout: 30
25     jjb-version: 2.0.0
26     jenkins-urls: >
27       https://jenkins.opendaylight.org/releng
28       https://jenkins.opendaylight.org/sandbox
29
30 - project:
31     name: packer-jobs
32     # packer jobs templates are defined in global-jjb
33     jobs:
34       - '{project-name}-packer-jobs'
35     project: 'releng/builder'
36     project-name: builder
37     branch: master
38     archive-artifacts: '**/*.log'
39     build-node: centos7-builder-2c-1g
40
41     platforms:
42       - centos
43       - ubuntu-14.04
44       - ubuntu-16.04
45
46     templates:
47       - devstack
48       - devstack-pre-pip-newton:
49           build-timeout: 75
50       - devstack-pre-pip-ocata:
51           build-timeout: 75
52       - devstack-pre-pip-pike:
53           build-timeout: 75
54       - gbp
55       - mininet-ovs-2.5:
56           build-timeout: 60
57       - mininet-ovs-2.6:
58           build-timeout: 75
59
60     exclude:
61       - platforms: centos
62         templates: gbp
63       - platforms: centos
64         templates: mininet-ovs-2.5
65       - platforms: centos
66         templates: mininet-ovs-2.6
67       - platforms: ubuntu-14.04
68         templates: devstack-pre-pip-newton
69       - platforms: ubuntu-14.04
70         templates: devstack-pre-pip-ocata
71       - platforms: ubuntu-14.04
72         templates: devstack-pre-pip-pike
73       - platforms: ubuntu-14.04
74         templates: devstack
75       - platforms: ubuntu-14.04
76         templates: mininet-ovs-2.5
77       - platforms: ubuntu-14.04
78         templates: mininet-ovs-2.6
79       - platforms: ubuntu-16.04
80         templates: devstack-pre-pip-newton
81       - platforms: ubuntu-16.04
82         templates: devstack-pre-pip-ocata
83       - platforms: ubuntu-16.04
84         templates: devstack-pre-pip-pike
85       - platforms: ubuntu-16.04
86         templates: devstack
87
88 - job-template:
89     name: builder-check-poms
90     node: centos7-builder-2c-1g
91
92     project-type: freestyle
93
94     properties:
95       - opendaylight-infra-properties:
96           build-days-to-keep: 14
97
98     parameters:
99       - opendaylight-infra-parameters:
100           os-cloud: '{os-cloud}'
101           project: '{project}'
102           branch: '{branch}'
103           refspec: 'refs/heads/{branch}'
104           artifacts: '{archive-artifacts}'
105
106     wrappers:
107       - opendaylight-infra-wrappers:
108           build-timeout: '{build-timeout}'
109
110     triggers:
111       - timed: 'H H * * 1'
112
113     builders:
114       - shell: !include-raw-escape: check-poms.sh
115
116     publishers:
117       - email-notification:
118           email-recipients: '{email-recipients}'
119           email-prefix: '[releng]'
120       - lf-infra-publish
121
122 - job-template:
123     name: builder-copy-sandbox-logs
124     node: centos7-builder-2c-1g
125
126     project-type: freestyle
127
128     properties:
129       - opendaylight-infra-properties:
130           build-days-to-keep: 1
131
132     parameters:
133       - opendaylight-infra-parameters:
134           os-cloud: ''
135           project: ''
136           branch: ''
137           refspec: ''
138           artifacts: ''
139
140     wrappers:
141       - opendaylight-infra-wrappers:
142           build-timeout: 10
143
144     triggers:
145       - gerrit:
146           server-name: '{gerrit-server-name}'
147           trigger-on:
148             - comment-added-contains-event:
149                 comment-contains-value: 'copy-logs:'
150           projects:
151             - project-compare-type: ANT
152               project-pattern: '**'
153               branches:
154                 - branch-compare-type: ANT
155                   branch-pattern: '**'
156
157     builders:
158       - shell: !include-raw-escape: copy-sandbox-logs.sh
159
160     publishers:
161       - lf-infra-publish
162
163
164 - job-template:
165     name: builder-openstack-cron
166     project-type: freestyle
167     node: '{build-node}'
168
169     properties:
170       - lf-infra-properties:
171           build-days-to-keep: 7
172
173     parameters:
174       - lf-infra-parameters:
175           project: '{project}'
176           stream: '{stream}'
177           branch: '{branch}'
178           lftools-version: '{lftools-version}'
179       - string:
180           name: OS_CLOUD
181           default: '{os-cloud}'
182           description: Artifacts to archive to the logs server.
183       - string:
184           name: ARCHIVE_ARTIFACTS
185           default: '{archive-artifacts}'
186           description: Artifacts to archive to the logs server.
187       - string:
188           name: JENKINS_URLS
189           default: '{jenkins-urls}'
190           description: 'Space separated list of Jenkins URLs to check for active builds'
191
192     scm:
193       - git-scm:
194           branch: '{branch}'
195
196     wrappers:
197       - lf-infra-wrappers:
198           build-timeout: '{build-timeout}'
199           jenkins-ssh-credential: '{jenkins-ssh-credential}'
200       # Listed after to override openstack-infra-wrappers clouds.yaml definition
201       - config-file-provider:
202           files:
203             - file-id: clouds-yaml
204               target: '$HOME/.config/openstack/clouds.yaml'
205
206     triggers:
207       - timed: '0,30 * * * *'
208
209     builders:
210       - odl-openstack-install
211       - shell: !include-raw-escape: global-jjb/shell/lftools-install.sh
212       # Servers
213       - odl-openstack-cleanup-stale-stacks
214       - odl-openstack-cleanup-stale-nodes
215       - odl-openstack-cleanup-orphaned-nodes
216       # Images
217       - odl-openstack-check-image-protection
218       - odl-openstack-cleanup-old-images
219
220     publishers:
221       - lf-infra-publish
222
223 - job-template:
224     name: 'builder-update-image-list'
225     project-type: freestyle
226     node: centos7-builder-2c-1g
227
228     properties:
229       - opendaylight-infra-properties:
230           build-days-to-keep: 7
231
232     parameters:
233       - opendaylight-infra-parameters:
234           os-cloud: vex
235           project: '{project}'
236           branch: '{branch}'
237           refspec: 'refs/heads/{branch}'
238           artifacts: '{archive-artifacts}'
239
240     scm:
241       - git-scm:
242           branch: '{branch}'
243
244     wrappers:
245       - opendaylight-infra-wrappers:
246           build-timeout: '{build-timeout}'
247       # Listed after to override openstack-infra-wrappers clouds.yaml definition
248       - config-file-provider:
249           files:
250             - file-id: clouds-yaml
251               target: '$HOME/.config/openstack/clouds.yaml'
252
253     triggers:
254       # Update image list every Monday to Friday at 11:00 UTC
255       - timed: '0 11 * * 1-5'
256
257     builders:
258       - shell: !include-raw-escape: opendaylight-infra-update-image-list.sh
259       - opendaylight-infra-push-gerrit-patch:
260           project: '{project}'
261           gerrit-topic: 'releng-update-cloud-image-list'
262           gerrit-commit-message: 'Update cloud image list docs'
263
264     publishers:
265       - email-notification:
266           email-recipients: '{email-recipients}'
267           email-prefix: '[releng]'
268       - lf-infra-publish