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