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