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