52f0a1848c9827b2bfefc232943216073b79b61d
[releng/builder.git] / jjb / persistence / persistence.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: persistence
8     jobs:
9         - '{name}-clm-{stream}'
10         - '{name}-distribution-{stream}'
11         - '{name}-distribution-check-{stream}'
12         - '{name}-integration-{stream}'
13         - '{name}-periodic-{stream}'
14         - '{name}-validate-autorelease-{stream}'
15         - 'persistence-verify-{stream}'
16         - 'persistence-merge-{stream}'
17         - 'persistence-sonar'
18
19
20     # stream:    release stream (eg. stable-lithium or beryllium)
21     # branch:    git branch (eg. stable/lithium or master)
22     stream:
23         - boron:
24             branch: 'master'
25             jdk: openjdk7
26             jdks:
27                 - openjdk7
28                 - openjdk8
29             disable_autorelease: True
30             disable_distribution_check: False
31         - beryllium:
32             branch: 'stable/beryllium'
33             jdk: openjdk7
34             jdks:
35                 - openjdk7
36                 - openjdk8
37             disable_autorelease: True
38             disable_distribution_check: False
39         - stable-lithium:
40             branch: 'stable/lithium'
41             jdk: openjdk7
42             jdks:
43                 - openjdk7
44                 - openjdk8
45             disable_autorelease: True
46             disable_distribution_check: True
47
48     project: 'persistence'
49     mvn-settings: 'persistence-settings'
50     mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r '
51     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
52     dependencies: 'odlparent-merge-{stream}'
53     email-upstream: '[persistence] [odlparent]'
54
55 # For the Job templates below replace instances of:
56 # PROJECT_SHORTNAME with your project name (eg. circuitsw)
57 # PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
58 # MAVEN_GOALS with your maven goals to build
59 # MAVEN_OPTS with your maven options to build
60
61 - job-template:
62     name: 'persistence-verify-{stream}'
63
64     # Job template for ODL verify jobs
65     #
66     # The purpose of this job template is to setup a ODL verify job
67     #
68     # Required Variables:
69     #     stream:    release stream (eg. stable-lithium or beryllium)
70     #     branch:    git branch (eg. stable/lithium or master)
71
72     project-type: matrix
73     node: matrix_master
74     concurrent: true
75
76     axes:
77         - axis:
78             type: slave
79             name: nodes
80             values:
81                 - dynamic_verify
82         - axis:
83             type: jdk
84             values: '{obj:jdks}'
85
86     logrotate:
87         daysToKeep: '14'
88
89     parameters:
90         - opendaylight-infra-parameters:
91             project: '{project}'
92             branch: '{branch}'
93             refspec: 'refs/heads/{branch}'
94             artifacts: '{archive-artifacts}'
95
96     scm:
97         - gerrit-trigger-scm:
98             refspec: '$GERRIT_REFSPEC'
99             choosing-strategy: 'gerrit'
100
101     wrappers:
102         - opendaylight-infra-wrappers:
103             build-timeout: '{build-timeout}'
104
105     triggers:
106         - gerrit-trigger-patch-submitted:
107             name: 'persistence'
108             branch: '{branch}'
109
110     builders:
111         - jacoco-nojava-workaround
112         - provide-maven-settings:
113             global-settings-file: 'odl-global-settings'
114             settings-file: 'persistence-settings'
115         - maven-target:
116             maven-version: '{mvn33}'
117             pom: 'pom.xml'
118             goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -V -B -Djenkins -Dstream={stream}'
119             java-opts:
120                 - '-Xmx1024m -XX:MaxPermSize=256m'
121             settings: 'persistence-settings'
122             settings-type: cfp
123             global-settings: 'odl-global-settings'
124             global-settings-type: cfp
125
126     publishers:
127         - archive-artifacts:
128             artifacts: '**/target/surefire-reports/*-output.txt, '
129         - findbugs
130         - email-notification:
131             email-prefix: '[persistence]'
132         - jacoco-report
133         - archive-build:
134             maven-version: '{mvn33}'
135
136 - job-template:
137     name: 'persistence-merge-{stream}'
138
139     # Job template for ODL merge jobs
140     #
141     # The purpose of this job template is to setup a ODL merge job
142     # and deploy artifacts to Nexus.
143     #
144     # Required Variables:
145     #     stream:    release stream (eg. stable-lithium or beryllium)
146     #     branch:    git branch (eg. stable/lithium or master)
147
148     project-type: maven
149     node: dynamic_merge
150     jdk: '{jdk}'
151
152     logrotate:
153         daysToKeep: '14'
154         numToKeep: '10'
155         artifactDaysToKeep: '{build-artifact-days-to-keep}'
156         artifactNumToKeep: '{build-artifact-num-to-keep}'
157
158     parameters:
159         - opendaylight-infra-parameters:
160             project: '{project}'
161             branch: '{branch}'
162             refspec: 'refs/heads/{branch}'
163             artifacts: '{archive-artifacts}'
164
165     scm:
166         - gerrit-trigger-scm:
167             refspec: ''
168             choosing-strategy: 'default'
169
170     wrappers:
171         - opendaylight-infra-wrappers:
172             build-timeout: '{build-timeout}'
173
174     triggers:
175         - timed: 'H H * * 0'
176         - gerrit-trigger-patch-merged:
177             name: 'persistence'
178             branch: '{branch}'
179
180     prebuilders:
181         - jacoco-nojava-workaround
182         - provide-maven-settings:
183             global-settings-file: 'odl-global-settings'
184             settings-file: 'persistence-settings'
185
186     maven:
187         maven-name: '{mvn33}'
188         root-pom: 'pom.xml'
189         goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -V -B -Djenkins -Dmerge -Dstream={stream}'
190         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
191         settings: 'persistence-settings'
192         settings-type: cfp
193         global-settings: 'odl-global-settings'
194         global-settings-type: cfp
195         post-step-run-condition: UNSTABLE
196
197     postbuilders:
198         - conditional-step:
199             condition-kind: file-exists
200             condition-filename: deploy-site.xml
201             condition-basedir: workspace
202
203             # The strategy here is intentional to run Maven site:deploy twice
204             # once using regular pom.xml to produce a staged-site which is
205             # then used by deploy-site.xml to push to Nexus. This is a
206             # workaround to Maven Site's default linking code which creates
207             # incorrect URLs for sites due to auto-detection assuming your
208             # project is configured in a certain way which ODL is not.
209             steps:
210             - maven-target:
211                 maven-version: '{mvn33}'
212                 pom: pom.xml
213                 goals: 'site:deploy -V -B -Dstream={stream}'
214                 java-opts:
215                     - '-Xmx2g'
216                 settings: 'persistence-settings'
217                 settings-type: cfp
218                 global-settings: 'odl-global-settings'
219                 global-settings-type: cfp
220             - maven-target:
221                 maven-version: '{mvn33}'
222                 pom: deploy-site.xml
223                 goals: 'site:deploy -V -B -Dstream={stream}'
224                 java-opts:
225                     - '-Xmx2g'
226                 settings: 'persistence-settings'
227                 settings-type: cfp
228                 global-settings: 'odl-global-settings'
229                 global-settings-type: cfp
230
231     reporters:
232         - findbugs
233
234     publishers:
235         - archive-artifacts:
236             artifacts: '**/target/surefire-reports/*-output.txt, '
237         - email-notification:
238             email-prefix: '[persistence]'
239         - maven-deploy:
240             id: ''
241             unique-version: true
242             deploy-unstable: false
243         - jacoco-report
244         - archive-build:
245             maven-version: '{mvn33}'
246
247 - job-template:
248     name: 'persistence-sonar'
249     disabled: false
250
251     project-type: maven
252     node: dynamic_verify
253     jdk: 'openjdk8'
254
255     logrotate:
256         daysToKeep: '7'
257         numToKeep: '10'
258         artifactDaysToKeep: '1'
259         artifactNumToKeep: '1'
260
261     parameters:
262         - opendaylight-infra-parameters:
263             project: '{project}'
264             branch: '{branch}'
265             refspec: 'refs/heads/{branch}'
266             artifacts: '{archive-artifacts}'
267
268     scm:
269         - git-scm:
270             refspec: ''
271             branch: 'master'
272
273     wrappers:
274         - opendaylight-infra-wrappers:
275             build-timeout: '{build-timeout}'
276
277     triggers:
278         - timed: 'H H * * 6'
279         - gerrit-trigger-patch-sonar:
280             name: 'persistence'
281
282     prebuilders:
283         - jacoco-nojava-workaround
284         - provide-maven-settings:
285             global-settings-file: 'odl-global-settings'
286             settings-file: 'persistence-settings'
287
288     maven:
289         maven-name: '{mvn33}'
290         root-pom: 'pom.xml'
291         goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -V -B -Djenkins -Dsonar'
292         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
293         settings: 'persistence-settings'
294         settings-type: cfp
295         global-settings: 'odl-global-settings'
296         global-settings-type: cfp
297
298     reporters:
299         - findbugs
300
301     publishers:
302         - sonar:
303             language: 'java'
304             maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
305         - email-notification:
306             email-prefix: '[persistence]'
307         - jacoco-report
308         - archive-build:
309             maven-version: '{mvn33}'
310