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