Fix vpp merge 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         - 'vpp-make-test-docs-merge-{stream}'
10         - 'vpp-make-test-docs-verify-{stream}'
11
12     project: 'vpp'
13     os:
14         - ubuntu1404:
15             repo-os-part: 'ubuntu.trusty.main'
16         - ubuntu1604:
17             repo-os-part: 'ubuntu.xenial.main'
18         - centos7:
19             repo-os-part: 'centos7'
20     stream:
21         - master:
22             branch: 'master'
23             repo-stream-part: 'master'
24         - test:
25             branch: 'stable/test'
26             repo-stream-part: 'stable.test'
27         - '1606':
28             branch: 'stable/1606'
29             repo-stream-part: 'stable.1606'
30         - '1609':
31             branch: 'stable/1609'
32             repo-stream-part: 'stable.1609'
33         - '1701':
34             branch: 'stable/1701'
35             repo-stream-part: 'stable.1701'
36     type:
37         - short
38         - long
39
40 - project:
41     name: vpp-misc
42     jobs:
43         - 'vpp-csit-verify-virl-{stream}'
44         - 'vpp-csit-verify-hw-perf-{stream}-{type}'
45     project: 'vpp'
46     stream:
47         - master:
48             branch: 'master'
49             repo-stream-part: 'master'
50         - test:
51             branch: 'stable/test'
52             repo-stream-part: 'stable.test'
53         - '1606':
54             branch: 'stable/1606'
55             repo-stream-part: 'stable.1606'
56         - '1609':
57             branch: 'stable/1609'
58             repo-stream-part: 'stable.1609'
59         - '1701':
60             branch: 'stable/1701'
61             repo-stream-part: 'stable.1609'
62
63     os: ubuntu1604
64     type:
65         - all
66         - short
67         - long
68
69 - job-template:
70     name: 'vpp-verify-{stream}-{os}'
71
72     project-type: freestyle
73     node: '{os}-basebuild-4c-4g'
74     concurrent: true
75
76     logrotate:
77         daysToKeep: '{build-days-to-keep}'
78         numToKeep: '{build-num-to-keep}'
79         artifactDaysToKeep: '{build-artifact-days-to-keep}'
80         artifactNumToKeep: '{build-artifact-num-to-keep}'
81
82     parameters:
83         - project-parameter:
84             project: '{project}'
85         - gerrit-parameter:
86             branch: '{branch}'
87         - os-parameter:
88             os: '{os}'
89         - repo-name-parameter:
90             repo-name: '{repo-stream-part}.{repo-os-part}'
91
92     scm:
93         - gerrit-trigger-scm:
94             credentials-id: 'jenkins-gerrit-credentials'
95             refspec: '$GERRIT_REFSPEC'
96             choosing-strategy: 'gerrit'
97
98     wrappers:
99         - fdio-infra-wrappers:
100             build-timeout: '{build-timeout}'
101
102     triggers:
103         - gerrit-trigger-patch-submitted:
104             name: '{project}'
105             branch: '{branch}'
106
107     builders:
108         - shell:
109             !include-raw-escape: include-raw-vpp-checkstyle.sh
110         - shell:
111             !include-raw-escape: include-raw-vpp-test-checkstyle.sh
112         - shell:
113             !include-raw-escape:
114                 - ../scripts/setup_vpp_dpdk_dev_env.sh
115                 - include-raw-vpp-build.sh
116     publishers:
117         - archive:
118             artifacts: 'build-root/*.rpm,build-root/*.deb'
119             allow-empty: 'true'
120             fingerprint: false
121             only-if-success: true
122             default-excludes: false
123         - fdio-infra-shiplogs:
124             maven-version: 'mvn33-new'
125
126 - job-template:
127     name: 'vpp-verify-image-{stream}-{os}'
128
129     project-type: freestyle
130     node: '{os}-basebuild-4c-4g'
131     concurrent: true
132
133     logrotate:
134         daysToKeep: '{build-days-to-keep}'
135         numToKeep: '{build-num-to-keep}'
136         artifactDaysToKeep: '{build-artifact-days-to-keep}'
137         artifactNumToKeep: '{build-artifact-num-to-keep}'
138
139     parameters:
140         - project-parameter:
141             project: '{project}'
142         - gerrit-parameter:
143             branch: '{branch}'
144         - os-parameter:
145             os: '{os}'
146         - repo-name-parameter:
147             repo-name: '{repo-stream-part}.{repo-os-part}'
148
149     scm:
150         - gerrit-trigger-scm:
151             credentials-id: 'jenkins-gerrit-credentials'
152             refspec: '$GERRIT_REFSPEC'
153             choosing-strategy: 'gerrit'
154
155     wrappers:
156         - fdio-infra-wrappers:
157             build-timeout: '{build-timeout}'
158
159     triggers:
160         - gerrit:
161             server-name: 'Primary'
162             trigger-on:
163                 - comment-added-contains-event:
164                     comment-contains-value: 'verify-images'
165             projects:
166               - project-compare-type: 'ANT'
167                 project-pattern: '{project}'
168                 branches:
169                   - branch-compare-type: 'ANT'
170                     branch-pattern: '**/{branch}'
171             skip-vote:
172                 successful: true
173                 failed: true
174                 unstable: true
175                 notbuilt: true
176
177     builders:
178         - shell:
179             !include-raw-escape: include-raw-vpp-checkstyle.sh
180         - shell:
181             !include-raw-escape:
182                 - ../scripts/setup_vpp_dpdk_dev_env.sh
183                 - include-raw-vpp-build.sh
184
185     publishers:
186       - fdio-infra-shiplogs:
187           maven-version: 'mvn33-new'
188
189 - job-template:
190     name: 'vpp-merge-{stream}-{os}'
191
192     project-type: freestyle
193     node: '{os}-basebuild-4c-4g'
194
195     logrotate:
196         daysToKeep: '{build-days-to-keep}'
197         numToKeep: '{build-num-to-keep}'
198         artifactDaysToKeep: '{build-artifact-days-to-keep}'
199         artifactNumToKeep: '{build-artifact-num-to-keep}'
200
201     parameters:
202         - project-parameter:
203             project: '{project}'
204         - gerrit-parameter:
205             branch: '{branch}'
206         - os-parameter:
207             os: '{os}'
208         - maven-project-parameter:
209             maven: 'mvn33-new'
210         - maven-exec:
211             maven-version: 'mvn33-new'
212         - repo-name-parameter:
213             repo-name: '{repo-stream-part}.{repo-os-part}'
214
215     scm:
216         - gerrit-trigger-scm:
217             credentials-id: 'jenkins-gerrit-credentials'
218             refspec: ''
219             choosing-strategy: 'default'
220
221     wrappers:
222         - fdio-infra-wrappers:
223             build-timeout: '{build-timeout}'
224
225     triggers:
226         - gerrit-trigger-patch-merged:
227             name: '{project}'
228             branch: '{branch}'
229
230     builders:
231         - maven-target:
232             maven-version: 'mvn33-new'
233             goals: '--version'
234             settings: 'vpp-settings'
235             settings-type: cfp
236             global-settings: 'global-settings'
237             global-settings-type: cfp
238         - shell:
239             !include-raw-escape: include-raw-vpp-checkstyle.sh
240         - shell:
241             !include-raw-escape:
242                 - ../scripts/setup_vpp_dpdk_dev_env.sh
243                 - include-raw-vpp-build.sh
244         - provide-maven-settings:
245             settings-file: 'vpp-settings'
246             global-settings-file: 'global-settings'
247         - shell:
248             !include-raw-escape:
249                 - ../scripts/maven_push_functions.sh
250                 - include-raw-vpp-maven-push.sh
251     publishers:
252         - archive:
253             artifacts: 'build-root/*.rpm,build-root/*.deb'
254             allow-empty: 'true'
255             fingerprint: false
256             only-if-success: true
257             default-excludes: false
258         - fdio-infra-shiplogs:
259             maven-version: 'mvn33-new'
260
261 - job-template:
262     name: 'vpp-csit-verify-virl-{stream}'
263
264     project-type: freestyle
265     node: '{os}-basebuild-4c-4g'
266     concurrent: true
267
268     logrotate:
269         daysToKeep: '{build-days-to-keep}'
270         numToKeep: '{build-num-to-keep}'
271         artifactDaysToKeep: '{build-artifact-days-to-keep}'
272         artifactNumToKeep: '{build-artifact-num-to-keep}'
273
274     parameters:
275         - project-parameter:
276             project: '{project}'
277         - gerrit-parameter:
278             branch: '{branch}'
279         - os-parameter:
280             os: '{os}'
281         - repo-name-parameter:
282             repo-name: '{repo-stream-part}.ubuntu.xenial.main'
283         - is-csit-vpp-job-parameter:
284             is-csit-vpp-job: 'True'
285
286     scm:
287         - gerrit-trigger-scm:
288             credentials-id: 'jenkins-gerrit-credentials'
289             refspec: '$GERRIT_REFSPEC'
290             choosing-strategy: 'gerrit'
291
292     wrappers:
293         - fdio-infra-wrappers:
294             build-timeout: '{build-timeout}'
295
296     triggers:
297         - gerrit-trigger-patch-submitted:
298             name: '{project}'
299             branch: '{branch}'
300
301     builders:
302         - shell:
303             !include-raw-escape: include-raw-vpp-checkstyle.sh
304         - shell:
305             !include-raw-escape:
306                 - ../scripts/setup_vpp_dpdk_dev_env.sh
307                 - include-raw-vpp-build.sh
308         - shell:
309             !include-raw-escape: include-raw-vpp-csit-functional.sh
310
311     publishers:
312         - archive-artifacts:
313             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
314             latest-only: false
315
316         - robot-report:
317             output-path: 'csit'
318
319         - fdio-infra-shiplogs:
320             maven-version: 'mvn33-new'
321
322 - job-template:
323     name: 'vpp-csit-verify-hw-perf-{stream}-{type}'
324
325     project-type: freestyle
326     node: '{os}-basebuild-4c-4g'
327     concurrent: false
328
329     logrotate:
330         daysToKeep: '{build-days-to-keep}'
331         numToKeep: '{build-num-to-keep}'
332         artifactDaysToKeep: '{build-artifact-days-to-keep}'
333         artifactNumToKeep: '{build-artifact-num-to-keep}'
334
335     parameters:
336         - project-parameter:
337             project: '{project}'
338         - gerrit-parameter:
339             branch: '{branch}'
340         - os-parameter:
341             os: '{os}'
342         - repo-name-parameter:
343             repo-name: '{repo-stream-part}.ubuntu.xenial.main'
344         - type-parameter:
345             type: '{type}'
346         - is-csit-vpp-job-parameter:
347             is-csit-vpp-job: 'True'
348
349     scm:
350         - gerrit-trigger-scm:
351             credentials-id: 'jenkins-gerrit-credentials'
352             refspec: '$GERRIT_REFSPEC'
353             choosing-strategy: 'gerrit'
354
355     wrappers:
356         - fdio-infra-wrappers-non-activity-timeout:
357             build-timeout: 30
358
359     triggers:
360         - gerrit-trigger-manually-triggered:
361             comment-trigger-value: 'verify-perf-{type}'
362             name: '{project}'
363             branch: '{branch}'
364
365     builders:
366         - shell:
367             !include-raw-escape:
368                 - ../scripts/setup_vpp_dpdk_dev_env.sh
369                 - include-raw-vpp-build.sh
370         - shell:
371             !include-raw-escape: include-raw-vpp-csit-verify-perf.sh
372
373     publishers:
374         - archive-artifacts:
375             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
376             latest-only: false
377
378         - robot-report:
379             output-path: 'csit'
380
381         - fdio-infra-shiplogs:
382             maven-version: 'mvn33-new'
383
384 - parameter:
385     name: type-parameter
386
387     parameters:
388         - string:
389             name: TYPE
390             default: '{type}'
391             description: "TYPE parameter if not given by trigger"
392
393 - job-template:
394     name: 'vpp-docs-verify-{stream}'
395
396     project-type: freestyle
397     node: ubuntu1604-basebuild-4c-4g
398     concurrent: true
399
400     logrotate:
401         daysToKeep: '{build-days-to-keep}'
402         numToKeep: '{build-num-to-keep}'
403         artifactDaysToKeep: '{build-artifact-days-to-keep}'
404         artifactNumToKeep: '{build-artifact-num-to-keep}'
405
406     parameters:
407         - project-parameter:
408             project: '{project}'
409         - gerrit-parameter:
410             branch: '{branch}'
411         - os-parameter:
412             os: 'ubuntu1604'
413         - maven-exec:
414             maven-version: 'mvn33-new'
415
416     scm:
417         - gerrit-trigger-scm:
418             credentials-id: 'jenkins-gerrit-credentials'
419             refspec: '$GERRIT_REFSPEC'
420             choosing-strategy: 'gerrit'
421
422     wrappers:
423         - fdio-infra-wrappers:
424             build-timeout: '{build-timeout}'
425
426     triggers:
427         - gerrit-trigger-patch-submitted:
428             name: '{project}'
429             branch: '{branch}'
430
431     builders:
432         - maven-target:
433             maven-version: 'mvn33-new'
434             goals: '--version'
435             settings: 'vpp-settings'
436             settings-type: cfp
437             global-settings: 'global-settings'
438             global-settings-type: cfp
439         - provide-maven-settings:
440             settings-file: 'vpp-settings'
441             global-settings-file: 'global-settings'
442         - shell:
443             !include-raw-escape: include-raw-vpp-docs.sh
444     publishers:
445         - archive:
446             artifacts: 'build-root/docs/html/*'
447             allow-empty: 'true'
448             fingerprint: false
449             only-if-success: true
450             default-excludes: false
451         - fdio-infra-shiplogs:
452             maven-version: 'mvn33-new'
453
454 - job-template:
455     name: 'vpp-docs-merge-{stream}'
456
457     project-type: freestyle
458     node: ubuntu1604-basebuild-4c-4g
459     concurrent: true
460
461     logrotate:
462         daysToKeep: '{build-days-to-keep}'
463         numToKeep: '{build-num-to-keep}'
464         artifactDaysToKeep: '{build-artifact-days-to-keep}'
465         artifactNumToKeep: '{build-artifact-num-to-keep}'
466
467     parameters:
468         - project-parameter:
469             project: '{project}'
470         - gerrit-parameter:
471             branch: '{branch}'
472         - os-parameter:
473             os: 'ubuntu1604'
474         - maven-exec:
475             maven-version: 'mvn33-new'
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-new'
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
528         - fdio-infra-shiplogs:
529             maven-version: 'mvn33-new'
530
531 - job-template:
532     name: 'vpp-make-test-docs-verify-{stream}'
533
534     project-type: freestyle
535     node: ubuntu1604-basebuild-4c-4g
536     concurrent: true
537
538     logrotate:
539         daysToKeep: '{build-days-to-keep}'
540         numToKeep: '{build-num-to-keep}'
541         artifactDaysToKeep: '{build-artifact-days-to-keep}'
542         artifactNumToKeep: '{build-artifact-num-to-keep}'
543
544     parameters:
545         - project-parameter:
546             project: '{project}'
547         - gerrit-parameter:
548             branch: '{branch}'
549         - os-parameter:
550             os: 'ubuntu1604'
551         - maven-exec:
552             maven-version: 'mvn33-new'
553
554     scm:
555         - gerrit-trigger-scm:
556             credentials-id: 'jenkins-gerrit-credentials'
557             refspec: '$GERRIT_REFSPEC'
558             choosing-strategy: 'gerrit'
559
560     wrappers:
561         - fdio-infra-wrappers:
562             build-timeout: '{build-timeout}'
563
564     triggers:
565         - gerrit-trigger-patch-submitted:
566             name: '{project}'
567             branch: '{branch}'
568
569     builders:
570         - maven-target:
571             maven-version: 'mvn33-new'
572             goals: '--version'
573             settings: 'vpp-settings'
574             settings-type: cfp
575             global-settings: 'global-settings'
576             global-settings-type: cfp
577         - provide-maven-settings:
578             settings-file: 'vpp-settings'
579             global-settings-file: 'global-settings'
580         - shell:
581             !include-raw-escape: include-raw-vpp-make-test-docs.sh
582     publishers:
583         - archive:
584             artifacts: 'build-root/test-doc/build/html/*'
585             allow-empty: 'true'
586             fingerprint: false
587             only-if-success: true
588             default-excludes: false
589         - fdio-infra-shiplogs:
590             maven-version: 'mvn33-new'
591
592 - job-template:
593     name: 'vpp-make-test-docs-merge-{stream}'
594
595     project-type: freestyle
596     node: ubuntu1604-basebuild-4c-4g
597     concurrent: true
598
599     logrotate:
600         daysToKeep: '{build-days-to-keep}'
601         numToKeep: '{build-num-to-keep}'
602         artifactDaysToKeep: '{build-artifact-days-to-keep}'
603         artifactNumToKeep: '{build-artifact-num-to-keep}'
604
605     parameters:
606         - project-parameter:
607             project: '{project}'
608         - gerrit-parameter:
609             branch: '{branch}'
610         - os-parameter:
611             os: 'ubuntu1604'
612         - maven-exec:
613             maven-version: 'mvn33-new'
614
615     scm:
616         - gerrit-trigger-scm:
617             credentials-id: 'jenkins-gerrit-credentials'
618             refspec: ''
619             choosing-strategy: 'default'
620
621     wrappers:
622         - fdio-infra-wrappers:
623             build-timeout: '{build-timeout}'
624
625     triggers:
626         - reverse:
627             jobs: 'vpp-merge-{stream}-ubuntu1404'
628             result: 'success'
629         - gerrit:
630             server-name: 'Primary'
631             trigger-on:
632                 - comment-added-contains-event:
633                     comment-contains-value: 'run-docs'
634             projects:
635               - project-compare-type: 'ANT'
636                 project-pattern: '{project}'
637                 branches:
638                   - branch-compare-type: 'ANT'
639                     branch-pattern: '**/{branch}'
640             skip-vote:
641                 successful: true
642                 failed: true
643                 unstable: true
644                 notbuilt: true
645
646     builders:
647         - maven-target:
648             maven-version: 'mvn33-new'
649             goals: '--version'
650             settings: 'vpp-settings'
651             settings-type: cfp
652             global-settings: 'global-settings'
653             global-settings-type: cfp
654         - provide-maven-settings:
655             settings-file: 'vpp-settings'
656             global-settings-file: 'global-settings'
657         - shell:
658             !include-raw-escape: include-raw-vpp-make-test-docs.sh
659     publishers:
660         - archive:
661             artifacts: 'build-root/test-doc/build/html/*'
662             allow-empty: 'true'
663             fingerprint: false
664             only-if-success: true
665             default-excludes: false
666         - fdio-infra-shiplogs:
667             maven-version: 'mvn33-new'