Add oxygen stream for packaging jobs
[releng/builder.git] / jjb / packaging / packaging.yaml
index 417c498f80c91160fa5fd07764f0a8b28458f73c..6af7324a69dd85e263a851823b6b3fac2f1cd469 100644 (file)
@@ -4,18 +4,23 @@
     project-name: packaging
 
     jobs:
-      - '{project-name}-verify-tox-{stream}'
+      - '{project-name}-verify-tox-master'
       - 'packaging-build-rpm-{stream}'
       - 'packaging-build-rpm-snap-{stream}'
       - 'packaging-build-deb-{stream}'
-      - 'packaging-test-rpm-{stream}'
-      - 'packaging-test-deb-{stream}'
+      - 'packaging-test-rpm-master'
+      - 'packaging-test-rpm-upgrade-master'
+      - 'packaging-test-deb-master'
 
     project: 'integration/packaging'
 
     stream:
-      - master:
-          branch: 'master'
+      - boron
+      - carbon
+      - nitrogen
+      - oxygen
+    branch: 'master'
+
 
 - job-template:
     name: 'packaging-build-rpm-{stream}'
 
     project-type: freestyle
 
+    mvn-opts: ''
+    mvn-params: ''
+    mvn-version: mvn33
+
     properties:
       - opendaylight-infra-properties:
           build-days-to-keep: 7
           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
           build-timeout: '{build-timeout}'
 
     builders:
-      - shell: !include-raw: include-raw-build-rpm.sh
+      - shell: !include-raw: build-rpm.sh
+      - lf-infra-deploy-maven-file:
+          global-settings-file: 'global-settings'
+          settings-file: 'packaging-settings'
+          mvn-version: 'mvn33'
+          repo-id: 'opendaylight-{stream}-epel-7-x86_64-devel'
+          group-id: 'org.opendaylight.integration-packaging'
+          files-dir: '$WORKSPACE/upload_files'
 
     publishers:
-      - archive-artifacts:
-          artifacts: '**/*.rpm'
       - lf-infra-publish
 
 
 
     project-type: freestyle
 
+    mvn-opts: ''
+    mvn-params: ''
+    mvn-version: mvn33
+
     properties:
       - opendaylight-infra-properties:
           build-days-to-keep: 7
           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: VERSION_MAJOR
           default: '7'
           build-timeout: '{build-timeout}'
 
     builders:
-      - shell: !include-raw: include-raw-build-rpm-snap.sh
+      - shell: !include-raw: build-rpm-snap.sh
+      - lf-infra-deploy-maven-file:
+          global-settings-file: 'global-settings'
+          settings-file: 'packaging-settings'
+          mvn-version: 'mvn33'
+          repo-id: 'opendaylight-{stream}-epel-7-x86_64-devel'
+          group-id: 'org.opendaylight.integration-packaging'
+          files-dir: '$WORKSPACE/upload_files'
 
     triggers:
       - timed: '@daily'
 
     publishers:
-      - archive-artifacts:
-          artifacts: '**/*.rpm'
       - lf-infra-publish
 
 
 - job-template:
-    name: 'packaging-test-rpm-{stream}'
+    name: 'packaging-test-rpm-master'
 
     node: centos7-java-builder-2c-4g
 
           build-timeout: '{build-timeout}'
 
     builders:
-      - shell: !include-raw: include-raw-test-rpm.sh
+      - shell: !include-raw: 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: include-raw-test-karaf.expect
+      - shell: !include-raw: stop-odl.sh
 
     publishers:
-      - archive-artifacts:
+      # 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-java-builder-2c-4g
+
+    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/rpm/example_repo_configs/opendaylight-6-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/rpm/example_repo_configs/opendaylight-6-testing.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: 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: include-raw-test-karaf.expect
+      - shell: !include-raw: stop-odl.sh
+      - shell: !include-raw: test-rpm-upgrade.sh
+      - shell: !include-raw: start-odl.sh
+      - shell: !include-raw: include-raw-test-karaf.expect
+      - shell: !include-raw: stop-odl.sh
+
+    publishers:
       - lf-infra-publish
 
 
 - job-template:
-    name: 'packaging-test-deb-{stream}'
+    name: 'packaging-test-deb-master'
 
     node: ubuntu1604-mininet-ovs-25-2c-4g
 
           artifacts: '{archive-artifacts}'
       - string:
           name: PACKAGE
-          # yamllint disable-line rule:line-length
-          default: 'https://launchpad.net/~odl-team/+archive/ubuntu/carbon/+files/opendaylight_6.0.0-1_all.deb'
-          description: 'Link to .deb file or name of custom PPA repo (ppa:odl-team/carbon)'
+          default: 'ppa:odl-team/carbon'
+          description: 'Link to .deb package or name of PPA repo'
 
     scm:
       - integration-gerrit-scm:
           build-timeout: '{build-timeout}'
 
     builders:
-      - shell: !include-raw: include-raw-test-deb.sh
+      - shell: !include-raw: install-deb.sh
+      - shell: !include-raw: start-odl.sh
+      - shell: |
+          # Install expect to interact with Karaf shell
+          sudo apt-get install -y expect
+          # Install nmap to check status of ODL's SSH port
+          sudo apt-get install -y nmap
       - shell: !include-raw: include-raw-test-karaf.expect
+      - shell: !include-raw: stop-odl.sh
 
     publishers:
-      - archive-artifacts:
-          artifacts: '**'
       - lf-infra-publish
 
+
 - job-template:
     name: 'packaging-build-deb-{stream}'
 
 
     project-type: freestyle
 
+    mvn-opts: ''
+    mvn-params: ''
+    mvn-version: mvn33
+
     properties:
       - opendaylight-infra-properties:
           build-days-to-keep: 7
           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: VERSION_MAJOR
           default: '5'
           name: JAVA_VERSION
           default: '8'
           description: Java dependency for the ODL release
+      - string:
+          name: JAVA_HOME
+          default: '/usr/lib/jvm/java-8-openjdk-amd64/'
+          description: Set JAVA_HOME to openjdk8
       - string:
           name: CHANGELOG_DATE
           default: 'Mon, 1 Aug 2016'
           build-timeout: '{build-timeout}'
 
     builders:
-      - shell: !include-raw: include-raw-build-deb.sh
+      - shell: !include-raw: build-deb.sh
+      - 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: 'org.opendaylight.integration-packaging'
+          files-dir: '$WORKSPACE/upload_files'
 
     publishers:
-      - archive-artifacts:
-          artifacts: 'packaging/deb/opendaylight/*.deb'
       - lf-infra-publish