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