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}':
17 - 'packaging-verify-full-rpm-master'
18 - 'packaging-verify-rpm-master'
19 - 'packaging-test-rpm-master'
20 - 'packaging-test-rpm-upgrade-master'
21 - 'packaging-test-deb-master':
27 project: 'integration/packaging'
39 # common parameters required for 'lf-infra-deploy-maven-file' builder
40 group-id: 'org.opendaylight.integration-packaging'
41 upload-files-dir: '$WORKSPACE/upload_files'
42 maven-repo-url: '$NEXUS_URL/content/repositories/$REPO_ID'
45 name: 'packaging-build-rpm-{stream}'
49 node: centos7-builder-2c-2g
51 project-type: freestyle
52 disabled: '{disable-job}'
59 - opendaylight-infra-properties:
63 - opendaylight-infra-parameters:
64 os-cloud: '{os-cloud}'
67 refspec: 'refs/heads/{branch}'
68 artifacts: '{archive-artifacts}'
69 - lf-infra-maven-parameters:
70 mvn-opts: '{mvn-opts}'
71 mvn-params: '{mvn-params}'
72 mvn-version: '{mvn-version}'
73 staging-profile-id: ''
76 # yamllint disable-line rule:line-length
77 default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.4/karaf-0.8.4.tar.gz'
78 description: 'URL to ODL tarball artifact to repackage into RPM'
82 description: 'Name of person who defined RPM'
85 default: 'jenkins-donotreply@opendaylight.org'
86 description: 'Email of person who defined RPM'
89 default: 'opendaylight-{stream}-epel-7-x86_64-devel'
90 description: 'Repository to deploy resulting package to'
92 name: PKG_VERSION_OVERRIDE
94 description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
97 - integration-gerrit-scm:
99 refspec: '$GERRIT_REFSPEC'
103 - opendaylight-infra-wrappers:
104 build-timeout: '{build-timeout}'
108 - shell: !include-raw-escape: build-rpm.sh
109 - install-test-uninstall-rpm
110 - lf-infra-deploy-maven-file:
111 global-settings-file: 'global-settings'
112 settings-file: 'packaging-settings'
113 mvn-version: '{mvn-version}'
114 repo-id: '$DEPLOY_TO_REPO'
115 group-id: '{group-id}'
116 upload-files-dir: '{upload-files-dir}'
117 maven-repo-url: '{maven-repo-url}'
124 name: 'packaging-build-rpm-{distro}-snap-{stream}'
126 node: centos7-docker-2c-2g
129 project-type: freestyle
130 disabled: '{disable-job}'
137 - opendaylight-infra-properties:
138 build-days-to-keep: 7
141 - opendaylight-infra-parameters:
142 os-cloud: '{os-cloud}'
145 refspec: 'refs/heads/{branch}'
146 artifacts: '{archive-artifacts}'
147 - lf-infra-maven-parameters:
148 mvn-opts: '{mvn-opts}'
149 mvn-params: '{mvn-params}'
150 mvn-version: '{mvn-version}'
151 staging-profile-id: ''
155 description: 'Name of person who defined RPM'
157 name: CHANGELOG_EMAIL
158 default: 'jenkins-donotreply@opendaylight.org'
159 description: 'Email of person who defined RPM'
162 - integration-gerrit-scm:
164 refspec: '$GERRIT_REFSPEC'
168 - opendaylight-infra-wrappers:
169 build-timeout: '{build-timeout}'
174 properties-content: |
177 - shell: !include-raw: build-rpm-snap-docker.sh
178 - shell: !include-raw: test-rpm-docker.sh
179 - lf-infra-deploy-maven-file:
180 global-settings-file: 'global-settings'
181 settings-file: 'packaging-settings'
182 mvn-version: '{mvn-version}'
183 repo-id: 'opendaylight-{stream}-{distro}-x86_64-devel'
184 group-id: '{group-id}'
185 upload-files-dir: '{upload-files-dir}'
186 maven-repo-url: '{maven-repo-url}'
196 name: 'packaging-verify-rpm-master'
198 node: centos7-builder-2c-2g
201 project-type: freestyle
202 disabled: '{disable-job}'
205 - opendaylight-infra-parameters:
206 os-cloud: '{os-cloud}'
209 refspec: 'refs/heads/{branch}'
210 artifacts: '{archive-artifacts}'
213 - integration-gerrit-scm:
215 refspec: '$GERRIT_REFSPEC'
219 - opendaylight-infra-wrappers:
220 build-timeout: '{build-timeout}'
223 # Test Fluorine SR2 release tarball
225 # yamllint disable-line rule:line-length
226 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'
227 - shell: !include-raw-escape: build-rpm.sh
228 - install-test-uninstall-rpm
230 # Test Neon SR1 ('Managed Release Common Distro') release tarball
232 # yamllint disable-line rule:line-length
233 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.10.1/opendaylight-0.10.1.tar.gz'
234 - shell: !include-raw-escape: build-rpm.sh
235 - install-test-uninstall-rpm
237 # Test latest Neon snapshot
239 properties-content: 'STREAM=neon'
240 - shell: !include-raw: build-rpm-snap.sh
241 - install-test-uninstall-rpm
243 # Test latest Sodium snapshot
245 properties-content: 'STREAM=sodium'
246 - shell: !include-raw: build-rpm-snap.sh
247 - install-test-uninstall-rpm
251 - gerrit-trigger-patch-submitted:
252 gerrit-server-name: '{gerrit-server-name}'
263 name: 'packaging-verify-full-rpm-master'
265 node: centos7-builder-2c-2g
268 project-type: freestyle
269 disabled: '{disable-job}'
272 - opendaylight-infra-parameters:
273 os-cloud: '{os-cloud}'
276 refspec: 'refs/heads/{branch}'
277 artifacts: '{archive-artifacts}'
280 - integration-gerrit-scm:
282 refspec: '$GERRIT_REFSPEC'
286 - opendaylight-infra-wrappers:
287 build-timeout: '{build-timeout}'
290 # Test Fluorine ('Managed Release Common Distro') release tarball
292 # yamllint disable-line rule:line-length
293 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.9.0/opendaylight-0.9.0.tar.gz'
294 - shell: !include-raw-escape: build-rpm.sh
295 - install-test-uninstall-rpm
297 # Test Fluorine SR1 release tarball
299 # yamllint disable-line rule:line-length
300 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'
301 - shell: !include-raw-escape: build-rpm.sh
302 - install-test-uninstall-rpm
304 # Test Fluorine SR2 release tarball
306 # yamllint disable-line rule:line-length
307 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'
308 - shell: !include-raw-escape: build-rpm.sh
309 - install-test-uninstall-rpm
311 # Test Fluorine pre-release autorelease tarball
312 # NB: This will need to be updated as old builds expire
313 # NB: Commented out to reduce maintenance
315 # yamllint disable-line rule:line-length
316 # 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'
317 # - shell: !include-raw-escape: build-rpm.sh
318 # - install-test-uninstall-rpm
320 # Test Fluorine multipatch zip (no parallel tarball available)
321 # NB: This will need to be updated as old builds expire
322 # NB: Commented out to reduce maintenance
324 # yamllint disable-line rule:line-length
325 # 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'
326 # - shell: !include-raw-escape: build-rpm.sh
327 # - install-test-uninstall-rpm
329 # Test latest Fluorine snapshot
331 properties-content: 'STREAM=fluorine'
332 - shell: !include-raw: build-rpm-snap.sh
333 - install-test-uninstall-rpm
335 # Test Neon SR1 release tarball
337 # yamllint disable-line rule:line-length
338 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.10.1/karaf-0.10.1.tar.gz'
339 - shell: !include-raw-escape: build-rpm.sh
340 - install-test-uninstall-rpm
342 # Test Neon pre-release autorelease tarball
343 # NB: This will need to be updated as old builds expire
344 # NB: Commented out to reduce maintenance
346 # yamllint disable-line rule:line-length
347 # 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'
348 # - shell: !include-raw-escape: build-rpm.sh
349 # - install-test-uninstall-rpm
351 # Test Neon multipatch zip (no parallel tarball available)
352 # NB: This will need to be updated as old builds expire
353 # NB: Commented out to reduce maintenance
355 # yamllint disable-line rule:line-length
356 # 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'
357 # - shell: !include-raw-escape: build-rpm.sh
358 # - install-test-uninstall-rpm
360 # Test latest Neon snapshot
362 properties-content: 'STREAM=neon'
363 - shell: !include-raw: build-rpm-snap.sh
364 - install-test-uninstall-rpm
366 # Test latest Sodium snapshot
368 properties-content: 'STREAM=sodium'
369 - shell: !include-raw: build-rpm-snap.sh
370 - install-test-uninstall-rpm
375 server-name: '{gerrit-server-name}'
377 - comment-added-contains-event:
378 comment-contains-value: 'verify-rpm-full'
380 - project-compare-type: ANT
381 project-pattern: '{project}'
383 - branch-compare-type: ANT
384 branch-pattern: '**/{branch}'
391 name: 'packaging-test-rpm-master'
393 node: centos7-builder-2c-2g
396 disabled: '{disable-job}'
399 - opendaylight-infra-parameters:
400 os-cloud: '{os-cloud}'
403 refspec: 'refs/heads/{branch}'
404 artifacts: '{archive-artifacts}'
407 # yamllint disable-line rule:line-length
408 default: 'https://git.opendaylight.org/gerrit/gitweb?p=integration/packaging.git;a=blob_plain;f=packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
409 description: 'Link to .repo or .rpm file'
412 - integration-gerrit-scm:
414 refspec: '$GERRIT_REFSPEC'
418 - opendaylight-infra-wrappers:
419 build-timeout: '{build-timeout}'
423 # Install expect to interact with Karaf shell
424 # Install nmap to check status of ODL's SSH port
425 sudo yum install -y expect nmap
426 - shell: !include-raw-escape: install-rpm.sh
427 - shell: !include-raw: start-odl.sh
428 - shell: !include-raw-escape: test-ports-nofeature.sh
429 - shell: !include-raw: test-karaf-oxygensafe.expect
430 # Disable this test until ODLPARENT-139 is fixed
431 # - shell: !include-raw-escape: test-rest-ok.sh
432 - shell: !include-raw: stop-odl.sh
433 - shell: !include-raw: uninstall-rpm.sh
439 # TODO: Remove the archive publisher
440 # small data should be stored on logs.opendaylight.org
441 # large data should be stored on nexus.opendaylight.org
451 name: 'packaging-test-rpm-upgrade-master'
455 node: centos7-builder-2c-2g
456 disabled: '{disable-job}'
459 - opendaylight-infra-parameters:
460 os-cloud: '{os-cloud}'
463 refspec: 'refs/heads/{branch}'
464 artifacts: '{archive-artifacts}'
467 - integration-gerrit-scm:
469 refspec: '$GERRIT_REFSPEC'
473 - opendaylight-infra-wrappers:
474 build-timeout: '{build-timeout}'
477 # Tests (current and future):
478 # * Install latest release, stop/uninstall, install latest CD
479 # * Upgrade from latest release latest CD
480 # * TODO: Upgrade from latest release to proposed packaging/** logic
481 # * TODO: Upgrade from CD to proposed packaging/** logic
482 # * TODO: Upgrade from proposed packaging/** logic (older ODL) to
483 # proposed packaging logic (latest ODL)
485 # Test 1: Install latest release, stop/uninstall, install latest CD
487 # yamllint disable-line rule:line-length
488 properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
489 - install-start-test-stop-uninstall-rpm
491 # yamllint disable-line rule:line-length
492 properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
493 - install-start-test-stop-uninstall-rpm
495 # Test 2: Install latest release, stop, upgrade to latest CD
497 # yamllint disable-line rule:line-length
498 properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
499 - install-start-test-stop-rpm
501 # yamllint disable-line rule:line-length
502 properties-content: 'REPO_CFG_FILE_URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
503 - installrepcfg-upgrade-start-test-stop-rpm
507 - gerrit-trigger-patch-submitted:
508 gerrit-server-name: '{gerrit-server-name}'
519 name: 'packaging-test-deb-master'
521 node: ubuntu1604-mininet-ovs-25-1c-4g
524 disabled: '{disable-job}'
527 - opendaylight-infra-parameters:
528 os-cloud: '{os-cloud}'
531 refspec: 'refs/heads/{branch}'
532 artifacts: '{archive-artifacts}'
535 default: 'ppa:odl-team/oxygen'
536 description: 'Link to .deb package or name of PPA repo'
539 - integration-gerrit-scm:
541 refspec: '$GERRIT_REFSPEC'
545 - opendaylight-infra-wrappers:
546 build-timeout: '{build-timeout}'
549 - shell: !include-raw-escape: install-deb.sh
550 - shell: !include-raw: start-odl.sh
551 - shell: !include-raw-escape: test-ports-nofeature.sh
553 # Install expect to interact with Karaf shell
554 # Install nmap to check status of ODL's SSH port
555 sudo apt-get install -y expect nmap
556 - shell: !include-raw: test-karaf-oxygensafe.expect
557 # Disable this test until ODLPARENT-139 is fixed
558 # - shell: !include-raw-escape: test-rest-ok.sh
559 - shell: !include-raw: stop-odl.sh
560 - shell: !include-raw-escape: uninstall-deb.sh
570 name: 'packaging-build-deb-{stream}'
572 node: ubuntu1604-mininet-ovs-25-1c-4g
575 project-type: freestyle
576 disabled: '{disable-job}'
583 - opendaylight-infra-properties:
584 build-days-to-keep: 7
587 - opendaylight-infra-parameters:
588 os-cloud: '{os-cloud}'
591 refspec: 'refs/heads/{branch}'
592 artifacts: '{archive-artifacts}'
593 - lf-infra-maven-parameters:
594 mvn-opts: '{mvn-opts}'
595 mvn-params: '{mvn-params}'
596 mvn-version: '{mvn-version}'
597 staging-profile-id: ''
600 # FIXME: Update the default value to an active stream.
601 # yamllint disable-line rule:line-length
602 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'
603 description: 'URL to ODL tarball artifact to repackage into .deb'
607 description: 'Name of person who defined .deb'
609 name: CHANGELOG_EMAIL
610 default: 'jenkins-donotreply@opendaylight.org'
611 description: 'Email of person who defined .deb'
613 name: PKG_VERSION_OVERRIDE
615 description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
618 - integration-gerrit-scm:
620 refspec: '$GERRIT_REFSPEC'
624 - opendaylight-infra-wrappers:
625 build-timeout: '{build-timeout}'
629 - shell: !include-raw: build-deb.sh
630 - install-test-uninstall-deb
631 - lf-infra-deploy-maven-file:
632 global-settings-file: 'global-settings'
633 settings-file: 'packaging-settings'
634 mvn-version: '{mvn-version}'
635 repo-id: 'opendaylight-{stream}-ubuntu-1604-x86_64-devel'
636 group-id: '{group-id}'
637 upload-files-dir: '{upload-files-dir}'
638 maven-repo-url: '{maven-repo-url}'
650 project-name: packaging