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