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