vpp.yaml revision a8af6e32
1---
2- project:
3    name: vpp
4    jobs:
5        - 'vpp-verify-{stream}-{os}'
6        - 'vpp-merge-{stream}-{os}'
7        - 'vpp-verify-os-{stream}-{os}'
8        - 'vpp-merge-os-{stream}-{os}'
9        - 'vpp-docs-merge-{stream}'
10        - 'vpp-docs-verify-{stream}'
11        - 'vpp-make-test-docs-merge-{stream}'
12        - 'vpp-make-test-docs-verify-{stream}'
13        - 'vpp-promote-{stream}-{os}'
14        - 'vpp-cpoc-verify-{stream}-{os}'
15
16    project: 'vpp'
17    os:
18      - ubuntu1604:
19          repo-os-part: 'ubuntu.xenial.main'
20      - centos7:
21          repo-os-part: 'centos7'
22      - opensuse:
23          repo-os-part: 'opensuse'
24
25    stream:
26        - master:
27            branch: 'master'
28            repo-stream-part: 'master'
29        - '1710':
30            branch: 'stable/1710'
31            repo-stream-part: 'stable.1710'
32        - '1801':
33            branch: 'stable/1801'
34            repo-stream-part: 'stable.1801'
35    type:
36        - short
37        - long
38
39- project:
40    name: vpp-misc
41    jobs:
42        - 'vpp-csit-verify-virl-{stream}'
43        - 'vpp-csit-verify-os-virl-{stream}'
44        - 'vpp-csit-verify-hw-perf-{stream}'
45    project: 'vpp'
46    stream:
47        - master:
48            branch: 'master'
49            repo-stream-part: 'master'
50        - '1710':
51            branch: 'stable/1710'
52            repo-stream-part: 'stable.1710'
53        - '1801':
54            branch: 'stable/1801'
55            repo-stream-part: 'stable.1801'
56    os: ubuntu1604
57
58
59- job-template:
60    name: 'vpp-verify-{stream}-{os}'
61
62    project-type: freestyle
63    node: '{os}-basebuild-8c-32g'
64    concurrent: true
65
66    logrotate:
67        daysToKeep: '{build-days-to-keep}'
68        numToKeep: '{build-num-to-keep}'
69        artifactDaysToKeep: '{build-artifact-days-to-keep}'
70        artifactNumToKeep: '{build-artifact-num-to-keep}'
71
72    parameters:
73        - project-parameter:
74            project: '{project}'
75        - gerrit-parameter:
76            branch: '{branch}'
77        - os-parameter:
78            os: '{os}'
79        - repo-name-parameter:
80            repo-name: '{repo-stream-part}.{repo-os-part}'
81
82    scm:
83        - gerrit-trigger-scm:
84            credentials-id: 'jenkins-gerrit-credentials'
85            refspec: '$GERRIT_REFSPEC'
86            choosing-strategy: 'gerrit'
87
88    wrappers:
89        - fdio-infra-wrappers:
90            build-timeout: '{build-timeout}'
91
92    triggers:
93        - gerrit-trigger-trivial-patch-submitted:
94            name: '{project}'
95            branch: '{branch}'
96
97    builders:
98        - shell:
99            !include-raw-escape: include-raw-vpp-checkstyle.sh
100        - shell:
101            !include-raw-escape: include-raw-vpp-test-checkstyle.sh
102        - shell:
103            !include-raw-escape:
104                - ../scripts/setup_vpp_ubuntu_docker_test.sh
105        - shell:
106            !include-raw-escape:
107                - ../scripts/setup_vpp_dpdk_dev_env.sh
108                - include-raw-vpp-build.sh
109    publishers:
110        - archive:
111            artifacts: 'build-root/*.rpm,build-root/*.deb,dpdk/*.rpm,dpdk/*.deb'
112            allow-empty: 'true'
113            fingerprint: false
114            only-if-success: true
115            default-excludes: false
116        - fdio-infra-shiplogs:
117            maven-version: 'mvn33-new'
118            archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
119
120- job-template:
121    name: 'vpp-verify-os-{stream}-{os}'
122
123    project-type: freestyle
124    node: '{os}-basebuild-8c-32g'
125    concurrent: true
126
127    logrotate:
128        daysToKeep: '{build-days-to-keep}'
129        numToKeep: '{build-num-to-keep}'
130        artifactDaysToKeep: '{build-artifact-days-to-keep}'
131        artifactNumToKeep: '{build-artifact-num-to-keep}'
132
133    parameters:
134        - project-parameter:
135            project: '{project}'
136        - gerrit-parameter:
137            branch: '{branch}'
138        - os-parameter:
139            os: '{os}'
140        - repo-name-parameter:
141            repo-name: '{repo-stream-part}.{repo-os-part}'
142
143    scm:
144        - gerrit-trigger-scm:
145            credentials-id: 'jenkins-gerrit-credentials'
146            refspec: '$GERRIT_REFSPEC'
147            choosing-strategy: 'gerrit'
148
149    wrappers:
150        - fdio-infra-wrappers:
151            build-timeout: '{build-timeout}'
152
153    triggers:
154        - gerrit-trigger-os-trivial-patch-submitted:
155            name: '{project}'
156            branch: '{branch}'
157
158    builders:
159        - shell:
160            !include-raw-escape: include-raw-vpp-checkstyle.sh
161        - shell:
162            !include-raw-escape: include-raw-vpp-test-checkstyle.sh
163        - shell:
164            !include-raw-escape:
165                - ../scripts/setup_vpp_ubuntu_docker_test.sh
166        - shell:
167            !include-raw-escape:
168                - ../scripts/setup_vpp_dpdk_dev_env.sh
169                - include-raw-vpp-build.sh
170    publishers:
171        - archive:
172            artifacts: 'build-root/*.rpm,build-root/*.deb,dpdk/*.rpm,dpdk/*.deb'
173            allow-empty: 'true'
174            fingerprint: false
175            only-if-success: true
176            default-excludes: false
177        - fdio-infra-shiplogs:
178            maven-version: 'mvn33-new'
179            archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
180
181- job-template:
182    name: 'vpp-merge-{stream}-{os}'
183
184    project-type: freestyle
185    node: '{os}-basebuild-8c-32g'
186
187    logrotate:
188        daysToKeep: '{build-days-to-keep}'
189        numToKeep: '{build-num-to-keep}'
190        artifactDaysToKeep: '{build-artifact-days-to-keep}'
191        artifactNumToKeep: '{build-artifact-num-to-keep}'
192
193    parameters:
194        - project-parameter:
195            project: '{project}'
196        - gerrit-parameter:
197            branch: '{branch}'
198        - os-parameter:
199            os: '{os}'
200        - maven-project-parameter:
201            maven: 'mvn33-new'
202        - maven-exec:
203            maven-version: 'mvn33-new'
204        - stream-parameter:
205            stream: '{stream}'
206        - repo-name-parameter:
207            repo-name: '{repo-stream-part}.{repo-os-part}'
208
209    scm:
210        - gerrit-trigger-scm:
211            credentials-id: 'jenkins-gerrit-credentials'
212            refspec: ''
213            choosing-strategy: 'default'
214
215    wrappers:
216        - fdio-infra-wrappers:
217            build-timeout: '{build-timeout}'
218
219    triggers:
220        - gerrit-trigger-patch-merged:
221            name: '{project}'
222            branch: '{branch}'
223
224    builders:
225        - config-file-provider:
226            files:
227              - file-id: '.packagecloud'
228                target: '/home/jenkins'
229        - config-file-provider:
230            files:
231              - file-id: 'packagecloud_api'
232                target: '/home/jenkins'
233        - maven-target:
234            maven-version: 'mvn33-new'
235            goals: '--version'
236            settings: 'vpp-settings'
237            settings-type: cfp
238            global-settings: 'global-settings'
239            global-settings-type: cfp
240        - shell:
241            !include-raw-escape: include-raw-vpp-checkstyle.sh
242        - shell:
243            !include-raw-escape:
244                - ../scripts/setup_vpp_ubuntu_docker_test.sh
245        - shell:
246            !include-raw-escape:
247                - ../scripts/setup_vpp_dpdk_dev_env.sh
248                - include-raw-vpp-build.sh
249        - provide-maven-settings:
250            settings-file: 'vpp-settings'
251            global-settings-file: 'global-settings'
252        - shell:
253            !include-raw-escape:
254                - ../scripts/maven_push_functions.sh
255                - include-raw-vpp-maven-push.sh
256        - shell:
257            !include-raw-escape:
258                - ../scripts/packagecloud_push.sh
259
260    publishers:
261        - archive:
262            artifacts: 'build-root/*.rpm,build-root/*.deb,dpdk/*.rpm,dpdk/*.deb'
263            allow-empty: 'true'
264            fingerprint: false
265            only-if-success: true
266            default-excludes: false
267        - fdio-infra-shiplogs:
268            maven-version: 'mvn33-new'
269
270- job-template:
271    name: 'vpp-merge-os-{stream}-{os}'
272
273    project-type: freestyle
274    node: '{os}-basebuild-8c-32g'
275
276    logrotate:
277        daysToKeep: '{build-days-to-keep}'
278        numToKeep: '{build-num-to-keep}'
279        artifactDaysToKeep: '{build-artifact-days-to-keep}'
280        artifactNumToKeep: '{build-artifact-num-to-keep}'
281
282    parameters:
283        - project-parameter:
284            project: '{project}'
285        - gerrit-parameter:
286            branch: '{branch}'
287        - os-parameter:
288            os: '{os}'
289        - maven-project-parameter:
290            maven: 'mvn33-new'
291        - maven-exec:
292            maven-version: 'mvn33-new'
293        - stream-parameter:
294            stream: '{stream}'
295        - repo-name-parameter:
296            repo-name: '{repo-stream-part}.{repo-os-part}'
297
298    scm:
299        - gerrit-trigger-scm:
300            credentials-id: 'jenkins-gerrit-credentials'
301            refspec: ''
302            choosing-strategy: 'default'
303
304    wrappers:
305        - fdio-infra-wrappers:
306            build-timeout: '{build-timeout}'
307
308    triggers:
309        - gerrit-trigger-os-patch-merged:
310            name: '{project}'
311            branch: '{branch}'
312
313    builders:
314        - config-file-provider:
315            files:
316              - file-id: '.packagecloud'
317                target: '/home/jenkins'
318        - config-file-provider:
319            files:
320              - file-id: 'packagecloud_api'
321                target: '/home/jenkins'
322        - maven-target:
323            maven-version: 'mvn33-new'
324            goals: '--version'
325            settings: 'vpp-settings'
326            settings-type: cfp
327            global-settings: 'global-settings'
328            global-settings-type: cfp
329        - shell:
330            !include-raw-escape: include-raw-vpp-checkstyle.sh
331        - shell:
332            !include-raw-escape:
333                - ../scripts/setup_vpp_ubuntu_docker_test.sh
334        - shell:
335            !include-raw-escape:
336                - ../scripts/setup_vpp_dpdk_dev_env.sh
337                - include-raw-vpp-build.sh
338        - provide-maven-settings:
339            settings-file: 'vpp-settings'
340            global-settings-file: 'global-settings'
341        - shell:
342            !include-raw-escape:
343                - ../scripts/maven_push_functions.sh
344                - include-raw-vpp-maven-push.sh
345        - shell:
346            !include-raw-escape:
347                - ../scripts/packagecloud_push.sh
348
349    publishers:
350        - archive:
351            artifacts: 'build-root/*.rpm,build-root/*.deb,dpdk/*.rpm,dpdk/*.deb'
352            allow-empty: 'true'
353            fingerprint: false
354            only-if-success: true
355            default-excludes: false
356        - fdio-infra-shiplogs:
357            maven-version: 'mvn33-new'
358
359- job-template:
360    name: 'vpp-csit-verify-virl-{stream}'
361
362    project-type: freestyle
363    node: '{os}-basebuild-8c-32g'
364    concurrent: true
365
366    logrotate:
367        daysToKeep: '{build-days-to-keep}'
368        numToKeep: '{build-num-to-keep}'
369        artifactDaysToKeep: '{build-artifact-days-to-keep}'
370        artifactNumToKeep: '{build-artifact-num-to-keep}'
371
372    parameters:
373        - project-parameter:
374            project: '{project}'
375        - gerrit-parameter:
376            branch: '{branch}'
377        - os-parameter:
378            os: '{os}'
379        - repo-name-parameter:
380            repo-name: '{repo-stream-part}.ubuntu.xenial.main'
381        - is-csit-vpp-job-parameter:
382            is-csit-vpp-job: 'True'
383        - string:
384            name: CSIT_REF
385            description: "Also testing CSIT_REF"
386
387    scm:
388        - gerrit-trigger-scm:
389            credentials-id: 'jenkins-gerrit-credentials'
390            refspec: '$GERRIT_REFSPEC'
391            choosing-strategy: 'gerrit'
392
393    wrappers:
394        - fdio-infra-wrappers:
395            build-timeout: '{build-timeout}'
396
397    triggers:
398        - gerrit-trigger-trivial-patch-submitted:
399            name: '{project}'
400            branch: '{branch}'
401
402    builders:
403        - shell: 'echo "VPP_BRANCH={branch}" > $WORKSPACE/variables.prop'
404        - inject:
405            properties-file: variables.prop
406        - shell:
407            !include-raw-escape:
408                - include-raw-vpp-checkstyle.sh
409        - shell:
410            !include-raw-escape:
411                - ../scripts/setup_vpp_ubuntu_docker_test.sh
412                - ../scripts/setup_vpp_dpdk_dev_env.sh
413                - include-raw-vpp-build.sh
414        - shell:
415            !include-raw-escape:
416                - include-raw-vpp-csit-functional.sh
417
418    publishers:
419        - archive-artifacts:
420            artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
421            latest-only: false
422
423        - robot-report:
424            output-path: 'csit'
425
426        - fdio-infra-shiplogs:
427            maven-version: 'mvn33-new'
428
429- job-template:
430    name: 'vpp-csit-verify-os-virl-{stream}'
431
432    project-type: freestyle
433    node: '{os}-basebuild-8c-32g'
434    concurrent: true
435
436    logrotate:
437        daysToKeep: '{build-days-to-keep}'
438        numToKeep: '{build-num-to-keep}'
439        artifactDaysToKeep: '{build-artifact-days-to-keep}'
440        artifactNumToKeep: '{build-artifact-num-to-keep}'
441
442    parameters:
443        - project-parameter:
444            project: '{project}'
445        - gerrit-parameter:
446            branch: '{branch}'
447        - os-parameter:
448            os: '{os}'
449        - repo-name-parameter:
450            repo-name: '{repo-stream-part}.ubuntu.xenial.main'
451        - is-csit-vpp-job-parameter:
452            is-csit-vpp-job: 'True'
453        - string:
454            name: CSIT_REF
455            description: "Also testing CSIT_REF"
456
457    scm:
458        - gerrit-trigger-scm:
459            credentials-id: 'jenkins-gerrit-credentials'
460            refspec: '$GERRIT_REFSPEC'
461            choosing-strategy: 'gerrit'
462
463    wrappers:
464        - fdio-infra-wrappers:
465            build-timeout: '{build-timeout}'
466
467    triggers:
468        - gerrit-trigger-os-trivial-patch-submitted:
469            name: '{project}'
470            branch: '{branch}'
471
472    builders:
473        - shell: 'echo "VPP_BRANCH={branch}" > $WORKSPACE/variables.prop'
474        - inject:
475            properties-file: variables.prop
476        - shell:
477            !include-raw-escape:
478                - include-raw-vpp-checkstyle.sh
479        - shell:
480            !include-raw-escape:
481                - ../scripts/setup_vpp_ubuntu_docker_test.sh
482                - ../scripts/setup_vpp_dpdk_dev_env.sh
483                - include-raw-vpp-build.sh
484        - shell:
485            !include-raw-escape:
486                - include-raw-vpp-csit-functional.sh
487
488    publishers:
489        - archive-artifacts:
490            artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
491            latest-only: false
492
493        - robot-report:
494            output-path: 'csit'
495
496        - fdio-infra-shiplogs:
497            maven-version: 'mvn33-new'
498
499- job-template:
500    name: 'vpp-csit-verify-hw-perf-{stream}'
501
502    project-type: freestyle
503    node: '{os}-basebuild-8c-32g'
504    concurrent: false
505
506    logrotate:
507        daysToKeep: '{build-days-to-keep}'
508        numToKeep: '{build-num-to-keep}'
509        artifactDaysToKeep: '{build-artifact-days-to-keep}'
510        artifactNumToKeep: '{build-artifact-num-to-keep}'
511
512    parameters:
513        - project-parameter:
514            project: '{project}'
515        - gerrit-parameter:
516            branch: '{branch}'
517        - os-parameter:
518            os: '{os}'
519        - repo-name-parameter:
520            repo-name: '{repo-stream-part}.ubuntu.xenial.main'
521        - is-csit-vpp-job-parameter:
522            is-csit-vpp-job: 'True'
523
524    scm:
525        - gerrit-trigger-scm:
526            credentials-id: 'jenkins-gerrit-credentials'
527            refspec: '$GERRIT_REFSPEC'
528            choosing-strategy: 'gerrit'
529
530    wrappers:
531        - fdio-infra-wrappers-non-activity-timeout:
532            build-timeout: 30
533
534    triggers:
535        - gerrit:
536            server-name: 'Primary'
537            trigger-on:
538                - comment-added-contains-event:
539                    comment-contains-value: 'vpp-verify-perf-l2'
540                - comment-added-contains-event:
541                    comment-contains-value: 'vpp-verify-perf-ip4'
542                - comment-added-contains-event:
543                    comment-contains-value: 'vpp-verify-perf-ip6'
544                - comment-added-contains-event:
545                    comment-contains-value: 'vpp-verify-perf-lisp'
546                - comment-added-contains-event:
547                    comment-contains-value: 'vpp-verify-perf-vxlan'
548                - comment-added-contains-event:
549                    comment-contains-value: 'vpp-verify-perf-vhost'
550                - comment-added-contains-event:
551                    comment-contains-value: 'vpp-verify-perf-acl'
552                - comment-added-contains-event:
553                    comment-contains-value: 'vpp-verify-perf-memif'
554                - comment-added-contains-event:
555                    comment-contains-value: 'vpp-verify-perf-ipsechw'
556            projects:
557              - project-compare-type: 'ANT'
558                project-pattern: '{project}'
559                branches:
560                  - branch-compare-type: 'ANT'
561                    branch-pattern: '**/{branch}'
562            skip-vote:
563                successful: false
564                failed: false
565                unstable: false
566                notbuilt: false
567
568    builders:
569        - shell: 'echo "VPP_BRANCH={branch}" > $WORKSPACE/variables.prop'
570        - inject:
571            properties-file: variables.prop
572        - shell:
573            !include-raw-escape:
574                - ../scripts/setup_vpp_dpdk_dev_env.sh
575                - include-raw-vpp-build.sh
576        - shell:
577            !include-raw-escape:
578                - include-raw-vpp-csit-verify-perf.sh
579
580    publishers:
581        - archive-artifacts:
582            artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
583            latest-only: false
584
585        - robot-report:
586            output-path: 'csit'
587
588        - fdio-infra-shiplogs:
589            maven-version: 'mvn33-new'
590
591- parameter:
592    name: type-parameter
593
594    parameters:
595        - string:
596            name: TYPE
597            default: '{type}'
598            description: "TYPE parameter if not given by trigger"
599
600- job-template:
601    name: 'vpp-docs-verify-{stream}'
602
603    project-type: freestyle
604    node: ubuntu1604-basebuild-8c-32g
605    concurrent: true
606
607    logrotate:
608        daysToKeep: '{build-days-to-keep}'
609        numToKeep: '{build-num-to-keep}'
610        artifactDaysToKeep: '{build-artifact-days-to-keep}'
611        artifactNumToKeep: '{build-artifact-num-to-keep}'
612
613    parameters:
614        - project-parameter:
615            project: '{project}'
616        - gerrit-parameter:
617            branch: '{branch}'
618        - os-parameter:
619            os: 'ubuntu1604'
620        - maven-exec:
621            maven-version: 'mvn33-new'
622
623    scm:
624        - gerrit-trigger-scm:
625            credentials-id: 'jenkins-gerrit-credentials'
626            refspec: '$GERRIT_REFSPEC'
627            choosing-strategy: 'gerrit'
628
629    wrappers:
630        - fdio-infra-wrappers:
631            build-timeout: '{build-timeout}'
632
633    triggers:
634        - gerrit-trigger-trivial-patch-submitted:
635            name: '{project}'
636            branch: '{branch}'
637
638    builders:
639        - maven-target:
640            maven-version: 'mvn33-new'
641            goals: '--version'
642            settings: 'vpp-settings'
643            settings-type: cfp
644            global-settings: 'global-settings'
645            global-settings-type: cfp
646        - provide-maven-settings:
647            settings-file: 'vpp-settings'
648            global-settings-file: 'global-settings'
649        - shell:
650            !include-raw-escape: include-raw-vpp-docs.sh
651    publishers:
652        - archive:
653            artifacts: 'build-root/docs/html/*'
654            allow-empty: 'true'
655            fingerprint: false
656            only-if-success: true
657            default-excludes: false
658        - fdio-infra-shiplogs:
659            maven-version: 'mvn33-new'
660
661- job-template:
662    name: 'vpp-docs-merge-{stream}'
663
664    project-type: freestyle
665    node: ubuntu1604-basebuild-8c-32g
666    concurrent: true
667
668    logrotate:
669        daysToKeep: '{build-days-to-keep}'
670        numToKeep: '{build-num-to-keep}'
671        artifactDaysToKeep: '{build-artifact-days-to-keep}'
672        artifactNumToKeep: '{build-artifact-num-to-keep}'
673
674    parameters:
675        - project-parameter:
676            project: '{project}'
677        - gerrit-parameter:
678            branch: '{branch}'
679        - os-parameter:
680            os: 'ubuntu1604'
681        - maven-exec:
682            maven-version: 'mvn33-new'
683
684    scm:
685        - gerrit-trigger-scm:
686            credentials-id: 'jenkins-gerrit-credentials'
687            refspec: ''
688            choosing-strategy: 'default'
689
690    wrappers:
691        - fdio-infra-wrappers:
692            build-timeout: '{build-timeout}'
693
694    triggers:
695        - reverse:
696            jobs: 'vpp-merge-{stream}-ubuntu1604'
697            result: 'success'
698        - gerrit:
699            server-name: 'Primary'
700            trigger-on:
701                - comment-added-contains-event:
702                    comment-contains-value: 'run-docs'
703            projects:
704              - project-compare-type: 'ANT'
705                project-pattern: '{project}'
706                branches:
707                  - branch-compare-type: 'ANT'
708                    branch-pattern: '**/{branch}'
709            skip-vote:
710                successful: true
711                failed: true
712                unstable: true
713                notbuilt: true
714
715    builders:
716        - maven-target:
717            maven-version: 'mvn33-new'
718            goals: '--version'
719            settings: 'vpp-settings'
720            settings-type: cfp
721            global-settings: 'global-settings'
722            global-settings-type: cfp
723        - provide-maven-settings:
724            settings-file: 'vpp-settings'
725            global-settings-file: 'global-settings'
726        - shell:
727            !include-raw-escape: include-raw-vpp-docs.sh
728    publishers:
729        - archive:
730            artifacts: 'build-root/docs/html/*'
731            allow-empty: 'true'
732            fingerprint: false
733            only-if-success: true
734            default-excludes: false
735        - fdio-infra-shiplogs:
736            maven-version: 'mvn33-new'
737
738- job-template:
739    name: 'vpp-make-test-docs-verify-{stream}'
740
741    project-type: freestyle
742    node: ubuntu1604-basebuild-8c-32g
743    concurrent: true
744
745    logrotate:
746        daysToKeep: '{build-days-to-keep}'
747        numToKeep: '{build-num-to-keep}'
748        artifactDaysToKeep: '{build-artifact-days-to-keep}'
749        artifactNumToKeep: '{build-artifact-num-to-keep}'
750
751    parameters:
752        - project-parameter:
753            project: '{project}'
754        - gerrit-parameter:
755            branch: '{branch}'
756        - os-parameter:
757            os: 'ubuntu1604'
758        - maven-exec:
759            maven-version: 'mvn33-new'
760
761    scm:
762        - gerrit-trigger-scm:
763            credentials-id: 'jenkins-gerrit-credentials'
764            refspec: '$GERRIT_REFSPEC'
765            choosing-strategy: 'gerrit'
766
767    wrappers:
768        - fdio-infra-wrappers:
769            build-timeout: '{build-timeout}'
770
771    triggers:
772        - gerrit-trigger-trivial-patch-submitted:
773            name: '{project}'
774            branch: '{branch}'
775
776    builders:
777        - maven-target:
778            maven-version: 'mvn33-new'
779            goals: '--version'
780            settings: 'vpp-settings'
781            settings-type: cfp
782            global-settings: 'global-settings'
783            global-settings-type: cfp
784        - provide-maven-settings:
785            settings-file: 'vpp-settings'
786            global-settings-file: 'global-settings'
787        - shell:
788            !include-raw-escape: include-raw-vpp-make-test-docs.sh
789    publishers:
790        - archive:
791            artifacts: 'build-root/test-doc/build/html/*'
792            allow-empty: 'true'
793            fingerprint: false
794            only-if-success: true
795            default-excludes: false
796        - fdio-infra-shiplogs:
797            maven-version: 'mvn33-new'
798
799- job-template:
800    name: 'vpp-make-test-docs-merge-{stream}'
801
802    project-type: freestyle
803    node: ubuntu1604-basebuild-8c-32g
804    concurrent: true
805
806    logrotate:
807        daysToKeep: '{build-days-to-keep}'
808        numToKeep: '{build-num-to-keep}'
809        artifactDaysToKeep: '{build-artifact-days-to-keep}'
810        artifactNumToKeep: '{build-artifact-num-to-keep}'
811
812    parameters:
813        - project-parameter:
814            project: '{project}'
815        - gerrit-parameter:
816            branch: '{branch}'
817        - os-parameter:
818            os: 'ubuntu1604'
819        - maven-exec:
820            maven-version: 'mvn33-new'
821
822    scm:
823        - gerrit-trigger-scm:
824            credentials-id: 'jenkins-gerrit-credentials'
825            refspec: ''
826            choosing-strategy: 'default'
827
828    wrappers:
829        - fdio-infra-wrappers:
830            build-timeout: '{build-timeout}'
831
832    triggers:
833        - reverse:
834            jobs: 'vpp-merge-{stream}-ubuntu1604'
835            result: 'success'
836        - gerrit:
837            server-name: 'Primary'
838            trigger-on:
839                - comment-added-contains-event:
840                    comment-contains-value: 'run-docs'
841            projects:
842              - project-compare-type: 'ANT'
843                project-pattern: '{project}'
844                branches:
845                  - branch-compare-type: 'ANT'
846                    branch-pattern: '**/{branch}'
847            skip-vote:
848                successful: true
849                failed: true
850                unstable: true
851                notbuilt: true
852
853    builders:
854        - maven-target:
855            maven-version: 'mvn33-new'
856            goals: '--version'
857            settings: 'vpp-settings'
858            settings-type: cfp
859            global-settings: 'global-settings'
860            global-settings-type: cfp
861        - provide-maven-settings:
862            settings-file: 'vpp-settings'
863            global-settings-file: 'global-settings'
864        - shell:
865            !include-raw-escape: include-raw-vpp-make-test-docs.sh
866    publishers:
867        - archive:
868            artifacts: 'build-root/test-doc/build/html/*'
869            allow-empty: 'true'
870            fingerprint: false
871            only-if-success: true
872            default-excludes: false
873        - fdio-infra-shiplogs:
874            maven-version: 'mvn33-new'
875
876- job-template:
877    name: 'vpp-promote-{stream}-{os}'
878
879    project-type: freestyle
880    node: '{os}-basebuild-8c-32g'
881
882    logrotate:
883      daysToKeep: '{build-days-to-keep}'
884      numToKeep: '{build-num-to-keep}'
885      artifactDaysToKeep: '{build-artifact-days-to-keep}'
886      artifactNumToKeep: '{build-artifact-num-to-keep}'
887
888    parameters:
889      - project-parameter:
890          project: '{project}'
891      - gerrit-parameter:
892          branch: '{branch}'
893      - os-parameter:
894          os: '{os}'
895      - stream-parameter:
896          stream: '{stream}'
897      - repo-name-parameter:
898          repo-name: '{repo-stream-part}.{repo-os-part}'
899
900    scm:
901      - gerrit-trigger-scm:
902          credentials-id: 'jenkins-gerrit-credentials'
903          refspec: '$GERRIT_REFSPEC'
904          choosing-strategy: 'gerrit'
905
906    wrappers:
907      - fdio-infra-wrappers:
908          build-timeout: '{build-timeout}'
909
910    triggers:
911      - gerrit-trigger-manually-triggered:
912          name: '{project}'
913          branch: '{branch}'
914          comment-trigger-value: 'test-pkgcloud'
915
916    builders:
917      - config-file-provider:
918          files:
919            - file-id: '.packagecloud'
920              target: '/home/jenkins'
921      - config-file-provider:
922          files:
923            - file-id: 'packagecloud_api'
924              target: '/home/jenkins'
925      - shell:
926          !include-raw-escape: include-raw-vpp-checkstyle.sh
927      - shell:
928          !include-raw-escape: include-raw-vpp-test-checkstyle.sh
929      - shell:
930          !include-raw-escape:
931          - ../scripts/setup_vpp_ubuntu_docker_test.sh
932      - shell:
933          !include-raw-escape:
934          - ../scripts/setup_vpp_dpdk_dev_env.sh
935          - include-raw-vpp-build.sh
936      - shell:
937          !include-raw-escape:
938          - ../scripts/packagecloud_promote.sh
939
940    publishers:
941      - fdio-infra-shiplogs:
942          maven-version: 'mvn33-new'
943
944- job-template:
945    name: 'vpp-cpoc-verify-{stream}-{os}'
946
947    project-type: freestyle
948    node: '{os}-s'
949    concurrent: true
950
951    logrotate:
952        daysToKeep: '{build-days-to-keep}'
953        numToKeep: '{build-num-to-keep}'
954        artifactDaysToKeep: '{build-artifact-days-to-keep}'
955        artifactNumToKeep: '{build-artifact-num-to-keep}'
956
957    parameters:
958        - project-parameter:
959            project: '{project}'
960        - gerrit-parameter:
961            branch: '{branch}'
962        - os-parameter:
963            os: '{os}'
964        - repo-name-parameter:
965            repo-name: '{repo-stream-part}.{repo-os-part}'
966
967    scm:
968        - gerrit-trigger-scm:
969            credentials-id: 'jenkins-gerrit-credentials'
970            refspec: '$GERRIT_REFSPEC'
971            choosing-strategy: 'gerrit'
972
973    wrappers:
974        - fdio-infra-wrappers:
975            build-timeout: '{build-timeout}'
976
977    triggers:
978        - gerrit-trigger-manually-triggered:
979            name: '{project}'
980            branch: '{branch}'
981            comment-trigger-value: 'test-cpoc'
982        - gerrit-trigger-trivial-patch-submitted-skip-vote:
983            name: '{project}'
984            branch: '{branch}'
985
986    builders:
987        - shell:
988            !include-raw-escape: include-raw-vpp-checkstyle.sh
989        - shell:
990            !include-raw-escape: include-raw-vpp-test-checkstyle.sh
991        - shell:
992            !include-raw-escape:
993                - ../scripts/setup_vpp_ubuntu_docker_test.sh
994                - ../scripts/setup_vpp_dpdk_dev_env.sh
995                - include-raw-vpp-build.sh
996    publishers:
997        - archive:
998            artifacts: 'build-root/*.rpm,build-root/*.deb,dpdk/*.rpm,dpdk/*.deb'
999            allow-empty: 'true'
1000            fingerprint: false
1001            only-if-success: true
1002            default-excludes: false
1003        - fdio-infra-shiplogs:
1004            maven-version: 'mvn33-new'
1005            archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
1006        - naginator:
1007            rerun-unstable-builds: true
1008            max-failed-builds: 1
1009            fixed-delay: 10
1010
1011
1012