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