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