Merge "CSIT-742: Add manual trigger for ACL perf tests"
[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                 - comment-added-contains-event:
393                     comment-contains-value: 'vpp-verify-perf-acl'
394             projects:
395               - project-compare-type: 'ANT'
396                 project-pattern: '{project}'
397                 branches:
398                   - branch-compare-type: 'ANT'
399                     branch-pattern: '**/{branch}'
400             skip-vote:
401                 successful: false
402                 failed: false
403                 unstable: false
404                 notbuilt: false
405
406     builders:
407         - shell:
408             !include-raw-escape:
409                 - ../scripts/setup_vpp_dpdk_dev_env.sh
410                 - include-raw-vpp-build.sh
411         - shell:
412             !include-raw-escape:
413                 - include-raw-vpp-csit-verify-perf.sh
414
415     publishers:
416         - archive-artifacts:
417             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
418             latest-only: false
419
420         - robot-report:
421             output-path: 'csit'
422
423         - fdio-infra-shiplogs:
424             maven-version: 'mvn33-new'
425
426 - parameter:
427     name: type-parameter
428
429     parameters:
430         - string:
431             name: TYPE
432             default: '{type}'
433             description: "TYPE parameter if not given by trigger"
434
435 - job-template:
436     name: 'vpp-docs-verify-{stream}'
437
438     project-type: freestyle
439     node: ubuntu1604-basebuild-4c-4g
440     concurrent: true
441
442     logrotate:
443         daysToKeep: '{build-days-to-keep}'
444         numToKeep: '{build-num-to-keep}'
445         artifactDaysToKeep: '{build-artifact-days-to-keep}'
446         artifactNumToKeep: '{build-artifact-num-to-keep}'
447
448     parameters:
449         - project-parameter:
450             project: '{project}'
451         - gerrit-parameter:
452             branch: '{branch}'
453         - os-parameter:
454             os: 'ubuntu1604'
455         - maven-exec:
456             maven-version: 'mvn33-new'
457
458     scm:
459         - gerrit-trigger-scm:
460             credentials-id: 'jenkins-gerrit-credentials'
461             refspec: '$GERRIT_REFSPEC'
462             choosing-strategy: 'gerrit'
463
464     wrappers:
465         - fdio-infra-wrappers:
466             build-timeout: '{build-timeout}'
467
468     triggers:
469         - gerrit-trigger-patch-submitted:
470             name: '{project}'
471             branch: '{branch}'
472
473     builders:
474         - maven-target:
475             maven-version: 'mvn33-new'
476             goals: '--version'
477             settings: 'vpp-settings'
478             settings-type: cfp
479             global-settings: 'global-settings'
480             global-settings-type: cfp
481         - provide-maven-settings:
482             settings-file: 'vpp-settings'
483             global-settings-file: 'global-settings'
484         - shell:
485             !include-raw-escape: include-raw-vpp-docs.sh
486     publishers:
487         - archive:
488             artifacts: 'build-root/docs/html/*'
489             allow-empty: 'true'
490             fingerprint: false
491             only-if-success: true
492             default-excludes: false
493         - fdio-infra-shiplogs:
494             maven-version: 'mvn33-new'
495
496 - job-template:
497     name: 'vpp-docs-merge-{stream}'
498
499     project-type: freestyle
500     node: ubuntu1604-basebuild-4c-4g
501     concurrent: true
502
503     logrotate:
504         daysToKeep: '{build-days-to-keep}'
505         numToKeep: '{build-num-to-keep}'
506         artifactDaysToKeep: '{build-artifact-days-to-keep}'
507         artifactNumToKeep: '{build-artifact-num-to-keep}'
508
509     parameters:
510         - project-parameter:
511             project: '{project}'
512         - gerrit-parameter:
513             branch: '{branch}'
514         - os-parameter:
515             os: 'ubuntu1604'
516         - maven-exec:
517             maven-version: 'mvn33-new'
518
519     scm:
520         - gerrit-trigger-scm:
521             credentials-id: 'jenkins-gerrit-credentials'
522             refspec: ''
523             choosing-strategy: 'default'
524
525     wrappers:
526         - fdio-infra-wrappers:
527             build-timeout: '{build-timeout}'
528
529     triggers:
530         - reverse:
531             jobs: 'vpp-merge-{stream}-ubuntu1604'
532             result: 'success'
533         - gerrit:
534             server-name: 'Primary'
535             trigger-on:
536                 - comment-added-contains-event:
537                     comment-contains-value: 'run-docs'
538             projects:
539               - project-compare-type: 'ANT'
540                 project-pattern: '{project}'
541                 branches:
542                   - branch-compare-type: 'ANT'
543                     branch-pattern: '**/{branch}'
544             skip-vote:
545                 successful: true
546                 failed: true
547                 unstable: true
548                 notbuilt: true
549
550     builders:
551         - maven-target:
552             maven-version: 'mvn33-new'
553             goals: '--version'
554             settings: 'vpp-settings'
555             settings-type: cfp
556             global-settings: 'global-settings'
557             global-settings-type: cfp
558         - provide-maven-settings:
559             settings-file: 'vpp-settings'
560             global-settings-file: 'global-settings'
561         - shell:
562             !include-raw-escape: include-raw-vpp-docs.sh
563     publishers:
564         - archive:
565             artifacts: 'build-root/docs/html/*'
566             allow-empty: 'true'
567             fingerprint: false
568             only-if-success: true
569             default-excludes: false
570         - fdio-infra-shiplogs:
571             maven-version: 'mvn33-new'
572
573 - job-template:
574     name: 'vpp-make-test-docs-verify-{stream}'
575
576     project-type: freestyle
577     node: ubuntu1604-basebuild-4c-4g
578     concurrent: true
579
580     logrotate:
581         daysToKeep: '{build-days-to-keep}'
582         numToKeep: '{build-num-to-keep}'
583         artifactDaysToKeep: '{build-artifact-days-to-keep}'
584         artifactNumToKeep: '{build-artifact-num-to-keep}'
585
586     parameters:
587         - project-parameter:
588             project: '{project}'
589         - gerrit-parameter:
590             branch: '{branch}'
591         - os-parameter:
592             os: 'ubuntu1604'
593         - maven-exec:
594             maven-version: 'mvn33-new'
595
596     scm:
597         - gerrit-trigger-scm:
598             credentials-id: 'jenkins-gerrit-credentials'
599             refspec: '$GERRIT_REFSPEC'
600             choosing-strategy: 'gerrit'
601
602     wrappers:
603         - fdio-infra-wrappers:
604             build-timeout: '{build-timeout}'
605
606     triggers:
607         - gerrit-trigger-patch-submitted:
608             name: '{project}'
609             branch: '{branch}'
610
611     builders:
612         - maven-target:
613             maven-version: 'mvn33-new'
614             goals: '--version'
615             settings: 'vpp-settings'
616             settings-type: cfp
617             global-settings: 'global-settings'
618             global-settings-type: cfp
619         - provide-maven-settings:
620             settings-file: 'vpp-settings'
621             global-settings-file: 'global-settings'
622         - shell:
623             !include-raw-escape: include-raw-vpp-make-test-docs.sh
624     publishers:
625         - archive:
626             artifacts: 'build-root/test-doc/build/html/*'
627             allow-empty: 'true'
628             fingerprint: false
629             only-if-success: true
630             default-excludes: false
631         - fdio-infra-shiplogs:
632             maven-version: 'mvn33-new'
633
634 - job-template:
635     name: 'vpp-make-test-docs-merge-{stream}'
636
637     project-type: freestyle
638     node: ubuntu1604-basebuild-4c-4g
639     concurrent: true
640
641     logrotate:
642         daysToKeep: '{build-days-to-keep}'
643         numToKeep: '{build-num-to-keep}'
644         artifactDaysToKeep: '{build-artifact-days-to-keep}'
645         artifactNumToKeep: '{build-artifact-num-to-keep}'
646
647     parameters:
648         - project-parameter:
649             project: '{project}'
650         - gerrit-parameter:
651             branch: '{branch}'
652         - os-parameter:
653             os: 'ubuntu1604'
654         - maven-exec:
655             maven-version: 'mvn33-new'
656
657     scm:
658         - gerrit-trigger-scm:
659             credentials-id: 'jenkins-gerrit-credentials'
660             refspec: ''
661             choosing-strategy: 'default'
662
663     wrappers:
664         - fdio-infra-wrappers:
665             build-timeout: '{build-timeout}'
666
667     triggers:
668         - reverse:
669             jobs: 'vpp-merge-{stream}-ubuntu1604'
670             result: 'success'
671         - gerrit:
672             server-name: 'Primary'
673             trigger-on:
674                 - comment-added-contains-event:
675                     comment-contains-value: 'run-docs'
676             projects:
677               - project-compare-type: 'ANT'
678                 project-pattern: '{project}'
679                 branches:
680                   - branch-compare-type: 'ANT'
681                     branch-pattern: '**/{branch}'
682             skip-vote:
683                 successful: true
684                 failed: true
685                 unstable: true
686                 notbuilt: true
687
688     builders:
689         - maven-target:
690             maven-version: 'mvn33-new'
691             goals: '--version'
692             settings: 'vpp-settings'
693             settings-type: cfp
694             global-settings: 'global-settings'
695             global-settings-type: cfp
696         - provide-maven-settings:
697             settings-file: 'vpp-settings'
698             global-settings-file: 'global-settings'
699         - shell:
700             !include-raw-escape: include-raw-vpp-make-test-docs.sh
701     publishers:
702         - archive:
703             artifacts: 'build-root/test-doc/build/html/*'
704             allow-empty: 'true'
705             fingerprint: false
706             only-if-success: true
707             default-excludes: false
708         - fdio-infra-shiplogs:
709             maven-version: 'mvn33-new'
710
711 - job-template:
712     name: 'vpp-test-packagecloud-{stream}-{os}'
713
714     project-type: freestyle
715     node: '{os}-basebuild-4c-4g'
716     concurrent: true
717
718     logrotate:
719         daysToKeep: '{build-days-to-keep}'
720         numToKeep: '{build-num-to-keep}'
721         artifactDaysToKeep: '{build-artifact-days-to-keep}'
722         artifactNumToKeep: '{build-artifact-num-to-keep}'
723
724     parameters:
725         - project-parameter:
726             project: '{project}'
727         - gerrit-parameter:
728             branch: '{branch}'
729         - os-parameter:
730             os: '{os}'
731         - stream-parameter:
732             stream: '{stream}'
733         - repo-name-parameter:
734             repo-name: '{repo-stream-part}.{repo-os-part}'
735
736     scm:
737         - gerrit-trigger-scm:
738             credentials-id: 'jenkins-gerrit-credentials'
739             refspec: '$GERRIT_REFSPEC'
740             choosing-strategy: 'gerrit'
741
742     wrappers:
743         - fdio-infra-wrappers:
744             build-timeout: '{build-timeout}'
745
746     triggers:
747         - gerrit-trigger-manually-triggered:
748             name: '{project}'
749             branch: '{branch}'
750             comment-trigger-value: 'test-pkgcloud'
751
752
753     builders:
754         - config-file-provider:
755             files:
756               - file-id: '.packagecloud'
757                 target: '/home/jenkins'
758                 #variable: 'SETTINGS_FILE'
759         - shell:
760             !include-raw-escape: include-raw-vpp-checkstyle.sh
761         - shell:
762             !include-raw-escape: include-raw-vpp-test-checkstyle.sh
763         - shell:
764             !include-raw-escape:
765                 - ../scripts/setup_vpp_dpdk_dev_env.sh
766                 - include-raw-vpp-build.sh
767         - shell:
768             !include-raw-escape:
769                 - ../scripts/packagecloud_push.sh
770
771     publishers:
772         - archive:
773             artifacts: 'build-root/*.rpm,build-root/*.deb,dpdk/*.rpm,dpdk/*.deb'
774             allow-empty: 'true'
775             fingerprint: false
776             only-if-success: true
777             default-excludes: false
778         - fdio-infra-shiplogs:
779             maven-version: 'mvn33-new'