Update automated project templates
[releng/builder.git] / jjb / openflowjava / openflowjava.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: openflowjava
8     jobs:
9         - 'openflowjava-verify-{stream}'
10         - 'openflowjava-merge-{stream}'
11         - 'openflowjava-daily-{stream}'
12         - 'openflowjava-integration-{stream}'
13         - 'openflowjava-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: 'openflowjava'
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: 'openflowjava-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: 'openflowjava'
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: '{openflowjava-settings}'
84         global-settings: '{odl-global-settings}'
85         ignore-upstream-changes: true
86
87     publishers:
88         - email-notification:
89             email-prefix: '[openflowjava]'
90         - jacoco-report
91
92 - job-template:
93     name: 'openflowjava-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: 'openflowjava'
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: '{openflowjava-settings}'
143         global-settings: '{odl-global-settings}'
144
145     publishers:
146         - email-notification:
147             email-prefix: '[openflowjava]'
148         - maven-deploy:
149             id: ''
150             unique-version: true
151             deploy-unstable: false
152         - jacoco-report
153
154 - job-template:
155     name: 'openflowjava-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: '{openflowjava-settings}'
203         global-settings: '{odl-global-settings}'
204
205     publishers:
206         
207         - email-notification:
208             email-prefix: '[openflowjava]'
209         - jacoco-report
210
211 - job-template:
212     name: 'openflowjava-integration-{stream}'
213     disabled: false
214
215     # Job template for ODL merge jobs
216     #
217     # The purpose of this job template is to setup a ODL merge job
218     # and deploy artifacts to Nexus.
219     #
220     # Required Variables:
221     #     stream:    branch with - in place of / (eg. stable-helium)
222     #     branch:    branch (eg. stable/helium)
223
224     project-type: maven
225     node: dynamic_merge
226     jdk: '{jdk}'
227
228     logrotate:
229         daysToKeep: '{build-days-to-keep}'
230         numToKeep: '{build-num-to-keep}'
231         artifactDaysToKeep: '{build-artifact-days-to-keep}'
232         artifactNumToKeep: '{build-artifact-num-to-keep}'
233
234     parameters:
235         - project-parameter:
236             project: '{project}'
237
238     scm:
239         - git-scm:
240             credentials-id: '{ssh-credentials}'
241             refspec: ''
242             branch: '{branch}'
243
244     wrappers:
245         - build-timeout
246         - ssh-agent-credentials:
247             user: '{ssh-credentials}'
248
249     triggers:
250         - reverse:
251             jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
252             result: 'success'
253
254     prebuilders:
255         - wipe-org-opendaylight-repo
256
257     maven:
258         maven-name: '{mvn32}'
259         root-pom: 'pom.xml'
260         goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo  source:jar javadoc:jar'
261         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
262         settings: '{openflowjava-settings}'
263         global-settings: '{odl-global-settings}'
264
265     publishers:
266         - email-notification:
267             email-prefix: '[openflowjava] [odlparent] [yangtools] [controller]'
268         - maven-deploy:
269             id: ''
270             unique-version: true
271             deploy-unstable: false
272         - jacoco-report
273
274 - job-template:
275     name: 'openflowjava-sonar'
276
277     project-type: maven
278     node: dynamic_verify
279     jdk: '{jdk}'
280
281     logrotate:
282         daysToKeep: '7'
283         numToKeep: '10'
284         artifactDaysToKeep: '1'
285         artifactNumToKeep: '1'
286
287     parameters:
288         - project-parameter:
289             project: '{project}'
290
291     scm:
292         - git-scm:
293             credentials-id: '{ssh-credentials}'
294             refspec: ''
295             branch: 'master'
296
297     wrappers:
298         - build-timeout
299         - ssh-agent-credentials:
300             user: '{ssh-credentials}'
301
302     triggers:
303         - timed: 'H H * * *'
304
305     maven:
306         maven-name: '{mvn32}'
307         root-pom: 'pom.xml'
308         goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo  -Dsonar'
309         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
310         settings: '{openflowjava-settings}'
311         global-settings: '{odl-global-settings}'
312
313     publishers:
314         - sonar:
315             language: 'java'
316             maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
317         - email-notification:
318             email-prefix: '[openflowjava]'
319         - jacoco-report