Merge "Configuring minions as single use"
[ci-management.git] / jjb / vpp / vpp.yaml
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: include-raw-vpp-maven-push.sh
222     publishers:
223         - archive:
224             artifacts: 'build-root/*.rpm,build-root/*.deb'
225             allow-empty: 'true'
226             fingerprint: false
227             only-if-success: true
228             default-excludes: false
229
230 - job-template:
231     name: 'vpp-csit-verify-virl-{stream}'
232
233     project-type: freestyle
234     node: 'verify-{os}'
235     concurrent: true
236
237     logrotate:
238         daysToKeep: '{build-days-to-keep}'
239         numToKeep: '{build-num-to-keep}'
240         artifactDaysToKeep: '{build-artifact-days-to-keep}'
241         artifactNumToKeep: '{build-artifact-num-to-keep}'
242
243     parameters:
244         - project-parameter:
245             project: '{project}'
246         - gerrit-parameter:
247             branch: '{branch}'
248         - os-parameter:
249             os: '{os}'
250
251     scm:
252         - gerrit-trigger-scm:
253             credentials-id: '{ssh-credentials}'
254             refspec: '$GERRIT_REFSPEC'
255             choosing-strategy: 'gerrit'
256
257     wrappers:
258         - timestamps
259         - ssh-agent-credentials:
260             users:
261                 - '{ssh-credentials}'
262         - fdio-infra-wrappers:
263             build-timeout: '{build-timeout}'
264
265     triggers:
266         - gerrit-trigger-patch-submitted:
267             name: '{project}'
268             branch: '{branch}'
269
270     builders:
271         - shell:
272             !include-raw-escape: include-raw-vpp-checkstyle.sh
273         - shell:
274             !include-raw-escape: include-raw-vpp-build.sh
275         - shell:
276             !include-raw-escape: include-raw-vpp-csit-functional.sh
277
278     publishers:
279         - archive-artifacts:
280             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
281             latest-only: false
282
283         - robot-report:
284             output-path: 'csit'
285
286 - job-template:
287     name: 'vpp-csit-verify-hw-perf-{stream}-{type}'
288
289     project-type: freestyle
290     node: 'verify-{os}'
291     concurrent: false
292
293     logrotate:
294         daysToKeep: '{build-days-to-keep}'
295         numToKeep: '{build-num-to-keep}'
296         artifactDaysToKeep: '{build-artifact-days-to-keep}'
297         artifactNumToKeep: '{build-artifact-num-to-keep}'
298
299     parameters:
300         - project-parameter:
301             project: '{project}'
302         - gerrit-parameter:
303             branch: '{branch}'
304         - os-parameter:
305             os: '{os}'
306         - type-parameter:
307             type: '{type}'
308
309     scm:
310         - gerrit-trigger-scm:
311             credentials-id: '{ssh-credentials}'
312             refspec: '$GERRIT_REFSPEC'
313             choosing-strategy: 'gerrit'
314
315     wrappers:
316         - timestamps
317         - ssh-agent-credentials:
318             users:
319                 - '{ssh-credentials}'
320         - fdio-infra-wrappers:
321             build-timeout: '{build-timeout}'
322
323     triggers:
324         - gerrit-trigger-manually-triggered:
325             comment-trigger-value: 'verify-perf-{type}'
326             name: '{project}'
327             branch: '{branch}'
328
329     builders:
330         - shell:
331             !include-raw-escape: include-raw-vpp-build.sh
332         - shell:
333             !include-raw-escape: include-raw-vpp-csit-verify-perf.sh
334
335     publishers:
336         - archive-artifacts:
337             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
338             latest-only: false
339
340         - robot-report:
341             output-path: 'csit'
342
343 - parameter:
344     name: type-parameter
345
346     parameters:
347         - string:
348             name: TYPE
349             default: '{type}'
350             description: "TYPE parameter if not given by trigger"
351
352 - job-template:
353     name: 'vpp-docs-{stream}'
354
355     project-type: freestyle
356     node: 'verify-ubuntu1604'
357     concurrent: true
358
359     logrotate:
360         daysToKeep: '{build-days-to-keep}'
361         numToKeep: '{build-num-to-keep}'
362         artifactDaysToKeep: '{build-artifact-days-to-keep}'
363         artifactNumToKeep: '{build-artifact-num-to-keep}'
364
365     parameters:
366         - project-parameter:
367             project: '{project}'
368         - gerrit-parameter:
369             branch: '{branch}'
370         - os-parameter:
371             os: 'ubuntu1604'
372
373     scm:
374         - gerrit-trigger-scm:
375             credentials-id: '{ssh-credentials}'
376             refspec: ''
377             choosing-strategy: 'default'
378
379     wrappers:
380         - ssh-agent-credentials:
381             users:
382                 - '{ssh-credentials}'
383
384     triggers:
385         - reverse:
386             jobs: 'vpp-merge-{stream}-ubuntu1404'
387             result: 'success'
388         - gerrit:
389             server-name: 'Primary'
390             trigger-on:
391                 - comment-added-contains-event:
392                     comment-contains-value: 'run-docs'
393             projects:
394               - project-compare-type: 'ANT'
395                 project-pattern: '{project}'
396                 branches:
397                   - branch-compare-type: 'ANT'
398                     branch-pattern: '**/{branch}'
399             skip-vote:
400                 successful: true
401                 failed: true
402                 unstable: true
403                 notbuilt: true
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