Merge "Fix sdninterfaceapp MVN_GOALS override"
[releng/builder.git] / jjb / openflowplugin / openflowplugin.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: openflowplugin
8     jobs:
9         - 'openflowplugin-verify-{stream}'
10         - 'openflowplugin-merge-{stream}'
11         - 'openflowplugin-daily-{stream}'
12         - 'openflowplugin-integration-{stream}'
13         - 'openflowplugin-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: 'openflowplugin'
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: 'openflowplugin-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: 'openflowplugin'
85             branch: '{branch}'
86
87     builders:
88         - wipe-org-opendaylight-repo
89         - maven-target:
90             maven-version: '{mvn32}'
91             pom: 'pom.xml'
92             goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate'
93             java-opts:
94                 - '-Xmx1024m -XX:MaxPermSize=256m'
95             settings: '{openflowplugin-settings}'
96             global-settings: '{odl-global-settings}'
97         - jacoco-nojava-workaround
98
99     publishers:
100         - email-notification:
101             email-prefix: '[openflowplugin]'
102         - jacoco-report
103
104 - job-template:
105     name: 'openflowplugin-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: 'openflowplugin'
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: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate source:jar javadoc:jar'
153         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
154         settings: '{openflowplugin-settings}'
155         global-settings: '{odl-global-settings}'
156
157     postbuilders:
158         - jacoco-nojava-workaround
159
160     publishers:
161         - archive-artifacts:
162             artifacts: 'model/*/target/site/**'
163         - email-notification:
164             email-prefix: '[openflowplugin]'
165         - maven-deploy:
166             id: ''
167             unique-version: true
168             deploy-unstable: false
169         - jacoco-report
170
171 - job-template:
172     name: 'openflowplugin-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: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate source:jar javadoc:jar'
218         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
219         settings: '{openflowplugin-settings}'
220         global-settings: '{odl-global-settings}'
221
222     postbuilders:
223         - jacoco-nojava-workaround
224
225     publishers:
226         - email-notification:
227             email-prefix: '[openflowplugin]'
228         - jacoco-report
229
230 - job-template:
231     name: 'openflowplugin-integration-{stream}'
232     disabled: false
233
234     # Job template for ODL merge jobs
235     #
236     # The purpose of this job template is to setup a ODL merge job
237     # and deploy artifacts to Nexus.
238     #
239     # Required Variables:
240     #     stream:    branch with - in place of / (eg. stable-helium)
241     #     branch:    branch (eg. stable/helium)
242
243     project-type: maven
244     node: dynamic_merge
245     jdk: '{jdk}'
246
247     logrotate:
248         daysToKeep: '{build-days-to-keep}'
249         numToKeep: '{build-num-to-keep}'
250         artifactDaysToKeep: '{build-artifact-days-to-keep}'
251         artifactNumToKeep: '{build-artifact-num-to-keep}'
252
253     parameters:
254         - project-parameter:
255             project: '{project}'
256
257     scm:
258         - git-scm:
259             credentials-id: '{ssh-credentials}'
260             refspec: ''
261             branch: '{branch}'
262
263     wrappers:
264         - build-timeout
265         - ssh-agent-credentials:
266             user: '{ssh-credentials}'
267
268     triggers:
269         - reverse:
270             jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream},openflowjava-merge-{stream}'
271             result: 'success'
272
273     prebuilders:
274         - wipe-org-opendaylight-repo
275
276     maven:
277         maven-name: '{mvn32}'
278         root-pom: 'pom.xml'
279         goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate source:jar javadoc:jar'
280         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
281         settings: '{openflowplugin-settings}'
282         global-settings: '{odl-global-settings}'
283
284     postbuilders:
285         - jacoco-nojava-workaround
286
287     publishers:
288         - email-notification:
289             email-prefix: '[openflowplugin] [odlparent] [yangtools] [controller] [openflowjava]'
290         - jacoco-report
291
292 - job-template:
293     name: 'openflowplugin-sonar'
294
295     project-type: maven
296     node: dynamic_verify
297     jdk: '{jdk}'
298
299     logrotate:
300         daysToKeep: '7'
301         numToKeep: '10'
302         artifactDaysToKeep: '1'
303         artifactNumToKeep: '1'
304
305     parameters:
306         - project-parameter:
307             project: '{project}'
308
309     scm:
310         - git-scm:
311             credentials-id: '{ssh-credentials}'
312             refspec: ''
313             branch: 'master'
314
315     wrappers:
316         - build-timeout
317         - ssh-agent-credentials:
318             user: '{ssh-credentials}'
319
320     triggers:
321         - timed: 'H H * * *'
322
323     maven:
324         maven-name: '{mvn32}'
325         root-pom: 'pom.xml'
326         goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate -Dsonar'
327         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
328         settings: '{openflowplugin-settings}'
329         global-settings: '{odl-global-settings}'
330
331     postbuilders:
332         - jacoco-nojava-workaround
333
334     publishers:
335         - sonar:
336             language: 'java'
337             maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
338         - email-notification:
339             email-prefix: '[openflowplugin]'
340         - jacoco-report
341