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