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