3 name: distribution-jobs
6 name: 'distribution-verify-{stream}'
8 project-type: freestyle
9 node: centos7-java-builder-2c-8g
14 - opendaylight-infra-properties:
15 build-days-to-keep: '{build-days-to-keep}'
18 - opendaylight-infra-parameters:
19 os-cloud: '{os-cloud}'
22 refspec: 'refs/heads/{branch}'
23 artifacts: '{archive-artifacts} **/dependency_tree.txt **/*.hprof'
24 - integration-patch-refspec:
25 branch: '$GERRIT_REFSPEC'
29 refspec: '$PATCHREFSPEC'
30 choosing-strategy: 'gerrit'
33 - opendaylight-infra-wrappers:
34 build-timeout: '{build-timeout}'
37 - gerrit-trigger-patch-submitted:
38 server: '{server-name}'
44 - wipe-org-opendaylight-repo
45 - provide-maven-settings:
46 global-settings-file: 'odl-global-settings'
47 settings-file: 'integration-settings'
52 clean install dependency:tree -DoutputFile=dependency_tree.txt
54 {opendaylight-infra-mvn-opts}
56 - '-Xmx1024m -XX:MaxPermSize=256m'
57 settings: integration-settings
59 global-settings: odl-global-settings
60 global-settings-type: cfp
65 - opendaylight-infra-shiplogs:
66 maven-version: 'mvn33'
68 email-recipients: '{email-recipients}'
69 email-prefix: '[int/dist]'
72 name: 'distribution-merge-{stream}'
74 # Need to keep jobs that deploy to Nexus at end of build as Maven
75 # projects. Maybe reconsider this once upstream moves deploy to a
77 # https://issues.apache.org/jira/browse/MNG-5666
84 - opendaylight-infra-properties:
85 build-days-to-keep: '{build-days-to-keep}'
88 - opendaylight-infra-parameters:
89 os-cloud: '{os-cloud}'
92 refspec: 'refs/heads/{branch}'
93 artifacts: '{archive-artifacts} **/dependency_tree.txt **/*.hprof **/target/surefire-reports/*-output.txt'
94 - distribution-karaf-version:
95 karaf-version: '{karaf-version}'
100 choosing-strategy: 'default'
103 - opendaylight-infra-wrappers:
104 build-timeout: '{build-timeout}'
107 - gerrit-trigger-patch-merged:
108 server-name: '{server-name}'
109 name: 'integration/distribution'
113 - wipe-org-opendaylight-repo
114 - jacoco-nojava-workaround
115 - provide-maven-settings:
116 global-settings-file: 'odl-global-settings'
117 settings-file: 'integration-settings'
118 - integration-set-variables
119 - distribute-build-url:
120 path: '$KARAF_ARTIFACT/src/main/assembly'
126 clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
127 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
128 -Djenkins -Dmerge -Dstream={stream}
129 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
130 settings: 'integration-settings'
132 global-settings: 'odl-global-settings'
133 global-settings-type: cfp
137 condition-kind: file-exists
138 condition-filename: deploy-site.xml
139 condition-basedir: workspace
141 # The strategy here is intentional to run Maven site:deploy twice
142 # once using regular pom.xml to produce a staged-site which is
143 # then used by deploy-site.xml to push to Nexus. This is a
144 # workaround to Maven Site's default linking code which creates
145 # incorrect URLs for sites due to auto-detection assuming your
146 # project is configured in a certain way which ODL is not.
149 maven-version: 'mvn33'
151 goals: 'site:deploy -V -B -Dstream={stream}'
154 settings: 'integration-settings'
156 global-settings: 'odl-global-settings'
157 global-settings-type: cfp
159 maven-version: 'mvn33'
161 goals: 'site:deploy -V -B -Dstream={stream}'
164 settings: 'integration-settings'
166 global-settings: 'odl-global-settings'
167 global-settings-type: cfp
168 - integration-compare-distributions
169 # TODO: the output of the above command is not *friendly* for the reader because the most important info
170 # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
171 # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
180 deploy-unstable: false
182 - opendaylight-infra-shiplogs:
183 maven-version: 'mvn33'
184 - email-notification:
185 email-recipients: '{email-recipients}'
186 email-prefix: '[int/dist]'
189 name: 'distribution-check-{stream}'
190 # Like a {project}-distribution-check, but one step less as there is no upstream project involved.
193 project-type: freestyle
199 - opendaylight-infra-properties:
200 build-days-to-keep: '{build-days-to-keep}'
203 - opendaylight-infra-parameters:
204 os-cloud: '{os-cloud}'
207 refspec: 'refs/heads/{branch}'
208 artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
209 - distribution-karaf-version:
210 karaf-version: '{karaf-version}'
215 - integration-gerrit-scm:
216 basedir: 'distribution'
217 refspec: '$GERRIT_REFSPEC'
221 - opendaylight-infra-wrappers:
222 # Distro-check jobs typically run within 10 - 30 minutes
223 # with 45 minutes being the occassional edge case.
224 # enforce a 60 minute limit to ensure stuck jobs get
226 # Double that as Karaf 3+4 may take longer.
230 - gerrit-trigger-patch-submitted:
231 server: '{server-name}'
237 - distribution-check-wipe
238 - distribution-check-build-project:
239 pom: 'distribution/pom.xml'
240 mvn-opts: '{opendaylight-infra-mvn-opts}'
241 - distribution-check-verify-groupid:
242 gerrit-project: 'integration'
243 - distribution-check-delete-snapshots
244 - distribution-check-configure-remotes
245 - distribution-check-repeat-build:
246 dist-pom: 'distribution/pom.xml'
247 mvn-opts: '{opendaylight-infra-mvn-opts}'
248 - integration-upload-distribution:
249 dist-pom: distribution/pom.xml
250 - integration-distribution-check
253 - email-notification:
254 email-recipients: '{email-recipients}'
255 email-prefix: '[{project-name}]'
260 mkdir -p $WORKSPACE/archives
261 cp karaf*.log $WORKSPACE/archives
262 script-only-if-succeeded: false
263 script-only-if-failed: false
264 mark-unstable-if-failed: true
265 - opendaylight-infra-shiplogs:
266 maven-version: 'mvn33'
269 name: 'distribution-deploy-{stream}'
270 # Goal: Verify distribution starts with no issues when all features are loaded.
271 # Operation: This job deploys the controller installing odl-integration-all.
272 # FIXME: List required variables.
274 project-type: freestyle
275 node: centos7-java-builder-2c-8g
279 - opendaylight-infra-properties:
280 build-days-to-keep: '{build-days-to-keep}'
283 - opendaylight-infra-parameters:
284 os-cloud: '{os-cloud}'
287 refspec: 'refs/heads/{branch}'
288 artifacts: '{archive-artifacts} **/*.hprof'
289 - integration-distribution-branch:
291 - integration-bundle-url:
292 bundle-url: '{bundle-url}'
293 - integration-jdk-version:
295 - distribution-karaf-version:
296 karaf-version: '{karaf-version}'
299 - opendaylight-infra-wrappers:
300 build-timeout: '{build-timeout}'
302 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
305 - distribution-deploy-verify
308 - email-notification:
309 email-recipients: '{email-recipients}'
310 email-prefix: '[int/dist]'
311 - integration-csit-archive-build
312 - opendaylight-infra-shiplogs:
313 maven-version: 'mvn33'
316 name: 'distribution-offline-{stream}'
317 # Goal: Verify distribution can start with no internet connection.
318 # Operation: This job deploys the controller removing any external repository definition.
319 # FIXME: List required variables.
321 project-type: freestyle
322 node: centos7-java-builder-2c-8g
326 - opendaylight-infra-properties:
327 build-days-to-keep: '{build-days-to-keep}'
330 - opendaylight-infra-parameters:
331 os-cloud: '{os-cloud}'
334 refspec: 'refs/heads/{branch}'
335 artifacts: '{archive-artifacts} **/*.hprof'
336 - integration-distribution-branch:
338 - integration-bundle-url:
339 bundle-url: '{bundle-url}'
340 - integration-jdk-version:
342 - distribution-karaf-version:
343 karaf-version: '{karaf-version}'
346 - opendaylight-infra-wrappers:
347 build-timeout: '{build-timeout}'
349 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
352 - distribution-deploy-offline
355 - email-notification:
356 email-recipients: '{email-recipients}'
357 email-prefix: '[int/dist]'
358 - integration-csit-archive-build
359 - opendaylight-infra-shiplogs:
360 maven-version: 'mvn33'
362 # Delete these when Karaf 4 becomes Nitrogen default.
364 # TODO: Is there a way to de-duplicate with generic template parts?
367 name: 'distribution3-check-nitrogen'
370 project-type: freestyle
376 - opendaylight-infra-properties:
377 build-days-to-keep: '{build-days-to-keep}'
380 - opendaylight-infra-parameters:
381 os-cloud: '{os-cloud}'
384 refspec: refs/heads/master
385 artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
386 - distribution-karaf-version:
387 karaf-version: karaf3
392 - integration-gerrit-scm:
393 basedir: distribution
394 refspec: '$GERRIT_REFSPEC'
398 - opendaylight-infra-wrappers:
399 # Distro-check jobs typically run within 10 - 30 minutes
400 # with 45 minutes being the occassional edge case.
401 # enforce a 60 minute limit to ensure stuck jobs get
403 # Double that as Karaf 3+4 may take longer.
407 - gerrit-trigger-patch-submitted:
408 server: '{server-name}'
414 - distribution-check-wipe
415 - distribution-check-build-project:
416 pom: 'distribution/pom.xml'
417 mvn-opts: '{opendaylight-infra-mvn-opts}'
418 - distribution-check-verify-groupid:
419 gerrit-project: 'integration'
420 - distribution-check-delete-snapshots
421 - distribution-check-configure-remotes
422 - distribution-check-repeat-build:
423 dist-pom: 'distribution/pom.xml'
424 mvn-opts: '{opendaylight-infra-mvn-opts}'
425 - integration-upload-distribution:
426 dist-pom: distribution/pom.xml
427 - integration-distribution-check
430 - email-notification:
431 email-recipients: '{email-recipients}'
432 email-prefix: '[{project-name}]'
437 mkdir -p $WORKSPACE/archives
438 cp karaf*.log $WORKSPACE/archives
439 script-only-if-succeeded: false
440 script-only-if-failed: false
441 mark-unstable-if-failed: true
442 - opendaylight-infra-shiplogs:
443 maven-version: 'mvn33'
446 name: 'distribution3-deploy-nitrogen'
449 project-type: freestyle
450 node: centos7-java-builder-2c-8g
454 - opendaylight-infra-properties:
455 build-days-to-keep: '{build-days-to-keep}'
458 - opendaylight-infra-parameters:
459 os-cloud: '{os-cloud}'
462 refspec: 'refs/heads/master'
463 artifacts: '{archive-artifacts} **/*.hprof'
464 - integration-distribution-branch:
466 - integration-bundle-url:
467 bundle-url: '{bundle-url}'
468 - integration-jdk-version:
470 - distribution-karaf-version:
471 karaf-version: karaf3
474 - opendaylight-infra-wrappers:
475 build-timeout: '{build-timeout}'
477 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
480 - distribution-deploy-verify
483 - email-notification:
484 email-recipients: '{email-recipients}'
485 email-prefix: '[int/dist]'
486 - integration-csit-archive-build
487 - opendaylight-infra-shiplogs:
488 maven-version: 'mvn33'
491 name: 'distribution3-offline-nitrogen'
494 project-type: freestyle
495 node: centos7-java-builder-2c-8g
499 - opendaylight-infra-properties:
500 build-days-to-keep: '{build-days-to-keep}'
503 - opendaylight-infra-parameters:
504 os-cloud: '{os-cloud}'
507 refspec: 'refs/heads/master'
508 artifacts: '{archive-artifacts} **/*.hprof'
509 - integration-distribution-branch:
511 - integration-bundle-url:
512 bundle-url: '{bundle-url}'
513 - integration-jdk-version:
515 - distribution-karaf-version:
516 karaf-version: karaf3
519 - opendaylight-infra-wrappers:
520 build-timeout: '{build-timeout}'
522 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
525 - distribution-deploy-offline
528 - email-notification:
529 email-recipients: '{email-recipients}'
530 email-prefix: '[int/dist]'
531 - integration-csit-archive-build
532 - opendaylight-infra-shiplogs:
533 maven-version: 'mvn33'