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