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