vpp.yaml revision 4395e4a7
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        - timestamps
90        - ssh-agent-credentials:
91            users:
92                - '{ssh-credentials}'
93        - fdio-infra-wrappers:
94            build-timeout: '{build-timeout}'
95
96    triggers:
97        - gerrit-trigger-patch-submitted:
98            name: '{project}'
99            branch: '{branch}'
100
101    builders:
102        - shell:
103            !include-raw-escape: include-raw-vpp-checkstyle.sh
104        - shell:
105            !include-raw-escape: include-raw-vpp-build.sh
106    publishers:
107        - archive:
108            artifacts: 'build-root/*.rpm,build-root/*.deb'
109            allow-empty: 'true'
110            fingerprint: false
111            only-if-success: true
112            default-excludes: false
113
114- job-template:
115    name: 'vpp-verify-image-{stream}-{os}'
116
117    project-type: freestyle
118    node: 'verify-image-{os}'
119    concurrent: true
120
121    logrotate:
122        daysToKeep: '{build-days-to-keep}'
123        numToKeep: '{build-num-to-keep}'
124        artifactDaysToKeep: '{build-artifact-days-to-keep}'
125        artifactNumToKeep: '{build-artifact-num-to-keep}'
126
127    parameters:
128        - project-parameter:
129            project: '{project}'
130        - gerrit-parameter:
131            branch: '{branch}'
132        - os-parameter:
133            os: '{os}'
134
135    scm:
136        - gerrit-trigger-scm:
137            credentials-id: '{ssh-credentials}'
138            refspec: '$GERRIT_REFSPEC'
139            choosing-strategy: 'gerrit'
140
141    wrappers:
142        - timestamps
143        - ssh-agent-credentials:
144            users:
145                - '{ssh-credentials}'
146        - fdio-infra-wrappers:
147            build-timeout: '{build-timeout}'
148
149    triggers:
150        - gerrit:
151            server-name: 'Primary'
152            trigger-on:
153                - comment-added-contains-event:
154                    comment-contains-value: 'verify-images'
155            projects:
156              - project-compare-type: 'ANT'
157                project-pattern: '{project}'
158                branches:
159                  - branch-compare-type: 'ANT'
160                    branch-pattern: '**/{branch}'
161            skip-vote:
162                successful: true
163                failed: true
164                unstable: true
165                notbuilt: true
166
167    builders:
168        - shell:
169            !include-raw-escape: include-raw-vpp-checkstyle.sh
170        - shell:
171            !include-raw-escape: include-raw-vpp-build.sh
172
173- job-template:
174    name: 'vpp-merge-{stream}-{os}'
175
176    project-type: freestyle
177    node: 'merge-{os}'
178
179    logrotate:
180        daysToKeep: '{build-days-to-keep}'
181        numToKeep: '{build-num-to-keep}'
182        artifactDaysToKeep: '{build-artifact-days-to-keep}'
183        artifactNumToKeep: '{build-artifact-num-to-keep}'
184
185    parameters:
186        - project-parameter:
187            project: '{project}'
188        - gerrit-parameter:
189            branch: '{branch}'
190        - os-parameter:
191            os: '{os}'
192        - maven-project-parameter:
193            maven: 'mvn33'
194        - repo-name-parameter:
195            repo-name: '{repo-stream-part}.{repo-os-part}'
196
197    scm:
198        - gerrit-trigger-scm:
199            credentials-id: '{ssh-credentials}'
200            refspec: ''
201            choosing-strategy: 'default'
202
203    wrappers:
204        - timestamps
205        - ssh-agent-credentials:
206            users:
207                - '{ssh-credentials}'
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        - shell:
218            !include-raw-escape: include-raw-vpp-checkstyle.sh
219        - shell:
220            !include-raw-escape: include-raw-vpp-build.sh
221        - maven-target:
222            maven-version: 'mvn33'
223            goals: '--version'
224            settings: 'vpp-settings'
225            settings-type: cfp
226            global-settings: 'global-settings'
227            global-settings-type: cfp
228        - provide-maven-settings:
229            settings-file: 'vpp-settings'
230            global-settings-file: 'global-settings'
231        - shell:
232            !include-raw-escape:
233                - ../scripts/maven_push_functions.sh
234                - include-raw-vpp-maven-push.sh
235    publishers:
236        - archive:
237            artifacts: 'build-root/*.rpm,build-root/*.deb'
238            allow-empty: 'true'
239            fingerprint: false
240            only-if-success: true
241            default-excludes: false
242
243- job-template:
244    name: 'vpp-csit-verify-virl-{stream}'
245
246    project-type: freestyle
247    node: 'verify-{os}'
248    concurrent: true
249
250    logrotate:
251        daysToKeep: '{build-days-to-keep}'
252        numToKeep: '{build-num-to-keep}'
253        artifactDaysToKeep: '{build-artifact-days-to-keep}'
254        artifactNumToKeep: '{build-artifact-num-to-keep}'
255
256    parameters:
257        - project-parameter:
258            project: '{project}'
259        - gerrit-parameter:
260            branch: '{branch}'
261        - os-parameter:
262            os: '{os}'
263
264    scm:
265        - gerrit-trigger-scm:
266            credentials-id: '{ssh-credentials}'
267            refspec: '$GERRIT_REFSPEC'
268            choosing-strategy: 'gerrit'
269
270    wrappers:
271        - timestamps
272        - ssh-agent-credentials:
273            users:
274                - '{ssh-credentials}'
275        - fdio-infra-wrappers:
276            build-timeout: '{build-timeout}'
277
278    triggers:
279        - gerrit-trigger-patch-submitted:
280            name: '{project}'
281            branch: '{branch}'
282
283    builders:
284        - shell:
285            !include-raw-escape: include-raw-vpp-checkstyle.sh
286        - shell:
287            !include-raw-escape: include-raw-vpp-build.sh
288        - shell:
289            !include-raw-escape: include-raw-vpp-csit-functional.sh
290
291    publishers:
292        - archive-artifacts:
293            artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
294            latest-only: false
295
296        - robot-report:
297            output-path: 'csit'
298
299- job-template:
300    name: 'vpp-csit-verify-hw-perf-{stream}-{type}'
301
302    project-type: freestyle
303    node: 'verify-{os}'
304    concurrent: false
305
306    logrotate:
307        daysToKeep: '{build-days-to-keep}'
308        numToKeep: '{build-num-to-keep}'
309        artifactDaysToKeep: '{build-artifact-days-to-keep}'
310        artifactNumToKeep: '{build-artifact-num-to-keep}'
311
312    parameters:
313        - project-parameter:
314            project: '{project}'
315        - gerrit-parameter:
316            branch: '{branch}'
317        - os-parameter:
318            os: '{os}'
319        - type-parameter:
320            type: '{type}'
321
322    scm:
323        - gerrit-trigger-scm:
324            credentials-id: '{ssh-credentials}'
325            refspec: '$GERRIT_REFSPEC'
326            choosing-strategy: 'gerrit'
327
328    wrappers:
329        - timestamps
330        - ssh-agent-credentials:
331            users:
332                - '{ssh-credentials}'
333        - fdio-infra-wrappers:
334            build-timeout: '{build-timeout}'
335
336    triggers:
337        - gerrit-trigger-manually-triggered:
338            comment-trigger-value: 'verify-perf-{type}'
339            name: '{project}'
340            branch: '{branch}'
341
342    builders:
343        - shell:
344            !include-raw-escape: include-raw-vpp-build.sh
345        - shell:
346            !include-raw-escape: include-raw-vpp-csit-verify-perf.sh
347
348    publishers:
349        - archive-artifacts:
350            artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
351            latest-only: false
352
353        - robot-report:
354            output-path: 'csit'
355
356- parameter:
357    name: type-parameter
358
359    parameters:
360        - string:
361            name: TYPE
362            default: '{type}'
363            description: "TYPE parameter if not given by trigger"
364
365- job-template:
366    name: 'vpp-docs-verify-{stream}'
367
368    project-type: freestyle
369    node: 'verify-ubuntu1604'
370    concurrent: true
371
372    logrotate:
373        daysToKeep: '{build-days-to-keep}'
374        numToKeep: '{build-num-to-keep}'
375        artifactDaysToKeep: '{build-artifact-days-to-keep}'
376        artifactNumToKeep: '{build-artifact-num-to-keep}'
377
378    parameters:
379        - project-parameter:
380            project: '{project}'
381        - gerrit-parameter:
382            branch: '{branch}'
383        - os-parameter:
384            os: 'ubuntu1604'
385
386    scm:
387        - gerrit-trigger-scm:
388            credentials-id: '{ssh-credentials}'
389            refspec: '$GERRIT_REFSPEC'
390            choosing-strategy: 'gerrit'
391
392    wrappers:
393        - timestamps
394        - ssh-agent-credentials:
395            users:
396                - '{ssh-credentials}'
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'
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-vpp-docs.sh
418    publishers:
419        - archive:
420            artifacts: 'build-root/docs/html/*'
421            allow-empty: 'true'
422            fingerprint: false
423            only-if-success: true
424            default-excludes: false
425
426- job-template:
427    name: 'vpp-docs-merge-{stream}'
428
429    project-type: freestyle
430    node: 'verify-ubuntu1604'
431    concurrent: true
432
433    logrotate:
434        daysToKeep: '{build-days-to-keep}'
435        numToKeep: '{build-num-to-keep}'
436        artifactDaysToKeep: '{build-artifact-days-to-keep}'
437        artifactNumToKeep: '{build-artifact-num-to-keep}'
438
439    parameters:
440        - project-parameter:
441            project: '{project}'
442        - gerrit-parameter:
443            branch: '{branch}'
444        - os-parameter:
445            os: 'ubuntu1604'
446
447    scm:
448        - gerrit-trigger-scm:
449            credentials-id: '{ssh-credentials}'
450            refspec: ''
451            choosing-strategy: 'default'
452
453    wrappers:
454        - timestamps
455        - ssh-agent-credentials:
456            users:
457                - '{ssh-credentials}'
458        - fdio-infra-wrappers:
459            build-timeout: '{build-timeout}'
460
461    triggers:
462        - reverse:
463            jobs: 'vpp-merge-{stream}-ubuntu1404'
464            result: 'success'
465        - gerrit:
466            server-name: 'Primary'
467            trigger-on:
468                - comment-added-contains-event:
469                    comment-contains-value: 'run-docs'
470            projects:
471              - project-compare-type: 'ANT'
472                project-pattern: '{project}'
473                branches:
474                  - branch-compare-type: 'ANT'
475                    branch-pattern: '**/{branch}'
476            skip-vote:
477                successful: true
478                failed: true
479                unstable: true
480                notbuilt: true
481
482    builders:
483        - maven-target:
484            maven-version: 'mvn33'
485            goals: '--version'
486            settings: 'vpp-settings'
487            settings-type: cfp
488            global-settings: 'global-settings'
489            global-settings-type: cfp
490        - provide-maven-settings:
491            settings-file: 'vpp-settings'
492            global-settings-file: 'global-settings'
493        - shell:
494            !include-raw-escape: include-raw-vpp-docs.sh
495    publishers:
496        - archive:
497            artifacts: 'build-root/docs/html/*'
498            allow-empty: 'true'
499            fingerprint: false
500            only-if-success: true
501            default-excludes: false
502
503