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