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