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