Merge "VPP: no verify on extras/emacs dir"
[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         - shell:
359             !include-raw-escape:
360                 - ../scripts/packagecloud_push.sh
361
362     publishers:
363       - fdio-infra-shiplogs:
364           maven-version: 'mvn33-new'
365
366 - job-template:
367     name: 'nsh_sfc-verify-docs-{stream}'
368
369     project-type: freestyle
370     node: ubuntu1604-basebuild-4c-4g
371     concurrent: true
372     jdk: openjdk8-ubuntu1604
373
374     logrotate:
375         daysToKeep: '{build-days-to-keep}'
376         numToKeep: '{build-num-to-keep}'
377         artifactDaysToKeep: '{build-artifact-days-to-keep}'
378         artifactNumToKeep: '{build-artifact-num-to-keep}'
379
380     parameters:
381         - project-parameter:
382             project: '{project}'
383         - gerrit-parameter:
384             branch: '{branch}'
385         - os-parameter:
386             os: 'ubuntu1604'
387         - maven-exec:
388             maven-version: 'mvn33-new'
389
390     scm:
391         - gerrit-trigger-scm:
392             credentials-id: 'jenkins-gerrit-credentials'
393             refspec: ''
394             choosing-strategy: 'default'
395
396     wrappers:
397         - fdio-infra-wrappers:
398             build-timeout: '{build-timeout}'
399
400     triggers:
401         - gerrit-trigger-patch-submitted:
402             name: '{project}'
403             branch: '{branch}'
404
405     builders:
406         - maven-target:
407             maven-version: 'mvn33-new'
408             goals: '--version'
409             settings: 'vpp-settings'
410             settings-type: cfp
411             global-settings: 'global-settings'
412             global-settings-type: cfp
413         - provide-maven-settings:
414             settings-file: 'vpp-settings'
415             global-settings-file: 'global-settings'
416         - shell:
417             !include-raw-escape: include-raw-nsh_sfc-docs.sh
418
419     publishers:
420       - fdio-infra-shiplogs:
421           maven-version: 'mvn33-new'
422
423 - job-template:
424     name: 'nsh_sfc-merge-docs-{stream}'
425
426     project-type: freestyle
427     node: ubuntu1604-basebuild-4c-4g
428     concurrent: true
429     jdk: openjdk8-{os}
430
431     logrotate:
432         daysToKeep: '{build-days-to-keep}'
433         numToKeep: '{build-num-to-keep}'
434         artifactDaysToKeep: '{build-artifact-days-to-keep}'
435         artifactNumToKeep: '{build-artifact-num-to-keep}'
436
437     parameters:
438         - project-parameter:
439             project: '{project}'
440         - gerrit-parameter:
441             branch: '{branch}'
442         - os-parameter:
443             os: 'ubuntu1604'
444         - maven-exec:
445             maven-version: 'mvn33-new'
446
447     scm:
448         - gerrit-trigger-scm:
449             credentials-id: 'jenkins-gerrit-credentials'
450             refspec: ''
451             choosing-strategy: 'default'
452
453     wrappers:
454         - fdio-infra-wrappers:
455             build-timeout: '{build-timeout}'
456
457     triggers:
458         - reverse:
459             jobs: 'nsh_sfc-merge-{stream}-ubuntu1604'
460             result: 'success'
461         - gerrit:
462             server-name: 'Primary'
463             trigger-on:
464                 - comment-added-contains-event:
465                     comment-contains-value: 'run-docs'
466             projects:
467               - project-compare-type: 'ANT'
468                 project-pattern: '{project}'
469                 branches:
470                   - branch-compare-type: 'ANT'
471                     branch-pattern: '**/{branch}'
472             skip-vote:
473                 successful: true
474                 failed: true
475                 unstable: true
476                 notbuilt: true
477
478     builders:
479         - maven-target:
480             maven-version: 'mvn33-new'
481             goals: '--version'
482             settings: 'vpp-settings'
483             settings-type: cfp
484             global-settings: 'global-settings'
485             global-settings-type: cfp
486         - provide-maven-settings:
487             settings-file: 'vpp-settings'
488             global-settings-file: 'global-settings'
489         - shell:
490             !include-raw-escape: include-raw-nsh_sfc-docs.sh
491     publishers:
492         - archive:
493             artifacts: 'build-root/docs/html/*'
494             allow-empty: 'true'
495             fingerprint: false
496             only-if-success: true
497             default-excludes: false
498         - fdio-infra-shiplogs:
499             maven-version: 'mvn33-new'
500
501 - job-template:
502     name: 'nsh_sfc-csit-verify-perf-{stream}'
503
504     project-type: freestyle
505     node: 'ubuntu1604-basebuild-4c-4g'
506     concurrent: true
507
508     logrotate:
509         daysToKeep: '{build-days-to-keep}'
510         numToKeep: '{build-num-to-keep}'
511         artifactDaysToKeep: '{build-artifact-days-to-keep}'
512         artifactNumToKeep: '{build-artifact-num-to-keep}'
513
514     parameters:
515         - project-parameter:
516             project: '{project}'
517         - gerrit-parameter:
518             branch: '{branch}'
519         - os-parameter:
520             os: '{os}'
521         - repo-name-parameter:
522             repo-name: '{repo-stream-part}.ubuntu.xenial.main'
523
524     scm:
525         - gerrit-trigger-scm:
526             credentials-id: 'jenkins-gerrit-credentials'
527             refspec: '$GERRIT_REFSPEC'
528             choosing-strategy: 'gerrit'
529
530     wrappers:
531       - fdio-infra-wrappers-non-activity-timeout:
532           build-timeout: 30
533
534     triggers:
535         - gerrit-trigger-manually-triggered:
536             name: '{project}'
537             branch: '{branch}'
538             comment-trigger-value: 'nsh_sfc_perf'
539
540     builders:
541         - shell:
542             !include-raw-escape: include-raw-nsh_sfc-csit-perf-hw.sh
543
544     publishers:
545         - archive-artifacts:
546             artifacts: 'csit/archive/*.*'
547             latest-only: false
548
549         - robot-report:
550             output-path: 'csit/archive'
551
552         - fdio-infra-shiplogs:
553             maven-version: 'mvn33-new'
554
555 - job-template:
556     name: 'nsh_sfc-csit-verify-func-{stream}-{os}-virl'
557
558     project-type: freestyle
559     node: '{os}-basebuild-4c-4g'
560     concurrent: true
561
562     logrotate:
563         daysToKeep: '{build-days-to-keep}'
564         numToKeep: '{build-num-to-keep}'
565         artifactDaysToKeep: '{build-artifact-days-to-keep}'
566         artifactNumToKeep: '{build-artifact-num-to-keep}'
567
568     parameters:
569         - project-parameter:
570             project: '{project}'
571         - gerrit-parameter:
572             branch: '{branch}'
573         - os-parameter:
574             os: '{os}'
575         - repo-name-parameter:
576             repo-name: '{repo-stream-part}.ubuntu.xenial.main'
577
578     scm:
579         - gerrit-trigger-scm:
580             credentials-id: 'jenkins-gerrit-credentials'
581             refspec: '$GERRIT_REFSPEC'
582             choosing-strategy: 'gerrit'
583
584     wrappers:
585         - fdio-infra-wrappers:
586             build-timeout: '{build-timeout}'
587
588     triggers:
589         - gerrit-trigger-manually-triggered:
590             name: '{project}'
591             branch: '{branch}'
592             comment-trigger-value: 'nsh_sfc_func'
593
594     builders:
595         - shell:
596             !include-raw-escape: include-raw-nsh_sfc-csit-functional-virl.sh
597
598     publishers:
599         - archive-artifacts:
600             artifacts: 'csit/archive/*.*'
601             latest-only: false
602
603         - robot-report:
604             output-path: 'csit/archive'
605
606         - fdio-infra-shiplogs:
607             maven-version: 'mvn33-new'