Merge "BUG-2625: enable JDK8 verification for alto"
[releng/builder.git] / jjb / releng-jobs.yaml
1 - project:
2     name: builder-jobs
3     jobs:
4         - 'builder-verify-jjb'
5         - 'builder-verify-python'
6         - 'builder-merge'
7         - 'builder-weekly'
8         - 'builder-check-poms'
9
10         # Maven Sites
11         - 'builder-site-publish'
12         - 'builder-site-verify'
13
14     project: 'releng/builder'
15
16 - job-template:
17     name: builder-verify-jjb
18
19     project-type: freestyle
20
21     logrotate:
22         daysToKeep: 30
23         numToKeep: 10
24         artifactDaysToKeep: -1
25         artifactNumToKeep: -1
26
27     parameters:
28         - project-parameter:
29             project: '{project}'
30         - gerrit-parameter:
31             branch: 'master'
32
33     scm:
34         - gerrit-trigger-scm:
35             credentials-id: '{ssh-credentials}'
36             refspec: '$GERRIT_REFSPEC'
37             choosing-strategy: 'gerrit'
38
39     wrappers:
40         - ssh-agent-credentials:
41             users:
42                 - '{ssh-credentials}'
43
44     triggers:
45         - gerrit:
46             trigger-on:
47                 - patchset-created-event:
48                     exclude-drafts: 'false'
49                     exclude-trivial-rebase: 'false'
50                     exclude-no-code-change: 'false'
51                 - draft-published-event
52                 - comment-added-contains-event:
53                     comment-contains-value: 'recheck'
54             projects:
55               - project-compare-type: 'ANT'
56                 project-pattern: 'releng/builder'
57                 branches:
58                   - branch-compare-type: 'ANT'
59                     branch-pattern: '**/master'
60                 file-paths:
61                     - compare-type: ANT
62                       pattern: jjb/**
63                     - compare-type: ANT
64                       pattern: jjb-templates/**
65
66     builders:
67         - shell: |
68             source /opt/virtualenv/jenkins-job-builder/bin/activate
69             pip freeze
70             python scripts/jjb-autoupdate-project.py
71             jenkins-jobs test jjb/
72         - releng-check-unicode
73
74     publishers:
75         - email-notification:
76             email-prefix: '[releng]'
77
78 - job-template:
79     name: builder-verify-python
80
81     project-type: freestyle
82
83     logrotate:
84         daysToKeep: 30
85         numToKeep: 10
86         artifactDaysToKeep: -1
87         artifactNumToKeep: -1
88
89     parameters:
90         - project-parameter:
91             project: '{project}'
92         - gerrit-parameter:
93             branch: 'master'
94
95     scm:
96         - gerrit-trigger-scm:
97             credentials-id: '{ssh-credentials}'
98             refspec: '$GERRIT_REFSPEC'
99             choosing-strategy: 'gerrit'
100
101     wrappers:
102         - ssh-agent-credentials:
103             users:
104                 - '{ssh-credentials}'
105
106     triggers:
107         - gerrit:
108             trigger-on:
109                 - patchset-created-event:
110                     exclude-drafts: 'false'
111                     exclude-trivial-rebase: 'false'
112                     exclude-no-code-change: 'false'
113                 - draft-published-event
114                 - comment-added-contains-event:
115                     comment-contains-value: 'recheck'
116             projects:
117               - project-compare-type: 'ANT'
118                 project-pattern: 'releng/builder'
119                 branches:
120                   - branch-compare-type: 'ANT'
121                     branch-pattern: '**/master'
122                 file-paths:
123                     - compare-type: ANT
124                       pattern: scripts/**
125
126
127     builders:
128         - shell: |
129             flake8 scripts/
130
131     publishers:
132         - email-notification:
133             email-prefix: '[releng]'
134
135 - job-template:
136     name: 'builder-merge'
137
138     # builder-merge job to run JJB update
139     #
140     # This job's purpose is to update all the JJB
141
142     project-type: freestyle
143
144     logrotate:
145         daysToKeep: 30
146         numToKeep: 40
147         artifactDaysToKeep: -1
148         artifactNumToKeep: 5
149
150     parameters:
151         - project-parameter:
152             project: '{project}'
153         - gerrit-parameter:
154             branch: 'master'
155
156     scm:
157         - gerrit-trigger-scm:
158             credentials-id: '{ssh-credentials}'
159             refspec: ''
160             choosing-strategy: 'default'
161
162     wrappers:
163         - ssh-agent-credentials:
164             users:
165                 - '{ssh-credentials}'
166
167     triggers:
168         - gerrit:
169             trigger-on:
170                 - change-merged-event
171                 - comment-added-contains-event:
172                     comment-contains-value: 'remerge'
173             projects:
174               - project-compare-type: 'ANT'
175                 project-pattern: 'releng/builder'
176                 branches:
177                     - branch-compare-type: 'ANT'
178                       branch-pattern: '**/master'
179                 file-paths:
180                     - compare-type: ANT
181                       pattern: jjb/**
182                     - compare-type: ANT
183                       pattern: jjb-templates/**
184
185     builders:
186         - shell:
187             !include-raw-escape include-raw-jjb-update.sh
188
189     publishers:
190         - email-notification:
191             email-prefix: '[releng]'
192
193 - job-template:
194     name: 'builder-weekly'
195
196     # builder-weekly job to run JJB update weekly
197     #
198     # This job's purpose is to update all the JJB on a weekly (Sunday)
199     # basis with --flush-cache enabled to ensure jobs are okay
200
201     project-type: freestyle
202
203     logrotate:
204         daysToKeep: 30
205         numToKeep: 40
206         artifactDaysToKeep: -1
207         artifactNumToKeep: 5
208
209     parameters:
210         - project-parameter:
211             project: '{project}'
212
213     scm:
214         - git-scm:
215             credentials-id: '{ssh-credentials}'
216             branch: 'master'
217
218     wrappers:
219         - ssh-agent-credentials:
220             users:
221                 - '{ssh-credentials}'
222
223     triggers:
224         - timed: 'H H * * 0'
225
226     builders:
227         - shell: |
228             source /opt/virtualenv/jenkins-job-builder/bin/activate
229             jenkins-jobs --flush-cache update jjb/
230
231     publishers:
232         - email-notification:
233             email-prefix: '[releng]'
234
235 - job-template:
236     name: builder-check-poms
237     node: dynamic_verify
238
239     project-type: freestyle
240
241     logrotate:
242         daysToKeep: 1
243         numToKeep: 1
244         artifactDaysToKeep: -1
245         artifactNumToKeep: -1
246
247     wrappers:
248         - ssh-agent-credentials:
249             users:
250                 - '{ssh-credentials}'
251
252     triggers:
253         - timed: 'H H * * 1'
254
255     builders:
256         - shell:
257             !include-raw-escape include-raw-check-poms.sh
258
259     publishers:
260         - email-notification:
261             email-prefix: '[releng]'
262
263
264 ###
265 ### Maven Sites
266 ###
267
268 - job-template:
269     name: 'builder-site-publish'
270     node: dynamic_merge
271     concurrent: false
272     jdk: 'openjdk8'
273
274     # This job's purpose is to publish maven site
275
276     project-type: maven
277
278     logrotate:
279         daysToKeep: 7
280         numToKeep: 10
281         artifactDaysToKeep: -1
282         artifactNumToKeep: -1
283
284     parameters:
285         - project-parameter:
286             project: '{project}'
287         - gerrit-parameter:
288             branch: 'master'
289
290     scm:
291         - gerrit-trigger-scm:
292             credentials-id: '{ssh-credentials}'
293             refspec: ''
294             choosing-strategy: 'default'
295
296     wrappers:
297         - ssh-agent-credentials:
298             users:
299                 - '{ssh-credentials}'
300
301     triggers:
302         - gerrit:
303             server-name: 'OpenDaylight'
304             trigger-on:
305                 - change-merged-event
306                 - comment-added-contains-event:
307                     comment-contains-value: 'republish'
308             projects:
309               - project-compare-type: 'ANT'
310                 project-pattern: 'releng/builder'
311                 branches:
312                     - branch-compare-type: 'ANT'
313                       branch-pattern: '**/master'
314                 file-paths:
315                     - compare-type: ANT
316                       pattern: src/**
317                     - compare-type: ANT
318                       pattern: pom.xml
319
320     maven:
321         maven-name: '{mvn33}'
322         root-pom: 'pom.xml'
323         goals: 'site:site site:deploy -Dstream=master'
324         maven-opts: '-Xmx1024m'
325         settings: '{releng-builder-settings}'
326         global-settings: '{odl-global-settings}'
327
328     publishers:
329         - email-notification:
330             email-prefix: '[releng]'
331
332 - job-template:
333     name: 'builder-site-verify'
334     node: dynamic_verify
335     concurrent: true
336     jdk: 'openjdk8'
337
338     # This job's purpose is to verify maven site configuration
339
340     project-type: maven
341
342     logrotate:
343         daysToKeep: 7
344         numToKeep: 10
345         artifactDaysToKeep: -1
346         artifactNumToKeep: -1
347
348     parameters:
349         - project-parameter:
350             project: '{project}'
351         - gerrit-parameter:
352             branch: 'master'
353
354     scm:
355         - gerrit-trigger-scm:
356             credentials-id: '{ssh-credentials}'
357             refspec: '$GERRIT_REFSPEC'
358             choosing-strategy: 'gerrit'
359
360     wrappers:
361         - ssh-agent-credentials:
362             users:
363                 - '{ssh-credentials}'
364
365     triggers:
366         - gerrit:
367             trigger-on:
368                 - patchset-created-event:
369                     exclude-drafts: 'false'
370                     exclude-trivial-rebase: 'false'
371                     exclude-no-code-change: 'false'
372                 - draft-published-event
373                 - comment-added-contains-event:
374                     comment-contains-value: 'recheck'
375             projects:
376               - project-compare-type: 'ANT'
377                 project-pattern: 'releng/builder'
378                 branches:
379                   - branch-compare-type: 'ANT'
380                     branch-pattern: '**/master'
381                 file-paths:
382                     - compare-type: ANT
383                       pattern: src/**
384                     - compare-type: ANT
385                       pattern: pom.xml
386
387     maven:
388         maven-name: '{mvn33}'
389         root-pom: 'pom.xml'
390         goals: 'site:site -Dstream=master'
391         maven-opts: '-Xmx1024m'
392         settings: '{autorelease-settings}'
393         global-settings: '{odl-global-settings}'
394
395     publishers:
396         - email-notification:
397             email-prefix: '[releng]'