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