--- - project: name: packaging project-name: packaging jobs: - '{project-name}-rtd-jobs': build-node: centos7-builder-2c-2g doc-dir: .tox/docs/tmp/html project-pattern: integration/packaging rtd-build-url: https://readthedocs.org/api/v2/webhook/odl-integrationpackaging/32928/ rtd-token: 371d63c43ad99b0745bb7779e3488c5e255c1180 - 'packaging-build-rpm-{stream}' - 'packaging-build-rpm-{distro}-snap-{stream}' - 'packaging-build-deb-{stream}' - 'packaging-verify-full-rpm-master' - 'packaging-verify-rpm-master' - 'packaging-test-rpm-master' - 'packaging-test-rpm-upgrade-master' - 'packaging-test-deb-master' - gerrit-tox-verify: branch: master stream: master project: 'integration/packaging' stream: - fluorine - oxygen distro: - opensuse-42 - epel-7 branch: 'master' # common parameters required for 'lf-infra-deploy-maven-file' builder group-id: 'org.opendaylight.integration-packaging' upload-files-dir: '$WORKSPACE/upload_files' maven-repo-url: '$NEXUS_URL/content/repositories/$REPO_ID' - job-template: name: 'packaging-build-rpm-{stream}' node: centos7-builder-2c-8g project-type: freestyle mvn-opts: '' mvn-params: '' mvn-version: mvn33 properties: - opendaylight-infra-properties: build-days-to-keep: 7 parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - lf-infra-maven-parameters: mvn-opts: '{mvn-opts}' mvn-params: '{mvn-params}' mvn-version: '{mvn-version}' staging-profile-id: '' - string: name: DOWNLOAD_URL # yamllint disable-line rule:line-length default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.2/karaf-0.8.2.tar.gz' description: 'URL to ODL tarball artifact to repackage into RPM' - string: name: CHANGELOG_NAME default: 'Jenkins' description: 'Name of person who defined RPM' - string: name: CHANGELOG_EMAIL default: 'jenkins-donotreply@opendaylight.org' description: 'Email of person who defined RPM' - string: name: DEPLOY_TO_REPO default: 'opendaylight-{stream}-epel-7-x86_64-devel' description: 'Repository to deploy resulting package to' scm: - integration-gerrit-scm: basedir: 'packaging' refspec: '$GERRIT_REFSPEC' branch: 'master' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' builders: - shell: !include-raw-escape: build-rpm.sh - install-test-uninstall-rpm - lf-infra-deploy-maven-file: global-settings-file: 'global-settings' settings-file: 'packaging-settings' mvn-version: '{mvn-version}' repo-id: '$DEPLOY_TO_REPO' group-id: '{group-id}' upload-files-dir: '{upload-files-dir}' maven-repo-url: '{maven-repo-url}' publishers: - lf-infra-publish - job-template: name: 'packaging-build-rpm-{distro}-snap-{stream}' node: centos7-docker-2c-8g project-type: freestyle mvn-opts: '' mvn-params: '' mvn-version: mvn33 properties: - opendaylight-infra-properties: build-days-to-keep: 7 parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - lf-infra-maven-parameters: mvn-opts: '{mvn-opts}' mvn-params: '{mvn-params}' mvn-version: '{mvn-version}' staging-profile-id: '' - string: name: CHANGELOG_NAME default: 'Jenkins' description: 'Name of person who defined RPM' - string: name: CHANGELOG_EMAIL default: 'jenkins-donotreply@opendaylight.org' description: 'Email of person who defined RPM' scm: - integration-gerrit-scm: basedir: 'packaging' refspec: '$GERRIT_REFSPEC' branch: 'master' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' builders: - inject: properties-content: | STREAM={stream} DISTRO={distro} - shell: !include-raw: build-rpm-snap-docker.sh - shell: !include-raw: test-rpm-docker.sh - lf-infra-deploy-maven-file: global-settings-file: 'global-settings' settings-file: 'packaging-settings' mvn-version: '{mvn-version}' repo-id: 'opendaylight-{stream}-{distro}-x86_64-devel' group-id: '{group-id}' upload-files-dir: '{upload-files-dir}' maven-repo-url: '{maven-repo-url}' triggers: - timed: '@daily' publishers: - lf-infra-publish - job-template: name: 'packaging-verify-rpm-master' node: centos7-builder-2c-8g project-type: freestyle parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' scm: - integration-gerrit-scm: basedir: 'packaging' refspec: '$GERRIT_REFSPEC' branch: 'master' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' builders: # Test Oxygen SR2 release tarball - inject: # yamllint disable-line rule:line-length properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.2/karaf-0.8.2.tar.gz' - shell: !include-raw-escape: build-rpm.sh - install-test-uninstall-rpm # Test latest Oxygen snapshot - inject: properties-content: 'STREAM=oxygen' - shell: !include-raw: build-rpm-snap.sh - install-test-uninstall-rpm # Test Fluorine pre-release autorelease tarball # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2209/org/opendaylight/integration/karaf/0.9.0/karaf-0.9.0.tar.gz' - shell: !include-raw-escape: build-rpm.sh - install-test-uninstall-rpm # Test Fluorine multipatch zip (no parallel tarball available) # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.9.0-SNAPSHOT/karaf-0.9.0-20180626.171605-65.zip' - shell: !include-raw-escape: build-rpm.sh - install-test-uninstall-rpm # Test latest Fluorine snapshot - inject: properties-content: 'STREAM=fluorine' - shell: !include-raw: build-rpm-snap.sh - install-test-uninstall-rpm triggers: - gerrit-trigger-patch-submitted: gerrit-server-name: '{gerrit-server-name}' project: '{project}' branch: '{branch}' files: 'packages/**' publishers: - lf-infra-publish - job-template: name: 'packaging-verify-full-rpm-master' node: centos7-builder-2c-8g project-type: freestyle parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' scm: - integration-gerrit-scm: basedir: 'packaging' refspec: '$GERRIT_REFSPEC' branch: 'master' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' builders: # Test Oxygen SR2 release tarball - inject: # yamllint disable-line rule:line-length properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.2/karaf-0.8.2.tar.gz' - shell: !include-raw-escape: build-rpm.sh - install-test-uninstall-rpm # Test Oxygen pre-release autorelease tarball # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2210/org/opendaylight/integration/karaf/0.8.3/karaf-0.8.3.tar.gz' - shell: !include-raw-escape: build-rpm.sh - install-test-uninstall-rpm # Test Oxygen multipatch zip (no parallel tarball available) # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.8.3-SNAPSHOT/karaf-0.8.3-20180627.184938-10.zip' - shell: !include-raw-escape: build-rpm.sh - install-test-uninstall-rpm # Test latest Oxygen snapshot - inject: properties-content: 'STREAM=oxygen' - shell: !include-raw: build-rpm-snap.sh - install-test-uninstall-rpm # Test Fluorine pre-release autorelease tarball # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2209/org/opendaylight/integration/karaf/0.9.0/karaf-0.9.0.tar.gz' - shell: !include-raw-escape: build-rpm.sh - install-test-uninstall-rpm # Test Fluorine multipatch zip (no parallel tarball available) # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.9.0-SNAPSHOT/karaf-0.9.0-20180626.171605-65.zip' - shell: !include-raw-escape: build-rpm.sh - install-test-uninstall-rpm # Test latest Fluorine snapshot - inject: properties-content: 'STREAM=fluorine' - shell: !include-raw: build-rpm-snap.sh - install-test-uninstall-rpm triggers: - timed: '@daily' - gerrit: server-name: '{gerrit-server-name}' trigger-on: - comment-added-contains-event: comment-contains-value: 'verify-rpm-full' projects: - project-compare-type: ANT project-pattern: '{project}' branches: - branch-compare-type: ANT branch-pattern: '**/{branch}' publishers: - lf-infra-publish - job-template: name: 'packaging-test-rpm-master' node: centos7-builder-2c-8g parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - string: name: URL # yamllint disable-line rule:line-length default: 'https://git.opendaylight.org/gerrit/gitweb?p=integration/packaging.git;a=blob_plain;f=packages/rpm/example_repo_configs/opendaylight-9-devel.repo' description: 'Link to .repo or .rpm file' scm: - integration-gerrit-scm: basedir: 'packaging' refspec: '$GERRIT_REFSPEC' branch: 'master' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' builders: - shell: | # Install expect to interact with Karaf shell # Install nmap to check status of ODL's SSH port sudo yum install -y expect nmap - shell: !include-raw-escape: install-rpm.sh - shell: !include-raw: start-odl.sh - shell: !include-raw-escape: test-ports-nofeature.sh - shell: !include-raw: test-karaf-oxygensafe.expect # Disable this test until ODLPARENT-139 is fixed # - shell: !include-raw-escape: test-rest-ok.sh - shell: !include-raw: stop-odl.sh - shell: !include-raw: uninstall-rpm.sh publishers: # TODO: Remove the archive publisher # small data should be stored on logs.opendaylight.org # large data should be stored on nexus.opendaylight.org - archive: artifacts: '**' allow-empty: true fingerprint: true latest-only: true - lf-infra-publish - job-template: name: 'packaging-test-rpm-upgrade-master' node: centos7-builder-2c-8g parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - string: name: URL # yamllint disable-line rule:line-length default: 'https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-8-release.repo' description: 'Link to .repo or .rpm file' - string: name: UPGRADE_URL # yamllint disable-line rule:line-length default: 'https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-8-devel.repo' description: 'Link to .repo or .rpm file' scm: - integration-gerrit-scm: basedir: 'packaging' refspec: '$GERRIT_REFSPEC' branch: 'master' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' builders: - shell: !include-raw-escape: install-rpm.sh - shell: !include-raw: start-odl.sh - shell: | # Install expect to interact with Karaf shell sudo yum install -y expect # Install nmap to check status of ODL's SSH port sudo yum install -y nmap - shell: !include-raw: test-karaf-oxygensafe.expect - shell: !include-raw: stop-odl.sh - shell: !include-raw: test-rpm-upgrade.sh - shell: !include-raw: start-odl.sh - shell: !include-raw: test-karaf-oxygensafe.expect - shell: !include-raw: stop-odl.sh - shell: !include-raw: uninstall-rpm.sh publishers: - lf-infra-publish - job-template: name: 'packaging-test-deb-master' node: ubuntu1604-mininet-ovs-25-1c-4g parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - string: name: PACKAGE default: 'ppa:odl-team/oxygen' description: 'Link to .deb package or name of PPA repo' scm: - integration-gerrit-scm: basedir: 'packaging' refspec: '$GERRIT_REFSPEC' branch: 'master' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' builders: - shell: !include-raw-escape: install-deb.sh - shell: !include-raw: start-odl.sh - shell: !include-raw-escape: test-ports-nofeature.sh - shell: | # Install expect to interact with Karaf shell # Install nmap to check status of ODL's SSH port sudo apt-get install -y expect nmap - shell: !include-raw: test-karaf-oxygensafe.expect # Disable this test until ODLPARENT-139 is fixed # - shell: !include-raw-escape: test-rest-ok.sh - shell: !include-raw: stop-odl.sh - shell: !include-raw-escape: uninstall-deb.sh publishers: - lf-infra-publish - job-template: name: 'packaging-build-deb-{stream}' node: ubuntu1604-mininet-ovs-25-1c-4g project-type: freestyle mvn-opts: '' mvn-params: '' mvn-version: mvn33 properties: - opendaylight-infra-properties: build-days-to-keep: 7 parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - lf-infra-maven-parameters: mvn-opts: '{mvn-opts}' mvn-params: '{mvn-params}' mvn-version: '{mvn-version}' staging-profile-id: '' - string: name: DOWNLOAD_URL # FIXME: Update the default value to an active stream. # yamllint disable-line rule:line-length 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' description: 'URL to ODL tarball artifact to repackage into .deb' - string: name: CHANGELOG_NAME default: 'Jenkins' description: 'Name of person who defined .deb' - string: name: CHANGELOG_EMAIL default: 'jenkins-donotreply@opendaylight.org' description: 'Email of person who defined .deb' scm: - integration-gerrit-scm: basedir: 'packaging' refspec: '$GERRIT_REFSPEC' branch: 'master' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' builders: - shell: !include-raw: build-deb.sh - install-test-uninstall-deb - lf-infra-deploy-maven-file: global-settings-file: 'global-settings' settings-file: 'packaging-settings' mvn-version: '{mvn-version}' repo-id: 'opendaylight-{stream}-ubuntu-1604-x86_64-devel' group-id: '{group-id}' upload-files-dir: '{upload-files-dir}' maven-repo-url: '{maven-repo-url}' publishers: - lf-infra-publish - view: name: packaging description: 'List of packaging, ansible and puppet jobs' regex: '^packaging.*|ansible.*|puppet.*' <<: *releng_view_common