Merge "Convert nsh_sfc to be Packer compliant"
[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         - ubuntu1404:
14             repo-os-part: 'ubuntu.trusty.main'
15         - ubuntu1604:
16             repo-os-part: 'ubuntu.xenial.main'
17         - centos7:
18             repo-os-part: 'centos7'
19     stream:
20         - master:
21             branch: 'master'
22             repo-stream-part: 'master'
23         - '1609':
24             branch: 'stable/1609'
25             repo-stream-part: 'stable.1609'
26
27 - job-template:
28     name: 'nsh_sfc-verify-{stream}-{os}'
29
30     project-type: freestyle
31     node: '{os}-basebuild-4c-4g'
32     concurrent: true
33
34     logrotate:
35         daysToKeep: '{build-days-to-keep}'
36         numToKeep: '{build-num-to-keep}'
37         artifactDaysToKeep: '{build-artifact-days-to-keep}'
38         artifactNumToKeep: '{build-artifact-num-to-keep}'
39
40     parameters:
41         - project-parameter:
42             project: '{project}'
43         - gerrit-parameter:
44             branch: '{branch}'
45         - os-parameter:
46             os: '{os}'
47         - repo-name-parameter:
48             repo-name: '{repo-stream-part}.{repo-os-part}'
49         - maven-exec:
50             maven-version: 'mvn33-new'
51
52     scm:
53         - gerrit-trigger-scm:
54             credentials-id: 'jenkins-gerrit-credentials'
55             refspec: '$GERRIT_REFSPEC'
56             choosing-strategy: 'gerrit'
57
58     wrappers:
59         - fdio-infra-wrappers:
60             build-timeout: '{build-timeout}'
61
62     triggers:
63         - gerrit-trigger-patch-submitted:
64             name: '{project}'
65             branch: '{branch}'
66
67     builders:
68         - maven-target:
69             maven-version: 'mvn33-new'
70             goals: '--version'
71             settings: 'nsh_sfc-settings'
72             settings-type: cfp
73             global-settings: 'global-settings'
74             global-settings-type: cfp
75         - config-file-provider:
76             files:
77               - file-id: 'nsh_sfc-settings'
78                 variable: 'SETTINGS_FILE'
79               - file-id: 'global-settings'
80                 variable: 'GLOBAL_SETTINGS_FILE'
81         - shell:
82             !include-raw-escape: ../scripts/create_maven_env.sh
83         - inject:
84             properties-file: maven_env.txt
85         - shell:
86             !include-raw-escape:
87                 - ../scripts/cleanup_vpp_plugin_dev_env.sh
88                 - ../scripts/setup_vpp_plugin_dev_env.sh
89                 - include-raw-nsh_sfc-build.sh
90                 - ../scripts/cleanup_vpp_plugin_dev_env.sh
91
92 - job-template:
93     name: 'nsh_sfc-verify-image-{stream}-{os}'
94
95     project-type: freestyle
96     node: '{os}-basebuild-4c-4g'
97     concurrent: true
98
99     logrotate:
100         daysToKeep: '{build-days-to-keep}'
101         numToKeep: '{build-num-to-keep}'
102         artifactDaysToKeep: '{build-artifact-days-to-keep}'
103         artifactNumToKeep: '{build-artifact-num-to-keep}'
104
105     parameters:
106         - project-parameter:
107             project: '{project}'
108         - gerrit-parameter:
109             branch: '{branch}'
110         - os-parameter:
111             os: '{os}'
112         - repo-name-parameter:
113             repo-name: '{repo-stream-part}.{repo-os-part}'
114         - maven-exec:
115             maven-version: 'mvn33-new'
116
117     scm:
118         - gerrit-trigger-scm:
119             credentials-id: 'jenkins-gerrit-credentials'
120             refspec: '$GERRIT_REFSPEC'
121             choosing-strategy: 'gerrit'
122
123     wrappers:
124         - fdio-infra-wrappers:
125             build-timeout: '{build-timeout}'
126
127     triggers:
128         - gerrit:
129             server-name: 'Primary'
130             trigger-on:
131                 - comment-added-contains-event:
132                     comment-contains-value: 'verify-images'
133             projects:
134               - project-compare-type: 'ANT'
135                 project-pattern: '{project}'
136                 branches:
137                   - branch-compare-type: 'ANT'
138                     branch-pattern: '**/{branch}'
139             skip-vote:
140                 successful: true
141                 failed: true
142                 unstable: true
143                 notbuilt: true
144
145     builders:
146         - maven-target:
147             maven-version: 'mvn33-new'
148             goals: '--version'
149             settings: 'nsh_sfc-settings'
150             settings-type: cfp
151             global-settings: 'global-settings'
152             global-settings-type: cfp
153         - config-file-provider:
154             files:
155               - file-id: 'nsh_sfc-settings'
156                 variable: 'SETTINGS_FILE'
157               - file-id: 'global-settings'
158                 variable: 'GLOBAL_SETTINGS_FILE'
159         - shell:
160             !include-raw-escape: ../scripts/create_maven_env.sh
161         - inject:
162             properties-file: maven_env.txt
163         - shell:
164             !include-raw-escape:
165                 - ../scripts/cleanup_vpp_plugin_dev_env.sh
166                 - ../scripts/setup_vpp_plugin_dev_env.sh
167                 - include-raw-nsh_sfc-build.sh
168                 - ../scripts/cleanup_vpp_plugin_dev_env.sh
169
170 - job-template:
171     name: 'nsh_sfc-merge-{stream}-{os}'
172
173     project-type: freestyle
174     node: '{os}-basebuild-4c-4g'
175
176     logrotate:
177         daysToKeep: '{build-days-to-keep}'
178         numToKeep: '{build-num-to-keep}'
179         artifactDaysToKeep: '{build-artifact-days-to-keep}'
180         artifactNumToKeep: '{build-artifact-num-to-keep}'
181
182     parameters:
183         - project-parameter:
184             project: '{project}'
185         - gerrit-parameter:
186             branch: '{branch}'
187         - os-parameter:
188             os: '{os}'
189         - maven-exec:
190             maven-version: 'mvn33-new'
191         - repo-name-parameter:
192             repo-name: '{repo-stream-part}.{repo-os-part}'
193
194     scm:
195         - gerrit-trigger-scm:
196             credentials-id: 'jenkins-gerrit-credentials'
197             refspec: ''
198             choosing-strategy: 'default'
199
200     wrappers:
201         - fdio-infra-wrappers:
202             build-timeout: '{build-timeout}'
203
204     triggers:
205         - gerrit-trigger-patch-merged:
206             name: '{project}'
207             branch: '{branch}'
208
209     builders:
210         - maven-target:
211             maven-version: 'mvn33-new'
212             goals: '--version'
213             settings: 'nsh_sfc-settings'
214             settings-type: cfp
215             global-settings: 'global-settings'
216             global-settings-type: cfp
217         - config-file-provider:
218             files:
219               - file-id: 'nsh_sfc-settings'
220                 variable: 'SETTINGS_FILE'
221               - file-id: 'global-settings'
222                 variable: 'GLOBAL_SETTINGS_FILE'
223         - shell:
224             !include-raw-escape: ../scripts/create_maven_env.sh
225         - inject:
226             properties-file: maven_env.txt
227         - shell:
228             !include-raw-escape:
229                 - ../scripts/cleanup_vpp_plugin_dev_env.sh
230                 - ../scripts/setup_vpp_plugin_dev_env.sh
231                 - include-raw-nsh_sfc-build.sh
232                 - ../scripts/cleanup_vpp_plugin_dev_env.sh
233
234 - job-template:
235     name: 'nsh_sfc-integration-{stream}-{os}'
236
237     project-type: freestyle
238     node: '{os}-basebuild-4c-4g'
239
240     logrotate:
241         daysToKeep: '{build-days-to-keep}'
242         numToKeep: '{build-num-to-keep}'
243         artifactDaysToKeep: '{build-artifact-days-to-keep}'
244         artifactNumToKeep: '{build-artifact-num-to-keep}'
245
246     parameters:
247         - project-parameter:
248             project: '{project}'
249         - gerrit-parameter:
250             branch: '{branch}'
251         - os-parameter:
252             os: '{os}'
253         - maven-exec:
254             maven-version: 'mvn33-new'
255         - repo-name-parameter:
256             repo-name: '{repo-stream-part}.{repo-os-part}'
257
258     scm:
259         - gerrit-trigger-scm:
260             credentials-id: 'jenkins-gerrit-credentials'
261             refspec: ''
262             choosing-strategy: 'default'
263
264     wrappers:
265         - fdio-infra-wrappers:
266             build-timeout: '{build-timeout}'
267
268     triggers:
269         - reverse:
270             jobs: 'vpp-merge-{stream}-{os},nsh_sfc-merge-{stream}-{os}'
271             result: 'success'
272
273     builders:
274         - maven-target:
275             maven-version: 'mvn33-new'
276             goals: '--version'
277             settings: 'nsh_sfc-settings'
278             settings-type: cfp
279             global-settings: 'global-settings'
280             global-settings-type: cfp
281
282         - config-file-provider:
283             files:
284               - file-id: 'nsh_sfc-settings'
285                 variable: 'SETTINGS_FILE'
286               - file-id: 'global-settings'
287                 variable: 'GLOBAL_SETTINGS_FILE'
288         - shell:
289             !include-raw-escape: ../scripts/create_maven_env.sh
290         - inject:
291             properties-file: maven_env.txt
292         - shell:
293             !include-raw-escape:
294                 - ../scripts/cleanup_vpp_plugin_dev_env.sh
295                 - ../scripts/setup_vpp_plugin_dev_env.sh
296                 - include-raw-nsh_sfc-build.sh
297                 - ../scripts/cleanup_vpp_plugin_dev_env.sh
298                 - ../scripts/maven_push_functions.sh
299                 - include-raw-nsh_sfc-pkg-push.sh
300
301 - job-template:
302     name: 'nsh_sfc-verify-docs-{stream}'
303
304     project-type: freestyle
305     node: '{os}-basebuild-4c-4g'
306     concurrent: true
307
308     logrotate:
309         daysToKeep: '{build-days-to-keep}'
310         numToKeep: '{build-num-to-keep}'
311         artifactDaysToKeep: '{build-artifact-days-to-keep}'
312         artifactNumToKeep: '{build-artifact-num-to-keep}'
313
314     parameters:
315         - project-parameter:
316             project: '{project}'
317         - gerrit-parameter:
318             branch: '{branch}'
319         - os-parameter:
320             os: 'ubuntu1604'
321         - maven-exec:
322             maven-version: 'mvn33-new'
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         - gerrit-trigger-patch-submitted:
336             name: '{project}'
337             branch: '{branch}'
338
339     builders:
340         - maven-target:
341             maven-version: 'mvn33-new'
342             goals: '--version'
343             settings: 'vpp-settings'
344             settings-type: cfp
345             global-settings: 'global-settings'
346             global-settings-type: cfp
347         - provide-maven-settings:
348             settings-file: 'vpp-settings'
349             global-settings-file: 'global-settings'
350         - shell:
351             !include-raw-escape: include-raw-nsh_sfc-docs.sh
352
353
354
355
356 - job-template:
357     name: 'nsh_sfc-merge-docs-{stream}'
358
359     project-type: freestyle
360     node: '{os}-basebuild-4c-4g'
361     concurrent: true
362
363     logrotate:
364         daysToKeep: '{build-days-to-keep}'
365         numToKeep: '{build-num-to-keep}'
366         artifactDaysToKeep: '{build-artifact-days-to-keep}'
367         artifactNumToKeep: '{build-artifact-num-to-keep}'
368
369     parameters:
370         - project-parameter:
371             project: '{project}'
372         - gerrit-parameter:
373             branch: '{branch}'
374         - os-parameter:
375             os: 'ubuntu1604'
376         - maven-exec:
377             maven-version: 'mvn33-new'
378
379     scm:
380         - gerrit-trigger-scm:
381             credentials-id: 'jenkins-gerrit-credentials'
382             refspec: ''
383             choosing-strategy: 'default'
384
385     wrappers:
386         - fdio-infra-wrappers:
387             build-timeout: '{build-timeout}'
388
389     triggers:
390         - reverse:
391             jobs: 'nsh_sfc-merge-{stream}-ubuntu1404'
392             result: 'success'
393         - gerrit:
394             server-name: 'Primary'
395             trigger-on:
396                 - comment-added-contains-event:
397                     comment-contains-value: 'run-docs'
398             projects:
399               - project-compare-type: 'ANT'
400                 project-pattern: '{project}'
401                 branches:
402                   - branch-compare-type: 'ANT'
403                     branch-pattern: '**/{branch}'
404             skip-vote:
405                 successful: true
406                 failed: true
407                 unstable: true
408                 notbuilt: true
409
410     builders:
411         - maven-target:
412             maven-version: 'mvn33-new'
413             goals: '--version'
414             settings: 'vpp-settings'
415             settings-type: cfp
416             global-settings: 'global-settings'
417             global-settings-type: cfp
418         - provide-maven-settings:
419             settings-file: 'vpp-settings'
420             global-settings-file: 'global-settings'
421         - shell:
422             !include-raw-escape: include-raw-nsh_sfc-docs.sh