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