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