Add version bump job
[releng/builder.git] / jjb / autorelease / autorelease-projects.yaml
index d9ad7db79a4f46241793726117c2d56af9bf2da1..c622cd4f4e3e488237b803705bd7fb7610128307 100644 (file)
@@ -1,28 +1,67 @@
+---
 - project:
     name: autorelease-projects
     jobs:
-        - 'autorelease-release-{stream}'
-        - 'autorelease-project-report-{stream}'
+      - 'autorelease-release-{stream}'
+      - autorelease-version-bump-{stream}
 
     stream:
-    - carbon:
-        next-release-tag: Carbon
-        branch: 'master'
-        jdk: 'openjdk8'
-        integration-test: carbon
-    - boron:
-        next-release-tag: Boron-SR3
-        branch: 'stable/boron'
-        jdk: 'openjdk8'
-        integration-test: boron
-    - beryllium:
-        next-release-tag: Beryllium-SR5
-        branch: 'stable/beryllium'
-        jdk: 'openjdk7'
-        integration-test: beryllium
+      - nitrogen:
+          next-release-tag: Nitrogen
+          branch: 'master'
+          jdk: 'openjdk8'
+          integration-test: nitrogen
+      - carbon:
+          next-release-tag: Carbon
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+          integration-test: carbon
+          karaf-version: karaf3
+          extra-mvn-opts: -Dskip.karaf.featureTest=true
+      - boron:
+          next-release-tag: Boron-SR4
+          branch: 'stable/boron'
+          jdk: 'openjdk8'
+          integration-test: boron
+          karaf-version: karaf3
+      - beryllium:
+          # Only run once a week since Beryllium is in maintenance mode
+          cron: 'H H * * 0'
+          next-release-tag: Beryllium-SR5
+          branch: 'stable/beryllium'
+          jdk: 'openjdk7'
+          integration-test: beryllium
+          karaf-version: karaf3
 
     project: 'releng/autorelease'
-    archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
+    archive-artifacts: >
+        **/*.prop
+        **/*.log
+        patches/**
+        patches.tar.gz
+        error.log.gz
+
+
+- project:
+    name: autorelease-release-notes
+    jobs:
+      - 'autorelease-generate-release-notes-{stream}'
+
+    stream:
+      - nitrogen:
+          branch: 'master'
+          jdk: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+      - boron:
+          branch: 'stable/boron'
+          jdk: 'openjdk8'
+
+    project: 'releng/autorelease'
+    archive-artifacts: >
+        **/*.log
+
 
 ###
 # TODO: Remove this job once guava21 testing is complete
 - project:
     name: autorelease-projects-guava21
     jobs:
-        - 'autorelease-release-guava21-{stream}'
+      - 'autorelease-release-guava21-{stream}'
 
     stream:
-    - carbon:
-        next-release-tag: Guava21-Testing
-        branch: 'master'
-        jdk: 'openjdk8'
-        integration-test: carbon
+      - carbon:
+          next-release-tag: Guava21-Testing
+          branch: 'master'
+          jdk: 'openjdk8'
+          integration-test: carbon
 
     project: 'releng/autorelease'
     archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
     jdk: '{jdk}'
 
     properties:
-        - opendaylight-infra-properties:
-            build-days-to-keep: '30'
+      - opendaylight-infra-properties:
+          build-days-to-keep: '30'
 
     parameters:
-        - maven-exec:
-            maven-version: 'mvn33'
-        - opendaylight-infra-parameters:
-            project: '{project}'
-            branch: '{branch}'
-            refspec: 'refs/heads/{branch}'
-            artifacts: '{archive-artifacts}'
-        - autorelease-release-tag:
-            release-tag: '{next-release-tag}'
-        - autorelease-release-branch:
-            release-branch: '{branch}'
+      - maven-exec:
+          maven-version: 'mvn33'
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
+      - autorelease-release-tag:
+          release-tag: '{next-release-tag}'
+      - autorelease-release-branch:
+          release-branch: '{branch}'
 
     scm:
-        - git:
-            credentials-id: 'opendaylight-jenkins-ssh'
-            url: '$GIT_BASE'
-            refspec: '$GERRIT_REFSPEC'
-            branches:
-                - '$GERRIT_BRANCH'
-            choosing-strategy: 'gerrit'
-            skip-tag: true
-            submodule:
-                recursive: true
-                timeout: 60
+      - git:
+          credentials-id: 'opendaylight-jenkins-ssh'
+          url: '$GIT_BASE'
+          refspec: '$GERRIT_REFSPEC'
+          branches:
+            - '$GERRIT_BRANCH'
+          choosing-strategy: 'gerrit'
+          skip-tag: true
+          submodule:
+            recursive: true
+            timeout: 60
 
     wrappers:
-        - opendaylight-infra-wrappers:
-            build-timeout: '1440'
+      - opendaylight-infra-wrappers:
+          build-timeout: '1440'
 
     triggers:
-        - gerrit:
-            server-name: '{server-name}'
-            trigger-on:
-                - comment-added-contains-event:
-                    comment-contains-value: 'test-guava21-patches'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: '{project}'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-            skip-vote:
-                successful: true
-                failed: true
-                unstable: true
-                notbuilt: true
+      - gerrit:
+          server-name: '{server-name}'
+          trigger-on:
+            - comment-added-contains-event:
+                comment-contains-value: 'test-guava21-patches'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+          skip-vote:
+            successful: true
+            failed: true
+            unstable: true
+            notbuilt: true
 
     builders:
-        - shell: |
-            #!/bin/bash
-            cd bgpcep
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/bgpcep
-            git review -d 50184
-            cd ..
-            cd centinel
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/centinel
-            git review -d 50185
-            cd ..
-            cd controller
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/controller
-            git review -d 50176
-            cd ..
-            cd didm
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/didm
-            git review -d 50187
-            cd ..
-            cd faas
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/faas
-            git review -d 50190
-            cd ..
-            cd genius
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/genius
-            git review -d 50192
-            cd ..
-            cd groupbasedpolicy
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/groupbasedpolicy
-            git review -d 50200
-            cd ..
-            cd netvirt
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/netvirt
-            git review -d 50215
-            cd ..
-            cd odlparent
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/odlparent
-            git review -d 49820
-            cd ..
-            cd openflowplugin
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/openflowplugin
-            git review -d 50183
-            cd ..
-            cd ovsdb
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/ovsdb
-            git review -d 50191
-            cd ..
-            cd yangtools
-            git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/yangtools
-            git review -d 50173
-            cd ..
-        # force jenkins install of maven version before any shell scripts use it
-        - maven-target:
-            maven-version: 'mvn33'
-            goals: '-version'
-            settings: 'autorelease-settings'
-            settings-type: cfp
-            global-settings: 'odl-global-settings'
-            global-settings-type: cfp
-        - wipe-local-maven-repo
-        - jacoco-nojava-workaround
-        - shell: "./scripts/list-project-dependencies.sh"
-        - autorelease-determine-merge-order
-        - autorelease-cfp:
-            autorelease-settings: 'autorelease-settings'
-            odl-global-settings: 'odl-global-settings'
-        - autorelease-generate-taglist
-        - autorelease-distribute-taglist
-        - autorelease-generate-release-patches
-        # In a perfect world projects should be releasing separately and we consume them
-        # via a project that pulls the release bits from each project from Nexus.
-        # Keep the patches compatible with that ideal, but apply an edit
-        # to enable building in a single maven reactor afterwards.
-        - autorelease-fix-relative-paths
-        - maven-target:
-              maven-version: 'mvn33'
-              pom: 'pom.xml'
-              goals: 'clean deploy -V -B -Pintegrationtests,docs,repoBuild -Djenkins -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage'
-              java-opts:
-                - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
-              settings: 'autorelease-settings'
-              settings-type: cfp
-              global-settings: 'odl-global-settings'
-              global-settings-type: cfp
-        - autorelease-maven-deploy
-        - autorelease-get-integration-test-variables
-        - autorelease-maven-sources:
-            maven-version: 'mvn33'
-            settings: 'autorelease-settings'
-            global-settings: 'odl-global-settings'
-        - autorelease-maven-sources-post-process
-        - autorelease-sys-stats
-        - shell: |
-            mkdir -p archives/
-            cp *.log *.prop $_
+      - shell: |
+          #!/bin/bash
+          cd bgpcep
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/bgpcep
+          git review -d 50184
+          cd ..
+          cd centinel
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/centinel
+          git review -d 50185
+          cd ..
+          cd controller
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/controller
+          git review -d 50176
+          cd ..
+          cd didm
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/didm
+          git review -d 50187
+          cd ..
+          cd faas
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/faas
+          git review -d 50190
+          cd ..
+          cd genius
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/genius
+          git review -d 50192
+          cd ..
+          cd groupbasedpolicy
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/groupbasedpolicy
+          git review -d 50200
+          cd ..
+          cd netvirt
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/netvirt
+          git review -d 50215
+          cd ..
+          cd odlparent
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/odlparent
+          git review -d 49820
+          cd ..
+          cd openflowplugin
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/openflowplugin
+          git review -d 50183
+          cd ..
+          cd ovsdb
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/ovsdb
+          git review -d 50191
+          cd ..
+          cd yangtools
+          git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/yangtools
+          git review -d 50173
+          cd ..
+      # force jenkins install of maven version before any shell scripts use it
+      - maven-target:
+          maven-version: 'mvn33'
+          goals: '-version'
+          settings: 'autorelease-settings'
+          settings-type: cfp
+          global-settings: 'odl-global-settings'
+          global-settings-type: cfp
+      - wipe-local-maven-repo
+      - jacoco-nojava-workaround
+      - shell: "./scripts/list-project-dependencies.sh"
+      - autorelease-determine-merge-order
+      - autorelease-cfp:
+          autorelease-settings: 'autorelease-settings'
+          odl-global-settings: 'odl-global-settings'
+      - autorelease-generate-taglist
+      - autorelease-distribute-taglist
+      - autorelease-generate-release-patches
+      # In a perfect world projects should be releasing separately and we consume them
+      # via a project that pulls the release bits from each project from Nexus.
+      # Keep the patches compatible with that ideal, but apply an edit
+      # to enable building in a single maven reactor afterwards.
+      - autorelease-fix-relative-paths
+      - maven-target:
+          maven-version: 'mvn33'
+          pom: 'pom.xml'
+          goals: >
+              clean deploy -V -B -Pintegrationtests,docs,repoBuild -Djenkins
+              -Dcheckstyle.skip=true
+              -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+              -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
+          java-opts:
+            - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+          settings: 'autorelease-settings'
+          settings-type: cfp
+          global-settings: 'odl-global-settings'
+          global-settings-type: cfp
+      - autorelease-maven-deploy
+      - autorelease-get-integration-test-variables
+      - autorelease-maven-sources:
+          opendaylight-infra-mvn-opts: '{opendaylight-infra-mvn-opts}'
+          maven-version: 'mvn33'
+          settings: 'autorelease-settings'
+          global-settings: 'odl-global-settings'
+      - autorelease-maven-sources-post-process
+      - shell: |
+          mkdir -p archives/
+          cp *.log *.prop $_
 
     publishers:
-        - email-notification:
-            email-recipients: '{email-recipients}'
-            email-prefix: '[autorelease]'
-        - trigger-parameterized-builds:
-            - project: 'integration-distribution-test-{integration-test}'
-              condition: UNSTABLE_OR_BETTER
-              property-file: variables.jenkins-trigger
-              fail-on-missing: true
-        - opendaylight-infra-shiplogs:
-            maven-version: 'mvn33'
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[autorelease]'
+      - trigger-parameterized-builds:
+          - project: 'integration-distribution-test-{integration-test}'
+            condition: UNSTABLE_OR_BETTER
+            property-file: variables.jenkins-trigger
+            fail-on-missing: true
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'