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