Merge "Configure honeycomb Jenkins view"
[ci-management.git] / jjb / nsh_sfc / nsh_sfc.yaml
1 ---
2 - project:
3     name: nsh_sfc
4     jobs:
5       - 'nsh_sfc-verify-{stream}-{os}'
6       - 'nsh_sfc-merge-{stream}-{os}'
7       - 'nsh_sfc-integration-{stream}-{os}'
8       - 'nsh_sfc-verify-image-{stream}-{os}'
9       - 'nsh_sfc-verify-docs-{stream}'
10       - 'nsh_sfc-merge-docs-{stream}'
11
12     project: 'nsh_sfc'
13     os:
14       - ubuntu1604:
15           repo-os-part: 'ubuntu.xenial.main'
16       - centos7:
17           repo-os-part: 'centos7'
18     stream:
19       - master:
20           branch: 'master'
21           repo-stream-part: 'master'
22       - '1609':
23           branch: 'stable/1609'
24           repo-stream-part: 'stable.1609'
25       - '1701':
26           branch: 'stable/1701'
27           repo-stream-part: 'stable.1701'
28       - '1704':
29           branch: 'stable/1704'
30           repo-stream-part: 'stable.1704'
31       - '1707':
32           branch: 'stable/1707'
33           repo-stream-part: 'stable.1707'
34       - '1710':
35           branch: 'stable/1710'
36           repo-stream-part: 'stable.1710'
37       - '1801':
38           branch: 'stable/1801'
39           repo-stream-part: 'stable.1801'
40       - '1804':
41           branch: 'stable/1804'
42           repo-stream-part: 'stable.1804'
43       - '1807':
44           branch: 'stable/1807'
45           repo-stream-part: 'stable.1807'
46 - project:
47     name: nsh_sfc-misc
48     jobs:
49       - 'nsh_sfc-csit-verify-perf-{stream}'
50       - 'nsh_sfc-csit-verify-func-{stream}-{os}-virl'
51
52     project: 'nsh_sfc'
53     stream:
54       - master:
55           branch: 'master'
56           repo-stream-part: 'master'
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       - '1704':
64           branch: 'stable/1704'
65           repo-stream-part: 'stable.1704'
66       - '1707':
67           branch: 'stable/1707'
68           repo-stream-part: 'stable.1707'
69
70     os: ubuntu1604
71
72 - project:
73     name: nsh-sfc-view
74     views:
75       - project-view
76     project-name: nsh_sfc
77
78 - job-template:
79     name: 'nsh_sfc-verify-{stream}-{os}'
80
81     project-type: freestyle
82     node: '{os}-basebuild-4c-4g'
83     concurrent: true
84     jdk: openjdk8-{os}
85
86     build-discarder:
87       daysToKeep: '{build-days-to-keep}'
88       numToKeep: '{build-num-to-keep}'
89       artifactDaysToKeep: '{build-artifact-days-to-keep}'
90       artifactNumToKeep: '{build-artifact-num-to-keep}'
91
92     parameters:
93       - project-parameter:
94           project: '{project}'
95       - gerrit-parameter:
96           branch: '{branch}'
97       - os-parameter:
98           os: '{os}'
99       - repo-name-parameter:
100           repo-name: '{repo-stream-part}.{repo-os-part}'
101       - maven-exec:
102           maven-version: 'mvn33-new'
103
104     scm:
105       - gerrit-trigger-scm:
106           credentials-id: 'jenkins-gerrit-credentials'
107           refspec: '$GERRIT_REFSPEC'
108           choosing-strategy: 'gerrit'
109
110     wrappers:
111       - fdio-infra-wrappers:
112           build-timeout: '{build-timeout}'
113
114     triggers:
115       - gerrit-trigger-patch-submitted:
116           name: '{project}'
117           branch: '{branch}'
118
119     builders:
120       - maven-target:
121           maven-version: 'mvn33-new'
122           goals: '--version'
123           settings: 'nsh_sfc-settings'
124           settings-type: cfp
125           global-settings: 'global-settings'
126           global-settings-type: cfp
127       - config-file-provider:
128           files:
129             - file-id: 'nsh_sfc-settings'
130               variable: 'SETTINGS_FILE'
131             - file-id: 'global-settings'
132               variable: 'GLOBAL_SETTINGS_FILE'
133       - shell:
134           !include-raw-escape: ../scripts/create_maven_env.sh
135       - inject:
136           properties-file: maven_env.txt
137       - shell:
138           !include-raw-escape:
139           - ../scripts/cleanup_vpp_plugin_dev_env.sh
140           - ../scripts/setup_vpp_plugin_dev_env.sh
141           - include-raw-nsh_sfc-build.sh
142           - ../scripts/cleanup_vpp_plugin_dev_env.sh
143
144     publishers:
145       - fdio-infra-shiplogs:
146           maven-version: 'mvn33-new'
147
148 - job-template:
149     name: 'nsh_sfc-verify-image-{stream}-{os}'
150
151     project-type: freestyle
152     node: '{os}-basebuild-4c-4g'
153     concurrent: true
154
155     build-discarder:
156       daysToKeep: '{build-days-to-keep}'
157       numToKeep: '{build-num-to-keep}'
158       artifactDaysToKeep: '{build-artifact-days-to-keep}'
159       artifactNumToKeep: '{build-artifact-num-to-keep}'
160
161     parameters:
162       - project-parameter:
163           project: '{project}'
164       - gerrit-parameter:
165           branch: '{branch}'
166       - os-parameter:
167           os: '{os}'
168       - repo-name-parameter:
169           repo-name: '{repo-stream-part}.{repo-os-part}'
170       - maven-exec:
171           maven-version: 'mvn33-new'
172
173     scm:
174       - gerrit-trigger-scm:
175           credentials-id: 'jenkins-gerrit-credentials'
176           refspec: '$GERRIT_REFSPEC'
177           choosing-strategy: 'gerrit'
178
179     wrappers:
180       - fdio-infra-wrappers:
181           build-timeout: '{build-timeout}'
182
183     triggers:
184       - gerrit:
185           server-name: 'Primary'
186           trigger-on:
187             - comment-added-contains-event:
188                 comment-contains-value: 'verify-images'
189           projects:
190             - project-compare-type: 'ANT'
191               project-pattern: '{project}'
192               branches:
193                 - branch-compare-type: 'ANT'
194                   branch-pattern: '**/{branch}'
195           skip-vote:
196             successful: true
197             failed: true
198             unstable: true
199             notbuilt: true
200
201     builders:
202       - maven-target:
203           maven-version: 'mvn33-new'
204           goals: '--version'
205           settings: 'nsh_sfc-settings'
206           settings-type: cfp
207           global-settings: 'global-settings'
208           global-settings-type: cfp
209       - config-file-provider:
210           files:
211             - file-id: 'nsh_sfc-settings'
212               variable: 'SETTINGS_FILE'
213             - file-id: 'global-settings'
214               variable: 'GLOBAL_SETTINGS_FILE'
215       - shell:
216           !include-raw-escape: ../scripts/create_maven_env.sh
217       - inject:
218           properties-file: maven_env.txt
219       - shell:
220           !include-raw-escape:
221           - ../scripts/cleanup_vpp_plugin_dev_env.sh
222           - ../scripts/setup_vpp_plugin_dev_env.sh
223           - include-raw-nsh_sfc-build.sh
224           - ../scripts/cleanup_vpp_plugin_dev_env.sh
225
226     publishers:
227       - fdio-infra-shiplogs:
228           maven-version: 'mvn33-new'
229
230 - job-template:
231     name: 'nsh_sfc-merge-{stream}-{os}'
232
233     project-type: freestyle
234     node: '{os}-basebuild-4c-4g'
235     jdk: openjdk8-{os}
236
237     build-discarder:
238       daysToKeep: '{build-days-to-keep}'
239       numToKeep: '{build-num-to-keep}'
240       artifactDaysToKeep: '{build-artifact-days-to-keep}'
241       artifactNumToKeep: '{build-artifact-num-to-keep}'
242
243     parameters:
244       - project-parameter:
245           project: '{project}'
246       - gerrit-parameter:
247           branch: '{branch}'
248       - os-parameter:
249           os: '{os}'
250       - maven-exec:
251           maven-version: 'mvn33-new'
252       - repo-name-parameter:
253           repo-name: '{repo-stream-part}.{repo-os-part}'
254
255     scm:
256       - gerrit-trigger-scm:
257           credentials-id: 'jenkins-gerrit-credentials'
258           refspec: ''
259           choosing-strategy: 'default'
260
261     wrappers:
262       - fdio-infra-wrappers:
263           build-timeout: '{build-timeout}'
264
265     triggers:
266       - gerrit-trigger-patch-merged:
267           name: '{project}'
268           branch: '{branch}'
269
270     builders:
271       - maven-target:
272           maven-version: 'mvn33-new'
273           goals: '--version'
274           settings: 'nsh_sfc-settings'
275           settings-type: cfp
276           global-settings: 'global-settings'
277           global-settings-type: cfp
278       - config-file-provider:
279           files:
280             - file-id: 'nsh_sfc-settings'
281               variable: 'SETTINGS_FILE'
282             - file-id: 'global-settings'
283               variable: 'GLOBAL_SETTINGS_FILE'
284       - shell:
285           !include-raw-escape: ../scripts/create_maven_env.sh
286       - inject:
287           properties-file: maven_env.txt
288       - shell:
289           !include-raw-escape:
290           - ../scripts/cleanup_vpp_plugin_dev_env.sh
291           - ../scripts/setup_vpp_plugin_dev_env.sh
292           - include-raw-nsh_sfc-build.sh
293           - ../scripts/cleanup_vpp_plugin_dev_env.sh
294
295     publishers:
296       - fdio-infra-shiplogs:
297           maven-version: 'mvn33-new'
298
299 - job-template:
300     name: 'nsh_sfc-integration-{stream}-{os}'
301
302     project-type: freestyle
303     node: '{os}-basebuild-4c-4g'
304     jdk: openjdk8-{os}
305
306     build-discarder:
307       daysToKeep: '{build-days-to-keep}'
308       numToKeep: '{build-num-to-keep}'
309       artifactDaysToKeep: '{build-artifact-days-to-keep}'
310       artifactNumToKeep: '{build-artifact-num-to-keep}'
311
312     parameters:
313       - project-parameter:
314           project: '{project}'
315       - gerrit-parameter:
316           branch: '{branch}'
317       - os-parameter:
318           os: '{os}'
319       - maven-exec:
320           maven-version: 'mvn33-new'
321       - repo-name-parameter:
322           repo-name: '{repo-stream-part}.{repo-os-part}'
323
324     scm:
325       - gerrit-trigger-scm:
326           credentials-id: 'jenkins-gerrit-credentials'
327           refspec: ''
328           choosing-strategy: 'default'
329
330     wrappers:
331       - fdio-infra-wrappers:
332           build-timeout: '{build-timeout}'
333
334     triggers:
335       - reverse:
336           jobs: 'vpp-merge-{stream}-{os},nsh_sfc-merge-{stream}-{os}'
337           result: 'success'
338
339     builders:
340       - maven-target:
341           maven-version: 'mvn33-new'
342           goals: '--version'
343           settings: 'nsh_sfc-settings'
344           settings-type: cfp
345           global-settings: 'global-settings'
346           global-settings-type: cfp
347
348       - config-file-provider:
349           files:
350             - file-id: 'nsh_sfc-settings'
351               variable: 'SETTINGS_FILE'
352             - file-id: 'global-settings'
353               variable: 'GLOBAL_SETTINGS_FILE'
354       - config-file-provider:
355           files:
356             - file-id: '.packagecloud'
357               target: '/home/jenkins/.packagecloud'
358       - config-file-provider:
359           files:
360             - file-id: 'packagecloud_api'
361               target: '/home/jenkins/packagecloud_api'
362
363       - shell:
364           !include-raw-escape: ../scripts/create_maven_env.sh
365       - inject:
366           properties-file: maven_env.txt
367       - shell:
368           !include-raw-escape:
369           - ../scripts/cleanup_vpp_plugin_dev_env.sh
370           - ../scripts/setup_vpp_plugin_dev_env.sh
371           - include-raw-nsh_sfc-build.sh
372           - ../scripts/cleanup_vpp_plugin_dev_env.sh
373           - ../scripts/maven_push_functions.sh
374           - include-raw-nsh_sfc-pkg-push.sh
375       - shell:
376           !include-raw-escape:
377           - ../scripts/packagecloud_push.sh
378
379     publishers:
380       - fdio-infra-shiplogs:
381           maven-version: 'mvn33-new'
382
383 - job-template:
384     name: 'nsh_sfc-verify-docs-{stream}'
385
386     project-type: freestyle
387     node: ubuntu1604-basebuild-4c-4g
388     concurrent: true
389     jdk: openjdk8-ubuntu1604
390
391     build-discarder:
392       daysToKeep: '{build-days-to-keep}'
393       numToKeep: '{build-num-to-keep}'
394       artifactDaysToKeep: '{build-artifact-days-to-keep}'
395       artifactNumToKeep: '{build-artifact-num-to-keep}'
396
397     parameters:
398       - project-parameter:
399           project: '{project}'
400       - gerrit-parameter:
401           branch: '{branch}'
402       - os-parameter:
403           os: 'ubuntu1604'
404       - maven-exec:
405           maven-version: 'mvn33-new'
406
407     scm:
408       - gerrit-trigger-scm:
409           credentials-id: 'jenkins-gerrit-credentials'
410           refspec: ''
411           choosing-strategy: 'default'
412
413     wrappers:
414       - fdio-infra-wrappers:
415           build-timeout: '{build-timeout}'
416
417     triggers:
418       - gerrit-trigger-patch-submitted:
419           name: '{project}'
420           branch: '{branch}'
421
422     builders:
423       - maven-target:
424           maven-version: 'mvn33-new'
425           goals: '--version'
426           settings: 'vpp-settings'
427           settings-type: cfp
428           global-settings: 'global-settings'
429           global-settings-type: cfp
430       - provide-maven-settings:
431           settings-file: 'vpp-settings'
432           global-settings-file: 'global-settings'
433       - shell:
434           !include-raw-escape: include-raw-nsh_sfc-docs.sh
435
436     publishers:
437       - fdio-infra-shiplogs:
438           maven-version: 'mvn33-new'
439
440 - job-template:
441     name: 'nsh_sfc-merge-docs-{stream}'
442
443     project-type: freestyle
444     node: ubuntu1604-basebuild-4c-4g
445     concurrent: true
446     jdk: openjdk8-{os}
447
448     build-discarder:
449       daysToKeep: '{build-days-to-keep}'
450       numToKeep: '{build-num-to-keep}'
451       artifactDaysToKeep: '{build-artifact-days-to-keep}'
452       artifactNumToKeep: '{build-artifact-num-to-keep}'
453
454     parameters:
455       - project-parameter:
456           project: '{project}'
457       - gerrit-parameter:
458           branch: '{branch}'
459       - os-parameter:
460           os: 'ubuntu1604'
461       - maven-exec:
462           maven-version: 'mvn33-new'
463
464     scm:
465       - gerrit-trigger-scm:
466           credentials-id: 'jenkins-gerrit-credentials'
467           refspec: ''
468           choosing-strategy: 'default'
469
470     wrappers:
471       - fdio-infra-wrappers:
472           build-timeout: '{build-timeout}'
473
474     triggers:
475       - reverse:
476           jobs: 'nsh_sfc-merge-{stream}-ubuntu1604'
477           result: 'success'
478       - gerrit:
479           server-name: 'Primary'
480           trigger-on:
481             - comment-added-contains-event:
482                 comment-contains-value: 'run-docs'
483           projects:
484             - project-compare-type: 'ANT'
485               project-pattern: '{project}'
486               branches:
487                 - branch-compare-type: 'ANT'
488                   branch-pattern: '**/{branch}'
489           skip-vote:
490             successful: true
491             failed: true
492             unstable: true
493             notbuilt: true
494
495     builders:
496       - maven-target:
497           maven-version: 'mvn33-new'
498           goals: '--version'
499           settings: 'vpp-settings'
500           settings-type: cfp
501           global-settings: 'global-settings'
502           global-settings-type: cfp
503       - provide-maven-settings:
504           settings-file: 'vpp-settings'
505           global-settings-file: 'global-settings'
506       - shell:
507           !include-raw-escape: include-raw-nsh_sfc-docs.sh
508
509     publishers:
510       - archive:
511           artifacts: 'build-root/docs/html/*'
512           allow-empty: 'true'
513           fingerprint: false
514           only-if-success: true
515           default-excludes: false
516       - fdio-infra-shiplogs:
517           maven-version: 'mvn33-new'
518
519 - job-template:
520     name: 'nsh_sfc-csit-verify-perf-{stream}'
521
522     project-type: freestyle
523     node: 'ubuntu1604-basebuild-4c-4g'
524     concurrent: true
525
526     build-discarder:
527       daysToKeep: '{build-days-to-keep}'
528       numToKeep: '{build-num-to-keep}'
529       artifactDaysToKeep: '{build-artifact-days-to-keep}'
530       artifactNumToKeep: '{build-artifact-num-to-keep}'
531
532     parameters:
533       - project-parameter:
534           project: '{project}'
535       - gerrit-parameter:
536           branch: '{branch}'
537       - os-parameter:
538           os: '{os}'
539       - repo-name-parameter:
540           repo-name: '{repo-stream-part}.ubuntu.xenial.main'
541
542     scm:
543       - gerrit-trigger-scm:
544           credentials-id: 'jenkins-gerrit-credentials'
545           refspec: '$GERRIT_REFSPEC'
546           choosing-strategy: 'gerrit'
547
548     wrappers:
549       - fdio-infra-wrappers-non-activity-timeout:
550           build-timeout: 30
551
552     triggers:
553       - gerrit-trigger-manually-triggered:
554           name: '{project}'
555           branch: '{branch}'
556           comment-trigger-value: 'nsh_sfc_perf'
557
558     builders:
559       - shell:
560           !include-raw-escape: include-raw-nsh_sfc-csit-perf-hw.sh
561
562     pulishers:
563       - archive-artifacts:
564           artifacts: 'csit/archive/*.*'
565           latest-only: false
566
567       - robot-report:
568           output-path: 'csit/archive'
569
570       - fdio-infra-shiplogs:
571           maven-version: 'mvn33-new'
572
573 - job-template:
574     name: 'nsh_sfc-csit-verify-func-{stream}-{os}-virl'
575
576     project-type: freestyle
577     node: '{os}-basebuild-4c-4g'
578     concurrent: true
579
580     build-discarder:
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: '{os}'
593       - repo-name-parameter:
594           repo-name: '{repo-stream-part}.ubuntu.xenial.main'
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-manually-triggered:
608           name: '{project}'
609           branch: '{branch}'
610           comment-trigger-value: 'nsh_sfc_func'
611
612     builders:
613       - shell:
614           !include-raw-escape: include-raw-nsh_sfc-csit-functional-virl.sh
615
616     publishers:
617       - archive-artifacts:
618           artifacts: 'csit/archive/*.*'
619           latest-only: false
620
621       - robot-report:
622           output-path: 'csit/archive'
623
624       - fdio-infra-shiplogs:
625           maven-version: 'mvn33-new'