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'
38 # common parameters required for 'lf-infra-deploy-maven-file' builder
39 group-id: 'org.opendaylight.integration-packaging'
40 upload-files-dir: '$WORKSPACE/upload_files'
41 maven-repo-url: '$NEXUS_URL/content/repositories/$REPO_ID'
44 name: 'packaging-build-rpm-{stream}'
48 node: centos7-builder-2c-2g
50 project-type: freestyle
51 disabled: '{disable-job}'
58 - opendaylight-infra-properties:
62 - opendaylight-infra-parameters:
63 os-cloud: '{os-cloud}'
66 refspec: 'refs/heads/{branch}'
67 artifacts: '{archive-artifacts}'
68 - lf-infra-maven-parameters:
69 mvn-opts: '{mvn-opts}'
70 mvn-params: '{mvn-params}'
71 mvn-version: '{mvn-version}'
72 staging-profile-id: ''
75 # yamllint disable-line rule:line-length
76 default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.4/karaf-0.8.4.tar.gz'
77 description: 'URL to ODL tarball artifact to repackage into RPM'
81 description: 'Name of person who defined RPM'
84 default: 'jenkins-donotreply@opendaylight.org'
85 description: 'Email of person who defined RPM'
88 default: 'opendaylight-{stream}-epel-7-x86_64-devel'
89 description: 'Repository to deploy resulting package to'
91 name: PKG_VERSION_OVERRIDE
93 description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
96 - integration-gerrit-scm:
98 refspec: '$GERRIT_REFSPEC'
102 - opendaylight-infra-wrappers:
103 build-timeout: '{build-timeout}'
107 - shell: !include-raw-escape: build-rpm.sh
108 - install-test-uninstall-rpm
109 - lf-infra-deploy-maven-file:
110 global-settings-file: 'global-settings'
111 settings-file: 'packaging-settings'
112 mvn-version: '{mvn-version}'
113 repo-id: '$DEPLOY_TO_REPO'
114 group-id: '{group-id}'
115 upload-files-dir: '{upload-files-dir}'
116 maven-repo-url: '{maven-repo-url}'
123 name: 'packaging-build-rpm-{distro}-snap-{stream}'
125 node: centos7-docker-2c-2g
128 project-type: freestyle
129 disabled: '{disable-job}'
136 - opendaylight-infra-properties:
137 build-days-to-keep: 7
140 - opendaylight-infra-parameters:
141 os-cloud: '{os-cloud}'
144 refspec: 'refs/heads/{branch}'
145 artifacts: '{archive-artifacts}'
146 - lf-infra-maven-parameters:
147 mvn-opts: '{mvn-opts}'
148 mvn-params: '{mvn-params}'
149 mvn-version: '{mvn-version}'
150 staging-profile-id: ''
154 description: 'Name of person who defined RPM'
156 name: CHANGELOG_EMAIL
157 default: 'jenkins-donotreply@opendaylight.org'
158 description: 'Email of person who defined RPM'
161 - integration-gerrit-scm:
163 refspec: '$GERRIT_REFSPEC'
167 - opendaylight-infra-wrappers:
168 build-timeout: '{build-timeout}'
173 properties-content: |
176 - shell: !include-raw: build-rpm-snap-docker.sh
177 - shell: !include-raw: test-rpm-docker.sh
178 - lf-infra-deploy-maven-file:
179 global-settings-file: 'global-settings'
180 settings-file: 'packaging-settings'
181 mvn-version: '{mvn-version}'
182 repo-id: 'opendaylight-{stream}-{distro}-x86_64-devel'
183 group-id: '{group-id}'
184 upload-files-dir: '{upload-files-dir}'
185 maven-repo-url: '{maven-repo-url}'
195 name: 'packaging-verify-rpm-master'
197 node: centos7-builder-2c-2g
200 project-type: freestyle
201 disabled: '{disable-job}'
204 - opendaylight-infra-parameters:
205 os-cloud: '{os-cloud}'
208 refspec: 'refs/heads/{branch}'
209 artifacts: '{archive-artifacts}'
212 - integration-gerrit-scm:
214 refspec: '$GERRIT_REFSPEC'
218 - opendaylight-infra-wrappers:
219 build-timeout: '{build-timeout}'
222 # Test Oxygen SR4 release tarball
224 # yamllint disable-line rule:line-length
225 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.4/karaf-0.8.4.tar.gz'
226 - shell: !include-raw-escape: build-rpm.sh
227 - install-test-uninstall-rpm
229 # Test Fluorine ('Managed Release Common Distro') release tarball
231 # yamllint disable-line rule:line-length
232 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.9.0/opendaylight-0.9.0.tar.gz'
233 - shell: !include-raw-escape: build-rpm.sh
234 - install-test-uninstall-rpm
236 # Test Fluorine SR1 release tarball
238 # yamllint disable-line rule:line-length
239 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'
240 - shell: !include-raw-escape: build-rpm.sh
241 - install-test-uninstall-rpm
243 # Test Neon pre-release autorelease tarball
244 # NB: This will need to be updated as old builds expire
246 # yamllint disable-line rule:line-length
247 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2620/org/opendaylight/integration/karaf/0.10.0/karaf-0.10.0.tar.gz'
248 - shell: !include-raw-escape: build-rpm.sh
249 - install-test-uninstall-rpm
251 # Test Neon multipatch zip (no parallel tarball available)
252 # NB: This will need to be updated as old builds expire
254 # yamllint disable-line rule:line-length
255 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'
256 - shell: !include-raw-escape: build-rpm.sh
257 - install-test-uninstall-rpm
259 # Test latest Neon snapshot
261 properties-content: 'STREAM=neon'
262 - shell: !include-raw: build-rpm-snap.sh
263 - install-test-uninstall-rpm
267 - gerrit-trigger-patch-submitted:
268 gerrit-server-name: '{gerrit-server-name}'
279 name: 'packaging-verify-full-rpm-master'
281 node: centos7-builder-2c-2g
284 project-type: freestyle
285 disabled: '{disable-job}'
288 - opendaylight-infra-parameters:
289 os-cloud: '{os-cloud}'
292 refspec: 'refs/heads/{branch}'
293 artifacts: '{archive-artifacts}'
296 - integration-gerrit-scm:
298 refspec: '$GERRIT_REFSPEC'
302 - opendaylight-infra-wrappers:
303 build-timeout: '{build-timeout}'
306 # Test Oxygen SR4 release tarball
308 # yamllint disable-line rule:line-length
309 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.4/karaf-0.8.4.tar.gz'
310 - shell: !include-raw-escape: build-rpm.sh
311 - install-test-uninstall-rpm
313 # Test Oxygen pre-release autorelease tarball
314 # NB: This will need to be updated as old builds expire
316 # yamllint disable-line rule:line-length
317 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2622/org/opendaylight/integration/karaf/0.8.5/karaf-0.8.5.tar.gz'
318 - shell: !include-raw-escape: build-rpm.sh
319 - install-test-uninstall-rpm
321 # Test latest Oxygen snapshot
323 properties-content: 'STREAM=oxygen'
324 - shell: !include-raw: build-rpm-snap.sh
325 - install-test-uninstall-rpm
327 # Test Fluorine ('Managed Release Common Distro') release tarball
329 # yamllint disable-line rule:line-length
330 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.9.0/opendaylight-0.9.0.tar.gz'
331 - shell: !include-raw-escape: build-rpm.sh
332 - install-test-uninstall-rpm
334 # Test Fluorine SR1 release tarball
336 # yamllint disable-line rule:line-length
337 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'
338 - shell: !include-raw-escape: build-rpm.sh
339 - install-test-uninstall-rpm
341 # Test Fluorine pre-release autorelease tarball
342 # NB: This will need to be updated as old builds expire
344 # yamllint disable-line rule:line-length
345 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'
346 - shell: !include-raw-escape: build-rpm.sh
347 - install-test-uninstall-rpm
349 # Test Fluorine multipatch zip (no parallel tarball available)
350 # NB: This will need to be updated as old builds expire
352 # yamllint disable-line rule:line-length
353 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'
354 - shell: !include-raw-escape: build-rpm.sh
355 - install-test-uninstall-rpm
357 # Test latest Fluorine snapshot
359 properties-content: 'STREAM=fluorine'
360 - shell: !include-raw: build-rpm-snap.sh
361 - install-test-uninstall-rpm
363 # Test Neon pre-release autorelease tarball
364 # NB: This will need to be updated as old builds expire
366 # yamllint disable-line rule:line-length
367 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'
368 - shell: !include-raw-escape: build-rpm.sh
369 - install-test-uninstall-rpm
371 # Test Neon multipatch zip (no parallel tarball available)
372 # NB: This will need to be updated as old builds expire
374 # yamllint disable-line rule:line-length
375 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'
376 - shell: !include-raw-escape: build-rpm.sh
377 - install-test-uninstall-rpm
379 # Test latest Neon snapshot
381 properties-content: 'STREAM=neon'
382 - shell: !include-raw: build-rpm-snap.sh
383 - install-test-uninstall-rpm
388 server-name: '{gerrit-server-name}'
390 - comment-added-contains-event:
391 comment-contains-value: 'verify-rpm-full'
393 - project-compare-type: ANT
394 project-pattern: '{project}'
396 - branch-compare-type: ANT
397 branch-pattern: '**/{branch}'
404 name: 'packaging-test-rpm-master'
406 node: centos7-builder-2c-2g
409 disabled: '{disable-job}'
412 - opendaylight-infra-parameters:
413 os-cloud: '{os-cloud}'
416 refspec: 'refs/heads/{branch}'
417 artifacts: '{archive-artifacts}'
420 # yamllint disable-line rule:line-length
421 default: 'https://git.opendaylight.org/gerrit/gitweb?p=integration/packaging.git;a=blob_plain;f=packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
422 description: 'Link to .repo or .rpm file'
425 - integration-gerrit-scm:
427 refspec: '$GERRIT_REFSPEC'
431 - opendaylight-infra-wrappers:
432 build-timeout: '{build-timeout}'
436 # Install expect to interact with Karaf shell
437 # Install nmap to check status of ODL's SSH port
438 sudo yum install -y expect nmap
439 - shell: !include-raw-escape: install-rpm.sh
440 - shell: !include-raw: start-odl.sh
441 - shell: !include-raw-escape: test-ports-nofeature.sh
442 - shell: !include-raw: test-karaf-oxygensafe.expect
443 # Disable this test until ODLPARENT-139 is fixed
444 # - shell: !include-raw-escape: test-rest-ok.sh
445 - shell: !include-raw: stop-odl.sh
446 - shell: !include-raw: uninstall-rpm.sh
452 # TODO: Remove the archive publisher
453 # small data should be stored on logs.opendaylight.org
454 # large data should be stored on nexus.opendaylight.org
464 name: 'packaging-test-rpm-upgrade-master'
468 node: centos7-builder-2c-2g
469 disabled: '{disable-job}'
472 - opendaylight-infra-parameters:
473 os-cloud: '{os-cloud}'
476 refspec: 'refs/heads/{branch}'
477 artifacts: '{archive-artifacts}'
480 - integration-gerrit-scm:
482 refspec: '$GERRIT_REFSPEC'
486 - opendaylight-infra-wrappers:
487 build-timeout: '{build-timeout}'
490 # Tests (current and future):
491 # * Install latest release, stop/uninstall, install latest CD
492 # * Upgrade from latest release latest CD
493 # * TODO: Upgrade from latest release to proposed packaging/** logic
494 # * TODO: Upgrade from CD to proposed packaging/** logic
495 # * TODO: Upgrade from proposed packaging/** logic (older ODL) to
496 # proposed packaging logic (latest ODL)
498 # Test 1: Install latest release, stop/uninstall, install latest CD
500 # yamllint disable-line rule:line-length
501 properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
502 - install-start-test-stop-uninstall-rpm
504 # yamllint disable-line rule:line-length
505 properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
506 - install-start-test-stop-uninstall-rpm
508 # Test 2: Install latest release, stop, upgrade to latest CD
510 # yamllint disable-line rule:line-length
511 properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
512 - install-start-test-stop-rpm
514 # yamllint disable-line rule:line-length
515 properties-content: 'REPO_CFG_FILE_URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
516 - installrepcfg-upgrade-start-test-stop-rpm
520 - gerrit-trigger-patch-submitted:
521 gerrit-server-name: '{gerrit-server-name}'
532 name: 'packaging-test-deb-master'
534 node: ubuntu1604-mininet-ovs-25-1c-4g
537 disabled: '{disable-job}'
540 - opendaylight-infra-parameters:
541 os-cloud: '{os-cloud}'
544 refspec: 'refs/heads/{branch}'
545 artifacts: '{archive-artifacts}'
548 default: 'ppa:odl-team/oxygen'
549 description: 'Link to .deb package or name of PPA repo'
552 - integration-gerrit-scm:
554 refspec: '$GERRIT_REFSPEC'
558 - opendaylight-infra-wrappers:
559 build-timeout: '{build-timeout}'
562 - shell: !include-raw-escape: install-deb.sh
563 - shell: !include-raw: start-odl.sh
564 - shell: !include-raw-escape: test-ports-nofeature.sh
566 # Install expect to interact with Karaf shell
567 # Install nmap to check status of ODL's SSH port
568 sudo apt-get install -y expect nmap
569 - shell: !include-raw: test-karaf-oxygensafe.expect
570 # Disable this test until ODLPARENT-139 is fixed
571 # - shell: !include-raw-escape: test-rest-ok.sh
572 - shell: !include-raw: stop-odl.sh
573 - shell: !include-raw-escape: uninstall-deb.sh
583 name: 'packaging-build-deb-{stream}'
585 node: ubuntu1604-mininet-ovs-25-1c-4g
588 project-type: freestyle
589 disabled: '{disable-job}'
596 - opendaylight-infra-properties:
597 build-days-to-keep: 7
600 - opendaylight-infra-parameters:
601 os-cloud: '{os-cloud}'
604 refspec: 'refs/heads/{branch}'
605 artifacts: '{archive-artifacts}'
606 - lf-infra-maven-parameters:
607 mvn-opts: '{mvn-opts}'
608 mvn-params: '{mvn-params}'
609 mvn-version: '{mvn-version}'
610 staging-profile-id: ''
613 # FIXME: Update the default value to an active stream.
614 # yamllint disable-line rule:line-length
615 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'
616 description: 'URL to ODL tarball artifact to repackage into .deb'
620 description: 'Name of person who defined .deb'
622 name: CHANGELOG_EMAIL
623 default: 'jenkins-donotreply@opendaylight.org'
624 description: 'Email of person who defined .deb'
626 name: PKG_VERSION_OVERRIDE
628 description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
631 - integration-gerrit-scm:
633 refspec: '$GERRIT_REFSPEC'
637 - opendaylight-infra-wrappers:
638 build-timeout: '{build-timeout}'
642 - shell: !include-raw: build-deb.sh
643 - install-test-uninstall-deb
644 - lf-infra-deploy-maven-file:
645 global-settings-file: 'global-settings'
646 settings-file: 'packaging-settings'
647 mvn-version: '{mvn-version}'
648 repo-id: 'opendaylight-{stream}-ubuntu-1604-x86_64-devel'
649 group-id: '{group-id}'
650 upload-files-dir: '{upload-files-dir}'
651 maven-repo-url: '{maven-repo-url}'
663 project-name: packaging