Merge "Adding System Test for NSF in Helium branch"
[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         - jacoco-report
283
284 - job-template:
285     name: 'vtn-sonar'
286
287     project-type: maven
288     node: dynamic_verify
289     jdk: '{jdk}'
290
291     logrotate:
292         daysToKeep: '7'
293         numToKeep: '10'
294         artifactDaysToKeep: '1'
295         artifactNumToKeep: '1'
296
297     parameters:
298         - project-parameter:
299             project: '{project}'
300
301     scm:
302         - git-scm:
303             credentials-id: '{ssh-credentials}'
304             refspec: ''
305             branch: 'master'
306
307     wrappers:
308         - build-timeout
309         - ssh-agent-credentials:
310             user: '{ssh-credentials}'
311
312     triggers:
313         - timed: 'H H * * *'
314
315     maven:
316         maven-name: '{mvn32}'
317         root-pom: 'pom.xml'
318         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'
319         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
320         settings: '{vtn-settings}'
321         global-settings: '{odl-global-settings}'
322
323     postbuilders:
324         - jacoco-nojava-workaround
325
326     publishers:
327         - sonar:
328             language: 'java'
329             maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
330         - email-notification:
331             email-prefix: '[vtn]'
332         - jacoco-report
333