4 project-name: packaging
7 - '{project-name}-rtd-jobs':
8 build-node: centos7-builder-2c-2g
9 doc-dir: .tox/docs/tmp/html
10 project-pattern: integration/packaging
11 rtd-build-url: https://readthedocs.org/api/v2/webhook/odl-integrationpackaging/32928/
12 rtd-token: 371d63c43ad99b0745bb7779e3488c5e255c1180
13 - 'packaging-build-rpm-{stream}'
14 - 'packaging-build-rpm-{distro}-snap-{stream}'
15 - 'packaging-build-deb-{stream}'
16 - 'packaging-verify-full-rpm-master'
17 - 'packaging-verify-rpm-master'
18 - 'packaging-test-rpm-master'
19 - 'packaging-test-rpm-upgrade-master'
20 - 'packaging-test-deb-master'
25 project: 'integration/packaging'
37 # common parameters required for 'lf-infra-deploy-maven-file' builder
38 group-id: 'org.opendaylight.integration-packaging'
39 upload-files-dir: '$WORKSPACE/upload_files'
40 maven-repo-url: '$NEXUS_URL/content/repositories/$REPO_ID'
43 name: 'packaging-build-rpm-{stream}'
47 node: centos7-builder-2c-2g
49 project-type: freestyle
50 disabled: '{disable-job}'
57 - opendaylight-infra-properties:
61 - opendaylight-infra-parameters:
62 os-cloud: '{os-cloud}'
65 refspec: 'refs/heads/{branch}'
66 artifacts: '{archive-artifacts}'
67 - lf-infra-maven-parameters:
68 mvn-opts: '{mvn-opts}'
69 mvn-params: '{mvn-params}'
70 mvn-version: '{mvn-version}'
71 staging-profile-id: ''
74 # yamllint disable-line rule:line-length
75 default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.4/karaf-0.8.4.tar.gz'
76 description: 'URL to ODL tarball artifact to repackage into RPM'
80 description: 'Name of person who defined RPM'
83 default: 'jenkins-donotreply@opendaylight.org'
84 description: 'Email of person who defined RPM'
87 default: 'opendaylight-{stream}-epel-7-x86_64-devel'
88 description: 'Repository to deploy resulting package to'
90 name: PKG_VERSION_OVERRIDE
92 description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
95 - integration-gerrit-scm:
97 refspec: '$GERRIT_REFSPEC'
101 - opendaylight-infra-wrappers:
102 build-timeout: '{build-timeout}'
106 - shell: !include-raw-escape: build-rpm.sh
107 - install-test-uninstall-rpm
108 - lf-infra-deploy-maven-file:
109 global-settings-file: 'global-settings'
110 settings-file: 'packaging-settings'
111 mvn-version: '{mvn-version}'
112 repo-id: '$DEPLOY_TO_REPO'
113 group-id: '{group-id}'
114 upload-files-dir: '{upload-files-dir}'
115 maven-repo-url: '{maven-repo-url}'
122 name: 'packaging-build-rpm-{distro}-snap-{stream}'
124 node: centos7-docker-2c-2g
127 project-type: freestyle
128 disabled: '{disable-job}'
135 - opendaylight-infra-properties:
136 build-days-to-keep: 7
139 - opendaylight-infra-parameters:
140 os-cloud: '{os-cloud}'
143 refspec: 'refs/heads/{branch}'
144 artifacts: '{archive-artifacts}'
145 - lf-infra-maven-parameters:
146 mvn-opts: '{mvn-opts}'
147 mvn-params: '{mvn-params}'
148 mvn-version: '{mvn-version}'
149 staging-profile-id: ''
153 description: 'Name of person who defined RPM'
155 name: CHANGELOG_EMAIL
156 default: 'jenkins-donotreply@opendaylight.org'
157 description: 'Email of person who defined RPM'
160 - integration-gerrit-scm:
162 refspec: '$GERRIT_REFSPEC'
166 - opendaylight-infra-wrappers:
167 build-timeout: '{build-timeout}'
172 properties-content: |
175 - shell: !include-raw: build-rpm-snap-docker.sh
176 - shell: !include-raw: test-rpm-docker.sh
177 - lf-infra-deploy-maven-file:
178 global-settings-file: 'global-settings'
179 settings-file: 'packaging-settings'
180 mvn-version: '{mvn-version}'
181 repo-id: 'opendaylight-{stream}-{distro}-x86_64-devel'
182 group-id: '{group-id}'
183 upload-files-dir: '{upload-files-dir}'
184 maven-repo-url: '{maven-repo-url}'
194 name: 'packaging-verify-rpm-master'
196 node: centos7-builder-2c-2g
199 project-type: freestyle
200 disabled: '{disable-job}'
203 - opendaylight-infra-parameters:
204 os-cloud: '{os-cloud}'
207 refspec: 'refs/heads/{branch}'
208 artifacts: '{archive-artifacts}'
211 - integration-gerrit-scm:
213 refspec: '$GERRIT_REFSPEC'
217 - opendaylight-infra-wrappers:
218 build-timeout: '{build-timeout}'
221 # Test Fluorine SR2 release tarball
223 # yamllint disable-line rule:line-length
224 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.9.2/karaf-0.9.2.tar.gz'
225 - shell: !include-raw-escape: build-rpm.sh
226 - install-test-uninstall-rpm
228 # Test Neon ('Managed Release Common Distro') release tarball
230 # yamllint disable-line rule:line-length
231 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.10.0/opendaylight-0.10.0.tar.gz'
232 - shell: !include-raw-escape: build-rpm.sh
233 - install-test-uninstall-rpm
235 # Test latest Neon snapshot
237 properties-content: 'STREAM=neon'
238 - shell: !include-raw: build-rpm-snap.sh
239 - install-test-uninstall-rpm
241 # Test latest Sodium snapshot
243 properties-content: 'STREAM=sodium'
244 - shell: !include-raw: build-rpm-snap.sh
245 - install-test-uninstall-rpm
249 - gerrit-trigger-patch-submitted:
250 gerrit-server-name: '{gerrit-server-name}'
261 name: 'packaging-verify-full-rpm-master'
263 node: centos7-builder-2c-2g
266 project-type: freestyle
267 disabled: '{disable-job}'
270 - opendaylight-infra-parameters:
271 os-cloud: '{os-cloud}'
274 refspec: 'refs/heads/{branch}'
275 artifacts: '{archive-artifacts}'
278 - integration-gerrit-scm:
280 refspec: '$GERRIT_REFSPEC'
284 - opendaylight-infra-wrappers:
285 build-timeout: '{build-timeout}'
288 # Test Fluorine ('Managed Release Common Distro') release tarball
290 # yamllint disable-line rule:line-length
291 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.9.0/opendaylight-0.9.0.tar.gz'
292 - shell: !include-raw-escape: build-rpm.sh
293 - install-test-uninstall-rpm
295 # Test Fluorine SR1 release tarball
297 # yamllint disable-line rule:line-length
298 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.9.1/karaf-0.9.1.tar.gz'
299 - shell: !include-raw-escape: build-rpm.sh
300 - install-test-uninstall-rpm
302 # Test Fluorine SR2 release tarball
304 # yamllint disable-line rule:line-length
305 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.9.2/karaf-0.9.2.tar.gz'
306 - shell: !include-raw-escape: build-rpm.sh
307 - install-test-uninstall-rpm
309 # Test Fluorine pre-release autorelease tarball
310 # NB: This will need to be updated as old builds expire
311 # NB: Commented out to reduce maintenance
313 # yamllint disable-line rule:line-length
314 # properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2621/org/opendaylight/integration/karaf/0.9.2/karaf-0.9.2.tar.gz'
315 # - shell: !include-raw-escape: build-rpm.sh
316 # - install-test-uninstall-rpm
318 # Test Fluorine multipatch zip (no parallel tarball available)
319 # NB: This will need to be updated as old builds expire
320 # NB: Commented out to reduce maintenance
322 # yamllint disable-line rule:line-length
323 # properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.9.2-SNAPSHOT/karaf-0.9.2-20181222.162905-8.zip'
324 # - shell: !include-raw-escape: build-rpm.sh
325 # - install-test-uninstall-rpm
327 # Test latest Fluorine snapshot
329 properties-content: 'STREAM=fluorine'
330 - shell: !include-raw: build-rpm-snap.sh
331 - install-test-uninstall-rpm
333 # Test Neon release tarball
335 # yamllint disable-line rule:line-length
336 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.10.0/karaf-0.10.0.tar.gz'
337 - shell: !include-raw-escape: build-rpm.sh
338 - install-test-uninstall-rpm
340 # Test Neon pre-release autorelease tarball
341 # NB: This will need to be updated as old builds expire
342 # NB: Commented out to reduce maintenance
344 # yamllint disable-line rule:line-length
345 # properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2620/org/opendaylight/integration/karaf/0.10.0/karaf-0.10.0.tar.g'
346 # - shell: !include-raw-escape: build-rpm.sh
347 # - install-test-uninstall-rpm
349 # Test Neon multipatch zip (no parallel tarball available)
350 # NB: This will need to be updated as old builds expire
351 # NB: Commented out to reduce maintenance
353 # yamllint disable-line rule:line-length
354 # properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.10.0-SNAPSHOT/karaf-0.10.0-20190103.173010-50.zip'
355 # - shell: !include-raw-escape: build-rpm.sh
356 # - install-test-uninstall-rpm
358 # Test latest Neon snapshot
360 properties-content: 'STREAM=neon'
361 - shell: !include-raw: build-rpm-snap.sh
362 - install-test-uninstall-rpm
364 # Test latest Sodium snapshot
366 properties-content: 'STREAM=sodium'
367 - shell: !include-raw: build-rpm-snap.sh
368 - install-test-uninstall-rpm
373 server-name: '{gerrit-server-name}'
375 - comment-added-contains-event:
376 comment-contains-value: 'verify-rpm-full'
378 - project-compare-type: ANT
379 project-pattern: '{project}'
381 - branch-compare-type: ANT
382 branch-pattern: '**/{branch}'
389 name: 'packaging-test-rpm-master'
391 node: centos7-builder-2c-2g
394 disabled: '{disable-job}'
397 - opendaylight-infra-parameters:
398 os-cloud: '{os-cloud}'
401 refspec: 'refs/heads/{branch}'
402 artifacts: '{archive-artifacts}'
405 # yamllint disable-line rule:line-length
406 default: 'https://git.opendaylight.org/gerrit/gitweb?p=integration/packaging.git;a=blob_plain;f=packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
407 description: 'Link to .repo or .rpm file'
410 - integration-gerrit-scm:
412 refspec: '$GERRIT_REFSPEC'
416 - opendaylight-infra-wrappers:
417 build-timeout: '{build-timeout}'
421 # Install expect to interact with Karaf shell
422 # Install nmap to check status of ODL's SSH port
423 sudo yum install -y expect nmap
424 - shell: !include-raw-escape: install-rpm.sh
425 - shell: !include-raw: start-odl.sh
426 - shell: !include-raw-escape: test-ports-nofeature.sh
427 - shell: !include-raw: test-karaf-oxygensafe.expect
428 # Disable this test until ODLPARENT-139 is fixed
429 # - shell: !include-raw-escape: test-rest-ok.sh
430 - shell: !include-raw: stop-odl.sh
431 - shell: !include-raw: uninstall-rpm.sh
437 # TODO: Remove the archive publisher
438 # small data should be stored on logs.opendaylight.org
439 # large data should be stored on nexus.opendaylight.org
449 name: 'packaging-test-rpm-upgrade-master'
453 node: centos7-builder-2c-2g
454 disabled: '{disable-job}'
457 - opendaylight-infra-parameters:
458 os-cloud: '{os-cloud}'
461 refspec: 'refs/heads/{branch}'
462 artifacts: '{archive-artifacts}'
465 - integration-gerrit-scm:
467 refspec: '$GERRIT_REFSPEC'
471 - opendaylight-infra-wrappers:
472 build-timeout: '{build-timeout}'
475 # Tests (current and future):
476 # * Install latest release, stop/uninstall, install latest CD
477 # * Upgrade from latest release latest CD
478 # * TODO: Upgrade from latest release to proposed packaging/** logic
479 # * TODO: Upgrade from CD to proposed packaging/** logic
480 # * TODO: Upgrade from proposed packaging/** logic (older ODL) to
481 # proposed packaging logic (latest ODL)
483 # Test 1: Install latest release, stop/uninstall, install latest CD
485 # yamllint disable-line rule:line-length
486 properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
487 - install-start-test-stop-uninstall-rpm
489 # yamllint disable-line rule:line-length
490 properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
491 - install-start-test-stop-uninstall-rpm
493 # Test 2: Install latest release, stop, upgrade to latest CD
495 # yamllint disable-line rule:line-length
496 properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
497 - install-start-test-stop-rpm
499 # yamllint disable-line rule:line-length
500 properties-content: 'REPO_CFG_FILE_URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
501 - installrepcfg-upgrade-start-test-stop-rpm
505 - gerrit-trigger-patch-submitted:
506 gerrit-server-name: '{gerrit-server-name}'
517 name: 'packaging-test-deb-master'
519 node: ubuntu1604-mininet-ovs-25-1c-4g
522 disabled: '{disable-job}'
525 - opendaylight-infra-parameters:
526 os-cloud: '{os-cloud}'
529 refspec: 'refs/heads/{branch}'
530 artifacts: '{archive-artifacts}'
533 default: 'ppa:odl-team/oxygen'
534 description: 'Link to .deb package or name of PPA repo'
537 - integration-gerrit-scm:
539 refspec: '$GERRIT_REFSPEC'
543 - opendaylight-infra-wrappers:
544 build-timeout: '{build-timeout}'
547 - shell: !include-raw-escape: install-deb.sh
548 - shell: !include-raw: start-odl.sh
549 - shell: !include-raw-escape: test-ports-nofeature.sh
551 # Install expect to interact with Karaf shell
552 # Install nmap to check status of ODL's SSH port
553 sudo apt-get install -y expect nmap
554 - shell: !include-raw: test-karaf-oxygensafe.expect
555 # Disable this test until ODLPARENT-139 is fixed
556 # - shell: !include-raw-escape: test-rest-ok.sh
557 - shell: !include-raw: stop-odl.sh
558 - shell: !include-raw-escape: uninstall-deb.sh
568 name: 'packaging-build-deb-{stream}'
570 node: ubuntu1604-mininet-ovs-25-1c-4g
573 project-type: freestyle
574 disabled: '{disable-job}'
581 - opendaylight-infra-properties:
582 build-days-to-keep: 7
585 - opendaylight-infra-parameters:
586 os-cloud: '{os-cloud}'
589 refspec: 'refs/heads/{branch}'
590 artifacts: '{archive-artifacts}'
591 - lf-infra-maven-parameters:
592 mvn-opts: '{mvn-opts}'
593 mvn-params: '{mvn-params}'
594 mvn-version: '{mvn-version}'
595 staging-profile-id: ''
598 # FIXME: Update the default value to an active stream.
599 # yamllint disable-line rule:line-length
600 default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.5.3-Boron-SR3/distribution-karaf-0.5.3-Boron-SR3.tar.gz'
601 description: 'URL to ODL tarball artifact to repackage into .deb'
605 description: 'Name of person who defined .deb'
607 name: CHANGELOG_EMAIL
608 default: 'jenkins-donotreply@opendaylight.org'
609 description: 'Email of person who defined .deb'
611 name: PKG_VERSION_OVERRIDE
613 description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
616 - integration-gerrit-scm:
618 refspec: '$GERRIT_REFSPEC'
622 - opendaylight-infra-wrappers:
623 build-timeout: '{build-timeout}'
627 - shell: !include-raw: build-deb.sh
628 - install-test-uninstall-deb
629 - lf-infra-deploy-maven-file:
630 global-settings-file: 'global-settings'
631 settings-file: 'packaging-settings'
632 mvn-version: '{mvn-version}'
633 repo-id: 'opendaylight-{stream}-ubuntu-1604-x86_64-devel'
634 group-id: '{group-id}'
635 upload-files-dir: '{upload-files-dir}'
636 maven-repo-url: '{maven-repo-url}'
648 project-name: packaging