Disable pkg jobs that require substantial upkeep
[releng/builder.git] / jjb / packaging / packaging.yaml
index 4d1c2b34a29d3953b4a82050c63474c077402d16..a0179ae24b16ccda573a481cedba0ea66ce711f3 100644 (file)
     project: 'integration/packaging'
 
     stream:
+      - neon
       - fluorine
-      - oxygen
+      - oxygen:
+          disable-job: 'true'
+
     distro:
       - opensuse-42
       - epel-7
 - job-template:
     name: 'packaging-build-rpm-{stream}'
 
-    node: centos7-builder-2c-8g
+    disable-job: false
+
+    node: centos7-builder-2c-2g
 
     project-type: freestyle
+    disabled: '{disable-job}'
 
     mvn-opts: ''
     mvn-params: ''
@@ -67,7 +73,7 @@
       - 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'
+          default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.4/karaf-0.8.4.tar.gz'
           description: 'URL to ODL tarball artifact to repackage into RPM'
       - string:
           name: CHANGELOG_NAME
           name: DEPLOY_TO_REPO
           default: 'opendaylight-{stream}-epel-7-x86_64-devel'
           description: 'Repository to deploy resulting package to'
+      - string:
+          name: PKG_VERSION_OVERRIDE
+          default: ''
+          description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
 
     scm:
       - integration-gerrit-scm:
           build-timeout: '{build-timeout}'
 
     builders:
+      - lf-infra-pre-build
       - shell: !include-raw-escape: build-rpm.sh
       - install-test-uninstall-rpm
       - lf-infra-deploy-maven-file:
 - job-template:
     name: 'packaging-build-rpm-{distro}-snap-{stream}'
 
-    node: centos7-docker-2c-8g
+    node: centos7-docker-2c-2g
+    disable-job: false
 
     project-type: freestyle
+    disabled: '{disable-job}'
 
     mvn-opts: ''
     mvn-params: ''
           build-timeout: '{build-timeout}'
 
     builders:
+      - lf-infra-pre-build
       - inject:
           properties-content: |
               STREAM={stream}
 - job-template:
     name: 'packaging-verify-rpm-master'
 
-    node: centos7-builder-2c-8g
+    node: centos7-builder-2c-2g
+    disable-job: false
 
     project-type: freestyle
+    disabled: '{disable-job}'
 
     parameters:
       - opendaylight-infra-parameters:
           build-timeout: '{build-timeout}'
 
     builders:
-      # Test Oxygen SR2 release tarball
+      # Test Oxygen SR4 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'
+          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'
       - 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
+      # Test Fluorine ('Managed Release Common Distro') release tarball
       - 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'
+          properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.9.0/opendaylight-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
+      # Test Fluorine SR1 release tarball
       - 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'
+          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'
       - shell: !include-raw-escape: build-rpm.sh
       - install-test-uninstall-rpm
 
-      # Test latest Fluorine snapshot
+      # Test Neon 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-2620/org/opendaylight/integration/karaf/0.10.0/karaf-0.10.0.tar.gz'
+      # - shell: !include-raw-escape: build-rpm.sh
+      # - install-test-uninstall-rpm
+
+      # Test Neon 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.10.0-SNAPSHOT/karaf-0.10.0-20190103.173010-50.zip'
+      # - shell: !include-raw-escape: build-rpm.sh
+      # - install-test-uninstall-rpm
+
+      # Test latest Neon snapshot
       - inject:
-          properties-content: 'STREAM=fluorine'
+          properties-content: 'STREAM=neon'
       - shell: !include-raw: build-rpm-snap.sh
       - install-test-uninstall-rpm
 
     triggers:
+      - timed: '@weekly'
       - gerrit-trigger-patch-submitted:
           gerrit-server-name: '{gerrit-server-name}'
           project: '{project}'
           branch: '{branch}'
           files: 'packages/**'
+          forbidden-files: ''
 
     publishers:
       - lf-infra-publish
 - job-template:
     name: 'packaging-verify-full-rpm-master'
 
-    node: centos7-builder-2c-8g
+    node: centos7-builder-2c-2g
+    disable-job: false
 
     project-type: freestyle
+    disabled: '{disable-job}'
 
     parameters:
       - opendaylight-infra-parameters:
           build-timeout: '{build-timeout}'
 
     builders:
-      # Test Oxygen SR2 release tarball
+      # Test Oxygen SR4 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'
+          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'
       - 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
+      # - inject:
+      # yamllint disable-line rule:line-length
+      #     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'
+      # - shell: !include-raw-escape: build-rpm.sh
+      # - install-test-uninstall-rpm
 
       # Test latest Oxygen snapshot
       - inject:
       - 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
+      # Test Fluorine ('Managed Release Common Distro') release tarball
       - 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'
+          properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.9.0/opendaylight-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
+      # Test Fluorine SR1 release tarball
       - 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'
+          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'
       - shell: !include-raw-escape: build-rpm.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-2621/org/opendaylight/integration/karaf/0.9.2/karaf-0.9.2.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.2-SNAPSHOT/karaf-0.9.2-20181222.162905-8.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
 
+      # Test Neon 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-2620/org/opendaylight/integration/karaf/0.10.0/karaf-0.10.0.tar.g'
+      # - shell: !include-raw-escape: build-rpm.sh
+      # - install-test-uninstall-rpm
+
+      # Test Neon 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.10.0-SNAPSHOT/karaf-0.10.0-20190103.173010-50.zip'
+      # - shell: !include-raw-escape: build-rpm.sh
+      # - install-test-uninstall-rpm
+
+      # Test latest Neon snapshot
+      - inject:
+          properties-content: 'STREAM=neon'
+      - shell: !include-raw: build-rpm-snap.sh
+      - install-test-uninstall-rpm
+
     triggers:
-      - timed: '@daily'
+      - timed: '@weekly'
       - gerrit:
           server-name: '{gerrit-server-name}'
           trigger-on:
 - job-template:
     name: 'packaging-test-rpm-master'
 
-    node: centos7-builder-2c-8g
+    node: centos7-builder-2c-2g
+    disable-job: false
+
+    disabled: '{disable-job}'
 
     parameters:
       - opendaylight-infra-parameters:
       - shell: !include-raw: stop-odl.sh
       - shell: !include-raw: uninstall-rpm.sh
 
+    triggers:
+      - timed: '@monthly'
+
     publishers:
       # TODO: Remove the archive publisher
       #       small data should be stored on logs.opendaylight.org
 - job-template:
     name: 'packaging-test-rpm-upgrade-master'
 
-    node: centos7-builder-2c-8g
+    disable-job: false
+
+    node: centos7-builder-2c-2g
+    disabled: '{disable-job}'
 
     parameters:
       - opendaylight-infra-parameters:
           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:
           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
+      # Tests (current and future):
+      #   * Install latest release, stop/uninstall, install latest CD
+      #   * Upgrade from latest release latest CD
+      #   * TODO: Upgrade from latest release to proposed packaging/** logic
+      #   * TODO: Upgrade from CD to proposed packaging/** logic
+      #   * TODO: Upgrade from proposed packaging/** logic (older ODL) to
+      #     proposed packaging logic (latest ODL)
+
+      # Test 1: Install latest release, stop/uninstall, install latest CD
+      - inject:
+          # yamllint disable-line rule:line-length
+          properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
+      - install-start-test-stop-uninstall-rpm
+      - inject:
+          # yamllint disable-line rule:line-length
+          properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
+      - install-start-test-stop-uninstall-rpm
+
+      # Test 2: Install latest release, stop, upgrade to latest CD
+      - inject:
+          # yamllint disable-line rule:line-length
+          properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
+      - install-start-test-stop-rpm
+      - inject:
+          # yamllint disable-line rule:line-length
+          properties-content: 'REPO_CFG_FILE_URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
+      - installrepcfg-upgrade-start-test-stop-rpm
+
+    triggers:
+      - timed: '@weekly'
+      - gerrit-trigger-patch-submitted:
+          gerrit-server-name: '{gerrit-server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: 'packages/**'
+          forbidden-files: ''
 
     publishers:
       - lf-infra-publish
     name: 'packaging-test-deb-master'
 
     node: ubuntu1604-mininet-ovs-25-1c-4g
+    disable-job: false
+
+    disabled: '{disable-job}'
 
     parameters:
       - opendaylight-infra-parameters:
       - shell: !include-raw: stop-odl.sh
       - shell: !include-raw-escape: uninstall-deb.sh
 
+    triggers:
+      - timed: '@monthly'
+
     publishers:
       - lf-infra-publish
 
     name: 'packaging-build-deb-{stream}'
 
     node: ubuntu1604-mininet-ovs-25-1c-4g
+    disable-job: false
 
     project-type: freestyle
+    disabled: '{disable-job}'
 
     mvn-opts: ''
     mvn-params: ''
           name: CHANGELOG_EMAIL
           default: 'jenkins-donotreply@opendaylight.org'
           description: 'Email of person who defined .deb'
+      - string:
+          name: PKG_VERSION_OVERRIDE
+          default: ''
+          description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
 
     scm:
       - integration-gerrit-scm:
           build-timeout: '{build-timeout}'
 
     builders:
+      - lf-infra-pre-build
       - shell: !include-raw: build-deb.sh
       - install-test-uninstall-deb
       - lf-infra-deploy-maven-file:
           upload-files-dir: '{upload-files-dir}'
           maven-repo-url: '{maven-repo-url}'
 
+    triggers:
+      - timed: '@monthly'
+
     publishers:
       - lf-infra-publish
 
-- view:
-    name: packaging
-    description: 'List of packaging, ansible and puppet jobs'
-    regex: '^packaging.*|ansible.*|puppet.*'
-    <<: *releng_view_common
+- project:
+    name: packaging-view
+    views:
+      - project-view
+    project-name: packaging