name: autorelease-lithium
jobs:
- 'autorelease-daily-lithium'
+ - 'autorelease-release-lithium'
branch: 'stable/lithium'
project: 'releng/autorelease'
project: '{project}'
- autorelease-release-tag:
release-tag: 'Daily'
+ - autorelease-release-branch:
+ release-branch: '{branch}'
scm:
- git:
wrappers:
- autorelease-build-timeout
- ssh-agent-credentials:
- user: '{ssh-credentials}'
+ users: '{ssh-credentials}'
triggers:
- timed: 'H 0 * * *'
global-settings: '{odl-global-settings}'
postbuilders:
- - maven-target:
+ - autorelease-maven-sources:
+ maven-version: '{mvn32}'
+ settings: '{autorelease-settings}'
+ global-settings: '{odl-global-settings}'
+ - jacoco-nojava-workaround
+
+ publishers:
+ - archive-artifacts:
+ artifacts: 'sources.log,patches/*.patch'
+ - email-notification:
+ email-prefix: '[autorelease]'
+
+- job-template:
+ name: 'autorelease-release-lithium'
+
+ project-type: maven
+ node: dynamic_verify
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - autorelease-release-tag:
+ release-tag: 'Pre-Lithium'
+ - autorelease-release-branch:
+ release-branch: '{branch}'
+
+ scm:
+ - git:
+ credentials-id: '{ssh-credentials}'
+ url: '$GIT_BASE'
+ refspec: ''
+ branches:
+ - 'origin/{branch}'
+ skip-tag: true
+ recursive-submodules: true
+
+ wrappers:
+ - autorelease-build-timeout
+ - ssh-agent-credentials:
+ users: '{ssh-credentials}'
+
+ prebuilders:
+ - shell:
+ !include-raw include-raw-autorelease-release-versions.sh
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: 'clean install source:jar javadoc:jar -Pintegrationtests,docs,repoBuild -fae -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+ maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+ settings: '{autorelease-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - autorelease-cfp:
+ autorelease-settings: '{autorelease-settings}'
+ odl-global-settings: '{odl-global-settings}'
+ - autorelease-maven-deploy
+ - autorelease-maven-sources:
maven-version: '{mvn32}'
- pom: 'pom.xml'
- goals: 'dependency:sources -l sources.log -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
- java-opts:
- - '-Xmx4096m -XX:MaxPermSize=1024m'
settings: '{autorelease-settings}'
global-settings: '{odl-global-settings}'
- jacoco-nojava-workaround
default: '{release-tag}'
description: "The Release train tag to use eg. Helium-SR3"
+- parameter:
+ name: autorelease-release-branch
+ parameters:
+ - string:
+ name: RELEASE_BRANCH
+ default: '{release-branch}'
+ description: "The Release train branch to base build off eg. stable/helium"
+
- wrapper:
name: autorelease-build-timeout
wrappers:
type: absolute
timeout: 360
fail: true
+
+- builder:
+ name: autorelease-cfp
+ builders:
+ - config-file-provider:
+ files:
+ - file-id: '{autorelease-settings}'
+ variable: 'AUTORELEASE_SETTINGS'
+ - file-id: '{odl-global-settings}'
+ variable: 'ODL_GLOBAL_SETTINGS'
+
+- builder:
+ name: autorelease-maven-deploy
+ builders:
+ - shell: |
+ mkdir -p hide/from/pom/files
+ cd hide/from/pom/files
+ mkdir -p m2repo/org/
+ mv /tmp/r/org/opendaylight m2repo/org/
+ mvn org.sonatype.plugins:nexus-staging-maven-plugin:1.6.2:deploy-staged-repository -DrepositoryDirectory="`pwd`/m2repo" -DnexusUrl=http://nexus.opendaylight.org/ -DstagingProfileId="21a27b7f3bbb8d" -DserverId="opendaylight.weekly" -s $AUTORELEASE_SETTINGS -gs $ODL_GLOBAL_SETTINGS
+
+- builder:
+ name: autorelease-maven-sources
+ builders:
+ - maven-target:
+ maven-version: '{maven-version}'
+ pom: 'pom.xml'
+ goals: 'dependency:sources -l sources.log -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+ java-opts:
+ - '-Xmx4096m -XX:MaxPermSize=1024m'
+ settings: '{settings}'
+ global-settings: '{global-settings}'
project: '{project}'
- autorelease-release-tag:
release-tag: 'Daily'
+ - autorelease-release-branch:
+ release-branch: '{branch}'
scm:
- git:
wrappers:
- autorelease-build-timeout
- ssh-agent-credentials:
- user: '{ssh-credentials}'
+ users: '{ssh-credentials}'
triggers:
- timed: 'H 0 * * *'
global-settings: '{odl-global-settings}'
postbuilders:
- - maven-target:
+ - autorelease-maven-sources:
maven-version: '{mvn32}'
- pom: 'pom.xml'
- goals: 'dependency:sources -l sources.log -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
- java-opts:
- - '-Xmx4096m -XX:MaxPermSize=1024m'
settings: '{autorelease-settings}'
global-settings: '{odl-global-settings}'
- jacoco-nojava-workaround
##############################################################################
# RELEASE_TAG=Helium-SR2 # Example
+# RELEASE_BRANCH=stable/helium # Example
./scripts/version.sh release $RELEASE_TAG
git submodule foreach "git commit -am \"Release $RELEASE_TAG\" || true"
git commit -am "Release $RELEASE_TAG"
mkdir patches
-git submodule foreach 'git format-patch --stdout origin/master > ../patches/$name.patch'
+git submodule foreach 'git format-patch --stdout origin/$RELEASE_BRANCH > ../patches/$name.patch'
./scripts/fix-relativepaths.sh
-