Merge "Netopeer in CI only works with user root"
[releng/builder.git] / jjb / neutron / neutron.yaml
1 # REMOVE THIS LINE IF YOU WANT TO CUSTOMIZE ANYTHING BELOW
2 # Otherwise this file will be automatically overwritten by the template
3 # autobuilder.
4
5 # ODL Releng build templates
6 - project:
7     name: neutron
8     jobs:
9         - 'neutron-verify-{stream}'
10         - 'neutron-merge-{stream}'
11         - 'neutron-daily-{stream}'
12         - 'neutron-integration-{stream}'
13         - 'neutron-sonar'
14         - 'neutron-clm'
15
16
17     # stream:    branch with - in place of / (eg. stable-helium)
18     # branch:    branch (eg. stable/helium)
19     stream:
20         - master:
21             branch: 'master'
22             jdk: openjdk7
23             jdks:
24                 - openjdk7
25                 - openjdk8
26         - stable-lithium:
27             branch: 'stable/lithium'
28             jdk: openjdk7
29             jdks:
30                 - openjdk7
31                 - openjdk8
32
33     project: 'neutron'
34
35 # For the Job templates below replace instances of:
36 # PROJECT with your project name (eg. controller)
37 # MAVEN_GOALS with your maven goals to build
38 # MAVEN_OPTS with your maven options to build
39
40 - job-template:
41     name: 'neutron-verify-{stream}'
42
43     # Job template for ODL verify jobs
44     #
45     # The purpose of this job template is to setup a ODL verify job
46     #
47     # Required Variables:
48     #     stream:    branch with - in place of / (eg. stable-helium)
49     #     branch:    branch (eg. stable/helium)
50
51     project-type: matrix
52     node: matrix_master
53     concurrent: true
54
55     axes:
56         - axis:
57             type: slave
58             name: nodes
59             values:
60                 - dynamic_verify
61         - axis:
62             type: jdk
63             values: '{obj:jdks}'
64
65     logrotate:
66         daysToKeep: '{build-days-to-keep}'
67         numToKeep: '{build-num-to-keep}'
68         artifactDaysToKeep: '{build-artifact-days-to-keep}'
69         artifactNumToKeep: '{build-artifact-num-to-keep}'
70
71     parameters:
72         - project-parameter:
73             project: '{project}'
74         - gerrit-parameter:
75             branch: '{branch}'
76
77     scm:
78         - gerrit-trigger-scm:
79             credentials-id: '{ssh-credentials}'
80             refspec: '$GERRIT_REFSPEC'
81             choosing-strategy: 'gerrit'
82
83     wrappers:
84         - build-timeout
85         - ssh-agent-credentials:
86             users:
87                 - '{ssh-credentials}'
88
89     triggers:
90         - gerrit-trigger-patch-submitted:
91             name: 'neutron'
92             branch: '{branch}'
93
94     builders:
95         - wipe-org-opendaylight-repo
96         - maven-target:
97             maven-version: '{mvn32}'
98             pom: 'pom.xml'
99             goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r '
100             java-opts:
101                 - '-Xmx1024m -XX:MaxPermSize=256m'
102             settings: '{neutron-settings}'
103             global-settings: '{odl-global-settings}'
104         - jacoco-nojava-workaround
105
106     publishers:
107         - findbugs
108         - email-notification:
109             email-prefix: '[neutron]'
110         - jacoco-report
111
112 - job-template:
113     name: 'neutron-merge-{stream}'
114
115     # Job template for ODL merge jobs
116     #
117     # The purpose of this job template is to setup a ODL merge job
118     # and deploy artifacts to Nexus.
119     #
120     # Required Variables:
121     #     stream:    branch with - in place of / (eg. stable-helium)
122     #     branch:    branch (eg. stable/helium)
123
124     project-type: maven
125     node: dynamic_merge
126     jdk: '{jdk}'
127
128     logrotate:
129         daysToKeep: '{build-days-to-keep}'
130         numToKeep: '{build-num-to-keep}'
131         artifactDaysToKeep: '{build-artifact-days-to-keep}'
132         artifactNumToKeep: '{build-artifact-num-to-keep}'
133
134     parameters:
135         - project-parameter:
136             project: '{project}'
137
138     scm:
139         - gerrit-trigger-scm:
140             credentials-id: '{ssh-credentials}'
141             refspec: ''
142             choosing-strategy: 'default'
143
144     wrappers:
145         - build-timeout
146         - ssh-agent-credentials:
147             users:
148                 - '{ssh-credentials}'
149
150     triggers:
151         - gerrit-trigger-patch-merged:
152             name: 'neutron'
153             branch: '{branch}'
154
155     prebuilders:
156         - wipe-org-opendaylight-repo
157
158     maven:
159         maven-name: '{mvn32}'
160         root-pom: 'pom.xml'
161         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  source:jar javadoc:jar'
162         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
163         settings: '{neutron-settings}'
164         global-settings: '{odl-global-settings}'
165
166     postbuilders:
167         - jacoco-nojava-workaround
168
169     reporters:
170         - findbugs
171
172     publishers:
173         
174         - email-notification:
175             email-prefix: '[neutron]'
176         - maven-deploy:
177             id: ''
178             unique-version: true
179             deploy-unstable: false
180         - jacoco-report
181
182 - job-template:
183     name: 'neutron-daily-{stream}'
184
185     # Job template for daily builders
186     #
187     # The purpose of this job template is to setup a daily/nightly
188     # builder and pushes to Sonar analysis.
189     #
190     # Required Variables:
191     #     stream:    branch with - in place of / (eg. stable-helium)
192     #     branch:    branch (eg. stable/helium)
193
194     project-type: maven
195     node: dynamic_verify
196     jdk: '{jdk}'
197
198     logrotate:
199         daysToKeep: '{build-days-to-keep}'
200         numToKeep: '{build-num-to-keep}'
201         artifactDaysToKeep: '{build-artifact-days-to-keep}'
202         artifactNumToKeep: '{build-artifact-num-to-keep}'
203
204     parameters:
205         - project-parameter:
206             project: '{project}'
207
208     scm:
209         - git-scm:
210             credentials-id: '{ssh-credentials}'
211             refspec: ''
212             branch: '{branch}'
213
214     wrappers:
215         - build-timeout
216         - ssh-agent-credentials:
217             users:
218                 - '{ssh-credentials}'
219
220     triggers:
221         - timed: 'H H * * *'
222
223     prebuilders:
224         - wipe-org-opendaylight-repo
225
226     maven:
227         maven-name: '{mvn32}'
228         root-pom: 'pom.xml'
229         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  source:jar javadoc:jar'
230         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
231         settings: '{neutron-settings}'
232         global-settings: '{odl-global-settings}'
233
234     postbuilders:
235         - jacoco-nojava-workaround
236
237     reporters:
238         - findbugs
239
240     publishers:
241         - email-notification:
242             email-prefix: '[neutron]'
243         - jacoco-report
244
245 - job-template:
246     name: 'neutron-integration-{stream}'
247     disabled: false
248
249     # Job template for ODL merge jobs
250     #
251     # The purpose of this job template is to setup a ODL merge job
252     # and deploy artifacts to Nexus.
253     #
254     # Required Variables:
255     #     stream:    branch with - in place of / (eg. stable-helium)
256     #     branch:    branch (eg. stable/helium)
257
258     project-type: maven
259     node: dynamic_merge
260     jdk: '{jdk}'
261
262     logrotate:
263         daysToKeep: '{build-days-to-keep}'
264         numToKeep: '{build-num-to-keep}'
265         artifactDaysToKeep: '{build-artifact-days-to-keep}'
266         artifactNumToKeep: '{build-artifact-num-to-keep}'
267
268     parameters:
269         - project-parameter:
270             project: '{project}'
271
272     scm:
273         - git-scm:
274             credentials-id: '{ssh-credentials}'
275             refspec: ''
276             branch: '{branch}'
277
278     wrappers:
279         - build-timeout
280         - ssh-agent-credentials:
281             users:
282                 - '{ssh-credentials}'
283
284     triggers:
285         - reverse:
286             jobs: 'odlparent-merge-{stream}'
287             result: 'success'
288
289     prebuilders:
290         - wipe-org-opendaylight-repo
291
292     maven:
293         maven-name: '{mvn32}'
294         root-pom: 'pom.xml'
295         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  source:jar javadoc:jar'
296         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
297         settings: '{neutron-settings}'
298         global-settings: '{odl-global-settings}'
299
300     postbuilders:
301         - jacoco-nojava-workaround
302
303     reporters:
304         - findbugs
305
306     publishers:
307         - email-notification:
308             email-prefix: '[neutron] [odlparent]'
309         - jacoco-report
310
311 - job-template:
312     name: 'neutron-sonar'
313
314     project-type: maven
315     node: dynamic_verify
316     jdk: 'openjdk7'
317
318     logrotate:
319         daysToKeep: '7'
320         numToKeep: '10'
321         artifactDaysToKeep: '1'
322         artifactNumToKeep: '1'
323
324     parameters:
325         - project-parameter:
326             project: '{project}'
327
328     scm:
329         - git-scm:
330             credentials-id: '{ssh-credentials}'
331             refspec: ''
332             branch: 'master'
333
334     wrappers:
335         - build-timeout
336         - ssh-agent-credentials:
337             users:
338                 - '{ssh-credentials}'
339
340     triggers:
341         - timed: 'H H * * *'
342
343     maven:
344         maven-name: '{mvn32}'
345         root-pom: 'pom.xml'
346         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dsonar'
347         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
348         settings: '{neutron-settings}'
349         global-settings: '{odl-global-settings}'
350
351     postbuilders:
352         - jacoco-nojava-workaround
353
354     reporters:
355         - findbugs
356
357     publishers:
358         - sonar:
359             language: 'java'
360             maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
361         - email-notification:
362             email-prefix: '[neutron]'
363         - jacoco-report
364
365 - job-template:
366     name: 'neutron-clm'
367
368     project-type: maven
369     node: dynamic_verify
370     jdk: 'openjdk7'
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
382     scm:
383         - git-scm:
384             credentials-id: '{ssh-credentials}'
385             refspec: ''
386             branch: 'master'
387
388     wrappers:
389         - build-timeout
390         - ssh-agent-credentials:
391             users:
392                 - '{ssh-credentials}'
393
394     triggers:
395         - timed: '@weekly'
396
397     prebuilders:
398         - wipe-org-opendaylight-repo
399
400     maven:
401         maven-name: '{mvn32}'
402         root-pom: 'pom.xml'
403         goals: 'com.sonatype.clm:clm-maven-plugin:index -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
404         maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
405         settings: '{neutron-settings}'
406         global-settings: '{odl-global-settings}'
407
408     postbuilders:
409         - check-clm:
410             application-name: neutron
411
412     publishers:
413         - email-notification:
414             email-prefix: '[neutron]'
415