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