vpp.yaml revision 43194037
1- project:
2    name: vpp
3    jobs:
4        - 'vpp-verify-{stream}-{os}'
5        - 'vpp-merge-{stream}-{os}'
6        - 'vpp-verify-image-{stream}-{os}'
7        - 'vpp-docs-merge-{stream}'
8        - 'vpp-docs-verify-{stream}'
9
10    project: 'vpp'
11    os:
12        - ubuntu1404:
13            repo-os-part: 'ubuntu.trusty.main'
14        - ubuntu1604:
15            repo-os-part: 'ubuntu.xenial.main'
16        - centos7:
17            repo-os-part: 'centos7'
18    stream:
19        - master:
20            branch: 'master'
21            repo-stream-part: 'master'
22        - test:
23            branch: 'stable/test'
24            repo-stream-part: 'stable.test'
25        - '1606':
26            branch: 'stable/1606'
27            repo-stream-part: 'stable.1606'
28        - '1609':
29            branch: 'stable/1609'
30            repo-stream-part: 'stable.1609'
31    type:
32        - short
33        - long
34
35- project:
36    name: vpp-misc
37    jobs:
38        - 'vpp-csit-verify-virl-{stream}'
39        - 'vpp-csit-verify-hw-perf-{stream}-{type}'
40    project: 'vpp'
41    stream:
42        - master:
43            branch: 'master'
44            repo-stream-part: 'master'
45        - test:
46            branch: 'stable/test'
47            repo-stream-part: 'stable.test'
48        - '1606':
49            branch: 'stable/1606'
50            repo-stream-part: 'stable.1606'
51        - '1609':
52            branch: 'stable/1609'
53            repo-stream-part: 'stable.1609'
54
55    os: ubuntu1404
56    type:
57        - all
58        - short
59        - long
60
61- job-template:
62    name: 'vpp-verify-{stream}-{os}'
63
64    project-type: freestyle
65    node: 'verify-{os}'
66    concurrent: true
67
68    logrotate:
69        daysToKeep: '{build-days-to-keep}'
70        numToKeep: '{build-num-to-keep}'
71        artifactDaysToKeep: '{build-artifact-days-to-keep}'
72        artifactNumToKeep: '{build-artifact-num-to-keep}'
73
74    parameters:
75        - project-parameter:
76            project: '{project}'
77        - gerrit-parameter:
78            branch: '{branch}'
79        - os-parameter:
80            os: '{os}'
81
82    scm:
83        - gerrit-trigger-scm:
84            credentials-id: '{ssh-credentials}'
85            refspec: '$GERRIT_REFSPEC'
86            choosing-strategy: 'gerrit'
87
88    wrappers:
89        - ssh-agent-credentials:
90            users:
91                - '{ssh-credentials}'
92        - fdio-infra-wrappers:
93            build-timeout: '{build-timeout}'
94
95    triggers:
96        - gerrit-trigger-patch-submitted:
97            name: '{project}'
98            branch: '{branch}'
99
100    builders:
101        - shell:
102            !include-raw-escape: include-raw-vpp-checkstyle.sh
103        - shell:
104            !include-raw-escape: include-raw-vpp-build.sh
105    publishers:
106        - archive:
107            artifacts: 'build-root/*.rpm,build-root/*.deb'
108            allow-empty: 'true'
109            fingerprint: false
110            only-if-success: true
111            default-excludes: false
112
113- job-template:
114    name: 'vpp-verify-image-{stream}-{os}'
115
116    project-type: freestyle
117    node: 'verify-image-{os}'
118    concurrent: true
119
120    logrotate:
121        daysToKeep: '{build-days-to-keep}'
122        numToKeep: '{build-num-to-keep}'
123        artifactDaysToKeep: '{build-artifact-days-to-keep}'
124        artifactNumToKeep: '{build-artifact-num-to-keep}'
125
126    parameters:
127        - project-parameter:
128            project: '{project}'
129        - gerrit-parameter:
130            branch: '{branch}'
131        - os-parameter:
132            os: '{os}'
133
134    scm:
135        - gerrit-trigger-scm:
136            credentials-id: '{ssh-credentials}'
137            refspec: '$GERRIT_REFSPEC'
138            choosing-strategy: 'gerrit'
139
140    wrappers:
141        - ssh-agent-credentials:
142            users:
143                - '{ssh-credentials}'
144        - fdio-infra-wrappers:
145            build-timeout: '{build-timeout}'
146
147    triggers:
148        - gerrit:
149            server-name: 'Primary'
150            trigger-on:
151                - comment-added-contains-event:
152                    comment-contains-value: 'verify-images'
153            projects:
154              - project-compare-type: 'ANT'
155                project-pattern: '{project}'
156                branches:
157                  - branch-compare-type: 'ANT'
158                    branch-pattern: '**/{branch}'
159            skip-vote:
160                successful: true
161                failed: true
162                unstable: true
163                notbuilt: true
164
165    builders:
166        - shell:
167            !include-raw-escape: include-raw-vpp-checkstyle.sh
168        - shell:
169            !include-raw-escape: include-raw-vpp-build.sh
170
171- job-template:
172    name: 'vpp-merge-{stream}-{os}'
173
174    project-type: freestyle
175    node: 'merge-{os}'
176
177    logrotate:
178        daysToKeep: '{build-days-to-keep}'
179        numToKeep: '{build-num-to-keep}'
180        artifactDaysToKeep: '{build-artifact-days-to-keep}'
181        artifactNumToKeep: '{build-artifact-num-to-keep}'
182
183    parameters:
184        - project-parameter:
185            project: '{project}'
186        - gerrit-parameter:
187            branch: '{branch}'
188        - os-parameter:
189            os: '{os}'
190        - maven-project-parameter:
191            maven: '{mvn33}'
192        - repo-name-parameter:
193            repo-name: '{repo-stream-part}.{repo-os-part}'
194
195    scm:
196        - gerrit-trigger-scm:
197            credentials-id: '{ssh-credentials}'
198            refspec: ''
199            choosing-strategy: 'default'
200
201    wrappers:
202        - ssh-agent-credentials:
203            users:
204                - '{ssh-credentials}'
205        - fdio-infra-wrappers:
206            build-timeout: '{build-timeout}'
207
208    triggers:
209        - gerrit-trigger-patch-merged:
210            name: '{project}'
211            branch: '{branch}'
212
213    builders:
214        - shell:
215            !include-raw-escape: include-raw-vpp-checkstyle.sh
216        - shell:
217            !include-raw-escape: include-raw-vpp-build.sh
218        - maven-target:
219            maven-version: '{mvn33}'
220            goals: '--version'
221            settings: 'vpp-settings'
222            settings-type: cfp
223            global-settings: 'global-settings'
224            global-settings-type: cfp
225        - provide-maven-settings:
226            settings-file: 'vpp-settings'
227            global-settings-file: 'global-settings'
228        - shell:
229            !include-raw-escape:
230                - ../scripts/maven_push_functions.sh
231                - include-raw-vpp-maven-push.sh
232    publishers:
233        - archive:
234            artifacts: 'build-root/*.rpm,build-root/*.deb'
235            allow-empty: 'true'
236            fingerprint: false
237            only-if-success: true
238            default-excludes: false
239
240- job-template:
241    name: 'vpp-csit-verify-virl-{stream}'
242
243    project-type: freestyle
244    node: 'verify-{os}'
245    concurrent: true
246
247    logrotate:
248        daysToKeep: '{build-days-to-keep}'
249        numToKeep: '{build-num-to-keep}'
250        artifactDaysToKeep: '{build-artifact-days-to-keep}'
251        artifactNumToKeep: '{build-artifact-num-to-keep}'
252
253    parameters:
254        - project-parameter:
255            project: '{project}'
256        - gerrit-parameter:
257            branch: '{branch}'
258        - os-parameter:
259            os: '{os}'
260
261    scm:
262        - gerrit-trigger-scm:
263            credentials-id: '{ssh-credentials}'
264            refspec: '$GERRIT_REFSPEC'
265            choosing-strategy: 'gerrit'
266
267    wrappers:
268        - timestamps
269        - ssh-agent-credentials:
270            users:
271                - '{ssh-credentials}'
272        - fdio-infra-wrappers:
273            build-timeout: '{build-timeout}'
274
275    triggers:
276        - gerrit-trigger-patch-submitted:
277            name: '{project}'
278            branch: '{branch}'
279
280    builders:
281        - shell:
282            !include-raw-escape: include-raw-vpp-checkstyle.sh
283        - shell:
284            !include-raw-escape: include-raw-vpp-build.sh
285        - shell:
286            !include-raw-escape: include-raw-vpp-csit-functional.sh
287
288    publishers:
289        - archive-artifacts:
290            artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
291            latest-only: false
292
293        - robot-report:
294            output-path: 'csit'
295
296- job-template:
297    name: 'vpp-csit-verify-hw-perf-{stream}-{type}'
298
299    project-type: freestyle
300    node: 'verify-{os}'
301    concurrent: false
302
303    logrotate:
304        daysToKeep: '{build-days-to-keep}'
305        numToKeep: '{build-num-to-keep}'
306        artifactDaysToKeep: '{build-artifact-days-to-keep}'
307        artifactNumToKeep: '{build-artifact-num-to-keep}'
308
309    parameters:
310        - project-parameter:
311            project: '{project}'
312        - gerrit-parameter:
313            branch: '{branch}'
314        - os-parameter:
315            os: '{os}'
316        - type-parameter:
317            type: '{type}'
318
319    scm:
320        - gerrit-trigger-scm:
321            credentials-id: '{ssh-credentials}'
322            refspec: '$GERRIT_REFSPEC'
323            choosing-strategy: 'gerrit'
324
325    wrappers:
326        - timestamps
327        - ssh-agent-credentials:
328            users:
329                - '{ssh-credentials}'
330        - fdio-infra-wrappers:
331            build-timeout: '{build-timeout}'
332
333    triggers:
334        - gerrit-trigger-manually-triggered:
335            comment-trigger-value: 'verify-perf-{type}'
336            name: '{project}'
337            branch: '{branch}'
338
339    builders:
340        - shell:
341            !include-raw-escape: include-raw-vpp-build.sh
342        - shell:
343            !include-raw-escape: include-raw-vpp-csit-verify-perf.sh
344
345    publishers:
346        - archive-artifacts:
347            artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
348            latest-only: false
349
350        - robot-report:
351            output-path: 'csit'
352
353- parameter:
354    name: type-parameter
355
356    parameters:
357        - string:
358            name: TYPE
359            default: '{type}'
360            description: "TYPE parameter if not given by trigger"
361
362- job-template:
363    name: 'vpp-docs-verify-{stream}'
364
365    project-type: freestyle
366    node: 'verify-ubuntu1604'
367    concurrent: true
368
369    logrotate:
370        daysToKeep: '{build-days-to-keep}'
371        numToKeep: '{build-num-to-keep}'
372        artifactDaysToKeep: '{build-artifact-days-to-keep}'
373        artifactNumToKeep: '{build-artifact-num-to-keep}'
374
375    parameters:
376        - project-parameter:
377            project: '{project}'
378        - gerrit-parameter:
379            branch: '{branch}'
380        - os-parameter:
381            os: 'ubuntu1604'
382
383    scm:
384        - gerrit-trigger-scm:
385            credentials-id: '{ssh-credentials}'
386            refspec: ''
387            choosing-strategy: 'default'
388
389    wrappers:
390        - ssh-agent-credentials:
391            users:
392                - '{ssh-credentials}'
393
394    triggers:
395        - gerrit-trigger-patch-submitted:
396            name: '{project}'
397            branch: '{branch}'
398
399    builders:
400        - maven-target:
401            maven-version: '{mvn33}'
402            goals: '--version'
403            settings: 'vpp-settings'
404            settings-type: cfp
405            global-settings: 'global-settings'
406            global-settings-type: cfp
407        - provide-maven-settings:
408            settings-file: 'vpp-settings'
409            global-settings-file: 'global-settings'
410        - shell:
411            !include-raw-escape: include-raw-vpp-docs.sh
412    publishers:
413        - archive:
414            artifacts: 'build-root/docs/html/*'
415            allow-empty: 'true'
416            fingerprint: false
417            only-if-success: true
418            default-excludes: false
419
420- job-template:
421    name: 'vpp-docs-merge-{stream}'
422
423    project-type: freestyle
424    node: 'verify-ubuntu1604'
425    concurrent: true
426
427    logrotate:
428        daysToKeep: '{build-days-to-keep}'
429        numToKeep: '{build-num-to-keep}'
430        artifactDaysToKeep: '{build-artifact-days-to-keep}'
431        artifactNumToKeep: '{build-artifact-num-to-keep}'
432
433    parameters:
434        - project-parameter:
435            project: '{project}'
436        - gerrit-parameter:
437            branch: '{branch}'
438        - os-parameter:
439            os: 'ubuntu1604'
440
441    scm:
442        - gerrit-trigger-scm:
443            credentials-id: '{ssh-credentials}'
444            refspec: ''
445            choosing-strategy: 'default'
446
447    wrappers:
448        - ssh-agent-credentials:
449            users:
450                - '{ssh-credentials}'
451
452    triggers:
453        - reverse:
454            jobs: 'vpp-merge-{stream}-ubuntu1404'
455            result: 'success'
456        - gerrit:
457            server-name: 'Primary'
458            trigger-on:
459                - comment-added-contains-event:
460                    comment-contains-value: 'run-docs'
461            projects:
462              - project-compare-type: 'ANT'
463                project-pattern: '{project}'
464                branches:
465                  - branch-compare-type: 'ANT'
466                    branch-pattern: '**/{branch}'
467            skip-vote:
468                successful: true
469                failed: true
470                unstable: true
471                notbuilt: true
472
473    builders:
474        - maven-target:
475            maven-version: '{mvn33}'
476            goals: '--version'
477            settings: 'vpp-settings'
478            settings-type: cfp
479            global-settings: 'global-settings'
480            global-settings-type: cfp
481        - provide-maven-settings:
482            settings-file: 'vpp-settings'
483            global-settings-file: 'global-settings'
484        - shell:
485            !include-raw-escape: include-raw-vpp-docs.sh
486    publishers:
487        - archive:
488            artifacts: 'build-root/docs/html/*'
489            allow-empty: 'true'
490            fingerprint: false
491            only-if-success: true
492            default-excludes: false
493
494