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