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