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