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