Merge "No-activity timeout for csit-perf jobs"
[ci-management.git] / jjb / vpp / vpp.yaml
1 - project:
2     name: vpp
3     jobs:
4         - 'vpp-verify-{stream}-{os}'
5         - 'vpp-merge-{stream}-{os}'
6         - 'vpp-verify-image-{stream}-{os}'
7         - 'vpp-docs-merge-{stream}'
8         - 'vpp-docs-verify-{stream}'
9
10     project: 'vpp'
11     os:
12         - ubuntu1404:
13             repo-os-part: 'ubuntu.trusty.main'
14         - ubuntu1604:
15             repo-os-part: 'ubuntu.xenial.main'
16         - centos7:
17             repo-os-part: 'centos7'
18     stream:
19         - master:
20             branch: 'master'
21             repo-stream-part: 'master'
22         - test:
23             branch: 'stable/test'
24             repo-stream-part: 'stable.test'
25         - '1606':
26             branch: 'stable/1606'
27             repo-stream-part: 'stable.1606'
28         - '1609':
29             branch: 'stable/1609'
30             repo-stream-part: 'stable.1609'
31     type:
32         - short
33         - long
34
35 - project:
36     name: vpp-misc
37     jobs:
38         - 'vpp-csit-verify-virl-{stream}'
39         - 'vpp-csit-verify-hw-perf-{stream}-{type}'
40         - 'vpp-csit-verify-virl-1604-test-{stream}'
41     project: 'vpp'
42     stream:
43         - master:
44             branch: 'master'
45             repo-stream-part: 'master'
46         - test:
47             branch: 'stable/test'
48             repo-stream-part: 'stable.test'
49         - '1606':
50             branch: 'stable/1606'
51             repo-stream-part: 'stable.1606'
52         - '1609':
53             branch: 'stable/1609'
54             repo-stream-part: 'stable.1609'
55
56     os: ubuntu1604
57     type:
58         - all
59         - short
60         - long
61
62 - job-template:
63     name: 'vpp-verify-{stream}-{os}'
64
65     project-type: freestyle
66     node: 'verify-{os}'
67     concurrent: true
68
69     logrotate:
70         daysToKeep: '{build-days-to-keep}'
71         numToKeep: '{build-num-to-keep}'
72         artifactDaysToKeep: '{build-artifact-days-to-keep}'
73         artifactNumToKeep: '{build-artifact-num-to-keep}'
74
75     parameters:
76         - project-parameter:
77             project: '{project}'
78         - gerrit-parameter:
79             branch: '{branch}'
80         - os-parameter:
81             os: '{os}'
82
83     scm:
84         - gerrit-trigger-scm:
85             credentials-id: 'jenkins-gerrit-credentials'
86             refspec: '$GERRIT_REFSPEC'
87             choosing-strategy: 'gerrit'
88
89     wrappers:
90         - fdio-infra-wrappers:
91             build-timeout: '{build-timeout}'
92
93     triggers:
94         - gerrit-trigger-patch-submitted:
95             name: '{project}'
96             branch: '{branch}'
97
98     builders:
99         - shell:
100             !include-raw-escape: include-raw-vpp-checkstyle.sh
101         - shell:
102             !include-raw-escape: include-raw-vpp-build.sh
103     publishers:
104         - archive:
105             artifacts: 'build-root/*.rpm,build-root/*.deb'
106             allow-empty: 'true'
107             fingerprint: false
108             only-if-success: true
109             default-excludes: false
110
111 - job-template:
112     name: 'vpp-csit-verify-virl-1604-test-{stream}'
113
114     project-type: freestyle
115     node: 'verify-ubuntu1604'
116     concurrent: true
117
118     logrotate:
119         daysToKeep: '{build-days-to-keep}'
120         numToKeep: '{build-num-to-keep}'
121         artifactDaysToKeep: '{build-artifact-days-to-keep}'
122         artifactNumToKeep: '{build-artifact-num-to-keep}'
123
124     parameters:
125         - project-parameter:
126             project: '{project}'
127         - gerrit-parameter:
128             branch: '{branch}'
129         - os-parameter:
130             os: 'ubuntu1604'
131
132     scm:
133         - gerrit-trigger-scm:
134             credentials-id: 'jenkins-gerrit-credentials'
135             refspec: '$GERRIT_REFSPEC'
136             choosing-strategy: 'gerrit'
137
138     wrappers:
139         - fdio-infra-wrappers:
140             build-timeout: '{build-timeout}'
141
142     triggers:
143         - gerrit-trigger-manually-triggered:
144             name: '{project}'
145             branch: '{branch}'
146             comment-trigger-value: 'virl-1604-test'
147
148     builders:
149         - shell:
150             !include-raw-escape: include-raw-vpp-checkstyle.sh
151         - shell:
152             !include-raw-escape: include-raw-vpp-build.sh
153         - shell:
154             !include-raw-escape: include-raw-vpp-csit-functional.sh
155     
156     publishers:
157         - archive-artifacts:
158             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
159             latest-only: false
160
161         - robot-report:
162             output-path: 'csit'
163
164 - job-template:
165     name: 'vpp-verify-image-{stream}-{os}'
166
167     project-type: freestyle
168     node: 'verify-image-{os}'
169     concurrent: true
170
171     logrotate:
172         daysToKeep: '{build-days-to-keep}'
173         numToKeep: '{build-num-to-keep}'
174         artifactDaysToKeep: '{build-artifact-days-to-keep}'
175         artifactNumToKeep: '{build-artifact-num-to-keep}'
176
177     parameters:
178         - project-parameter:
179             project: '{project}'
180         - gerrit-parameter:
181             branch: '{branch}'
182         - os-parameter:
183             os: '{os}'
184
185     scm:
186         - gerrit-trigger-scm:
187             credentials-id: 'jenkins-gerrit-credentials'
188             refspec: '$GERRIT_REFSPEC'
189             choosing-strategy: 'gerrit'
190
191     wrappers:
192         - fdio-infra-wrappers:
193             build-timeout: '{build-timeout}'
194
195     triggers:
196         - gerrit:
197             server-name: 'Primary'
198             trigger-on:
199                 - comment-added-contains-event:
200                     comment-contains-value: 'verify-images'
201             projects:
202               - project-compare-type: 'ANT'
203                 project-pattern: '{project}'
204                 branches:
205                   - branch-compare-type: 'ANT'
206                     branch-pattern: '**/{branch}'
207             skip-vote:
208                 successful: true
209                 failed: true
210                 unstable: true
211                 notbuilt: true
212
213     builders:
214         - shell:
215             !include-raw-escape: include-raw-vpp-checkstyle.sh
216         - shell:
217             !include-raw-escape: include-raw-vpp-build.sh
218
219 - job-template:
220     name: 'vpp-merge-{stream}-{os}'
221
222     project-type: freestyle
223     node: 'merge-{os}'
224
225     logrotate:
226         daysToKeep: '{build-days-to-keep}'
227         numToKeep: '{build-num-to-keep}'
228         artifactDaysToKeep: '{build-artifact-days-to-keep}'
229         artifactNumToKeep: '{build-artifact-num-to-keep}'
230
231     parameters:
232         - project-parameter:
233             project: '{project}'
234         - gerrit-parameter:
235             branch: '{branch}'
236         - os-parameter:
237             os: '{os}'
238         - maven-project-parameter:
239             maven: 'mvn33'
240         - repo-name-parameter:
241             repo-name: '{repo-stream-part}.{repo-os-part}'
242
243     scm:
244         - gerrit-trigger-scm:
245             credentials-id: 'jenkins-gerrit-credentials'
246             refspec: ''
247             choosing-strategy: 'default'
248
249     wrappers:
250         - fdio-infra-wrappers:
251             build-timeout: '{build-timeout}'
252
253     triggers:
254         - gerrit-trigger-patch-merged:
255             name: '{project}'
256             branch: '{branch}'
257
258     builders:
259         - shell:
260             !include-raw-escape: include-raw-vpp-checkstyle.sh
261         - shell:
262             !include-raw-escape: include-raw-vpp-build.sh
263         - maven-target:
264             maven-version: 'mvn33'
265             goals: '--version'
266             settings: 'vpp-settings'
267             settings-type: cfp
268             global-settings: 'global-settings'
269             global-settings-type: cfp
270         - provide-maven-settings:
271             settings-file: 'vpp-settings'
272             global-settings-file: 'global-settings'
273         - shell:
274             !include-raw-escape:
275                 - ../scripts/maven_push_functions.sh
276                 - include-raw-vpp-maven-push.sh
277     publishers:
278         - archive:
279             artifacts: 'build-root/*.rpm,build-root/*.deb'
280             allow-empty: 'true'
281             fingerprint: false
282             only-if-success: true
283             default-excludes: false
284
285 - job-template:
286     name: 'vpp-csit-verify-virl-{stream}'
287
288     project-type: freestyle
289     node: 'verify-{os}'
290     concurrent: true
291
292     logrotate:
293         daysToKeep: '{build-days-to-keep}'
294         numToKeep: '{build-num-to-keep}'
295         artifactDaysToKeep: '{build-artifact-days-to-keep}'
296         artifactNumToKeep: '{build-artifact-num-to-keep}'
297
298     parameters:
299         - project-parameter:
300             project: '{project}'
301         - gerrit-parameter:
302             branch: '{branch}'
303         - os-parameter:
304             os: '{os}'
305
306     scm:
307         - gerrit-trigger-scm:
308             credentials-id: 'jenkins-gerrit-credentials'
309             refspec: '$GERRIT_REFSPEC'
310             choosing-strategy: 'gerrit'
311
312     wrappers:
313         - fdio-infra-wrappers:
314             build-timeout: '{build-timeout}'
315
316     triggers:
317         - gerrit-trigger-patch-submitted:
318             name: '{project}'
319             branch: '{branch}'
320
321     builders:
322         - shell:
323             !include-raw-escape: include-raw-vpp-checkstyle.sh
324         - shell:
325             !include-raw-escape: include-raw-vpp-build.sh
326         - shell:
327             !include-raw-escape: include-raw-vpp-csit-functional.sh
328
329     publishers:
330         - archive-artifacts:
331             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
332             latest-only: false
333
334         - robot-report:
335             output-path: 'csit'
336
337 - job-template:
338     name: 'vpp-csit-verify-hw-perf-{stream}-{type}'
339
340     project-type: freestyle
341     node: 'verify-{os}'
342     concurrent: false
343
344     logrotate:
345         daysToKeep: '{build-days-to-keep}'
346         numToKeep: '{build-num-to-keep}'
347         artifactDaysToKeep: '{build-artifact-days-to-keep}'
348         artifactNumToKeep: '{build-artifact-num-to-keep}'
349
350     parameters:
351         - project-parameter:
352             project: '{project}'
353         - gerrit-parameter:
354             branch: '{branch}'
355         - os-parameter:
356             os: '{os}'
357         - type-parameter:
358             type: '{type}'
359
360     scm:
361         - gerrit-trigger-scm:
362             credentials-id: 'jenkins-gerrit-credentials'
363             refspec: '$GERRIT_REFSPEC'
364             choosing-strategy: 'gerrit'
365
366     wrappers:
367         - fdio-infra-wrappers:
368             build-timeout: '{build-timeout}'
369
370     triggers:
371         - gerrit-trigger-manually-triggered:
372             comment-trigger-value: 'verify-perf-{type}'
373             name: '{project}'
374             branch: '{branch}'
375
376     builders:
377         - shell:
378             !include-raw-escape: include-raw-vpp-build.sh
379         - shell:
380             !include-raw-escape: include-raw-vpp-csit-verify-perf.sh
381
382     publishers:
383         - archive-artifacts:
384             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
385             latest-only: false
386
387         - robot-report:
388             output-path: 'csit'
389
390 - parameter:
391     name: type-parameter
392
393     parameters:
394         - string:
395             name: TYPE
396             default: '{type}'
397             description: "TYPE parameter if not given by trigger"
398
399 - job-template:
400     name: 'vpp-docs-verify-{stream}'
401
402     project-type: freestyle
403     node: 'verify-ubuntu1604'
404     concurrent: true
405
406     logrotate:
407         daysToKeep: '{build-days-to-keep}'
408         numToKeep: '{build-num-to-keep}'
409         artifactDaysToKeep: '{build-artifact-days-to-keep}'
410         artifactNumToKeep: '{build-artifact-num-to-keep}'
411
412     parameters:
413         - project-parameter:
414             project: '{project}'
415         - gerrit-parameter:
416             branch: '{branch}'
417         - os-parameter:
418             os: 'ubuntu1604'
419
420     scm:
421         - gerrit-trigger-scm:
422             credentials-id: 'jenkins-gerrit-credentials'
423             refspec: '$GERRIT_REFSPEC'
424             choosing-strategy: 'gerrit'
425
426     wrappers:
427         - fdio-infra-wrappers:
428             build-timeout: '{build-timeout}'
429
430     triggers:
431         - gerrit-trigger-patch-submitted:
432             name: '{project}'
433             branch: '{branch}'
434
435     builders:
436         - maven-target:
437             maven-version: 'mvn33'
438             goals: '--version'
439             settings: 'vpp-settings'
440             settings-type: cfp
441             global-settings: 'global-settings'
442             global-settings-type: cfp
443         - provide-maven-settings:
444             settings-file: 'vpp-settings'
445             global-settings-file: 'global-settings'
446         - shell:
447             !include-raw-escape: include-raw-vpp-docs.sh
448     publishers:
449         - archive:
450             artifacts: 'build-root/docs/html/*'
451             allow-empty: 'true'
452             fingerprint: false
453             only-if-success: true
454             default-excludes: false
455
456 - job-template:
457     name: 'vpp-docs-merge-{stream}'
458
459     project-type: freestyle
460     node: 'verify-ubuntu1604'
461     concurrent: true
462
463     logrotate:
464         daysToKeep: '{build-days-to-keep}'
465         numToKeep: '{build-num-to-keep}'
466         artifactDaysToKeep: '{build-artifact-days-to-keep}'
467         artifactNumToKeep: '{build-artifact-num-to-keep}'
468
469     parameters:
470         - project-parameter:
471             project: '{project}'
472         - gerrit-parameter:
473             branch: '{branch}'
474         - os-parameter:
475             os: 'ubuntu1604'
476
477     scm:
478         - gerrit-trigger-scm:
479             credentials-id: 'jenkins-gerrit-credentials'
480             refspec: ''
481             choosing-strategy: 'default'
482
483     wrappers:
484         - fdio-infra-wrappers:
485             build-timeout: '{build-timeout}'
486
487     triggers:
488         - reverse:
489             jobs: 'vpp-merge-{stream}-ubuntu1404'
490             result: 'success'
491         - gerrit:
492             server-name: 'Primary'
493             trigger-on:
494                 - comment-added-contains-event:
495                     comment-contains-value: 'run-docs'
496             projects:
497               - project-compare-type: 'ANT'
498                 project-pattern: '{project}'
499                 branches:
500                   - branch-compare-type: 'ANT'
501                     branch-pattern: '**/{branch}'
502             skip-vote:
503                 successful: true
504                 failed: true
505                 unstable: true
506                 notbuilt: true
507
508     builders:
509         - maven-target:
510             maven-version: 'mvn33'
511             goals: '--version'
512             settings: 'vpp-settings'
513             settings-type: cfp
514             global-settings: 'global-settings'
515             global-settings-type: cfp
516         - provide-maven-settings:
517             settings-file: 'vpp-settings'
518             global-settings-file: 'global-settings'
519         - shell:
520             !include-raw-escape: include-raw-vpp-docs.sh
521     publishers:
522         - archive:
523             artifacts: 'build-root/docs/html/*'
524             allow-empty: 'true'
525             fingerprint: false
526             only-if-success: true
527             default-excludes: false