default: '{release-branch}'
description: "The Release train branch to base build off eg. stable/beryllium"
-- parameter:
- name: autorelease-release-datestamp
- parameters:
- - bool:
- name: DATESTAMP
- default: '{datestamp}'
- description: "Whether to include a datestamp or not"
-
- wrapper:
name: autorelease-build-timeout
wrappers:
timeout: 1440
fail: true
-- trigger:
- name: autorelease-trigger-patch-site-merged
- triggers:
- - gerrit:
- server-name: 'OpenDaylight'
- trigger-on:
- - change-merged-event
- - comment-added-contains-event:
- comment-contains-value: 'republish'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{name}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- file-paths:
- - compare-type: ANT
- pattern: src/site/**
- - compare-type: ANT
- pattern: site.xml
-
-- trigger:
- name: autorelease-trigger-patch-site-submitted
- triggers:
- - gerrit:
- server-name: 'OpenDaylight'
- trigger-on:
- - patchset-created-event:
- exclude-drafts: 'false'
- exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
- - draft-published-event
- - comment-added-contains-event:
- comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{name}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- file-paths:
- - compare-type: ANT
- pattern: src/site/**
- - compare-type: ANT
- pattern: site.xml
-
- builder:
name: autorelease-checkout-gerrit-patch
builders:
builders:
- config-file-provider:
files:
- - file-id: '{autorelease-settings}'
+ - file-id: 'autorelease-settings'
variable: 'SETTINGS_FILE'
- - file-id: '{odl-global-settings}'
+ - file-id: 'odl-global-settings'
variable: 'GLOBAL_SETTINGS_FILE'
+- builder:
+ name: autorelease-determine-merge-order
+ builders:
+ - shell: |
+ # TODO: Remove this condition once stable/beryllium is no longer
+ # officially maintained.
+ if [ "$GERRIT_BRANCH" != "stable/beryllium" ]; then
+ virtualenv --system-site-packages $WORKSPACE/venv
+ source $WORKSPACE/venv/bin/activate
+ pip install --upgrade pip
+ pip install --upgrade networkx
+ pip freeze
+ ./scripts/determine-merge-order.py
+ deactivate
+ rm -rf $WORKSPACE/venv
+ fi
+
- builder:
name: autorelease-maven-deploy
builders:
- maven-target:
maven-version: '{maven-version}'
pom: 'pom.xml'
- goals: 'dependency:sources -Poffset0,offset1,offset2,offset3 -DoutputFile=$WORKSPACE/sources.log -DappendOutput -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+ goals: '--quiet dependency:sources -DoutputFile=$WORKSPACE/sources.log -DappendOutput -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
java-opts:
- '-Xmx4096m -XX:MaxPermSize=1024m'
settings: '{settings}'
+ settings-type: cfp
global-settings: '{global-settings}'
+ global-settings-type: cfp
- builder:
name: autorelease-maven-sources-post-process
name: autorelease-generate-taglist
builders:
- shell: |
- git submodule foreach 'echo $path `git rev-parse --verify HEAD` ${RELEASE_TAG} >> ../taglist.log'
+ echo autorelease `git rev-parse --verify HEAD` ${RELEASE_TAG} | tee -a $WORKSPACE/taglist.log
+ git submodule foreach 'echo $path `git rev-parse --verify HEAD` ${RELEASE_TAG} | tee -a $WORKSPACE/taglist.log'
+
+- builder:
+ name: autorelease-distribute-taglist
+ builders:
+ - shell: |
+ if [ -d "integration/distribution/distributions" ]; then
+ cp -vf "$WORKSPACE/taglist.log" "integration/distribution/distributions/karaf/src/main/assembly/"
+ else
+ cp -vf "$WORKSPACE/taglist.log" "integration/distribution/distribution-karaf/src/main/assembly/"
+ fi
- builder:
name: autorelease-generate-release-patches
- shell:
!include-raw:
- include-raw-autorelease-get-integration-test-variables.sh
+ - inject:
+ properties-file: variables.prop
- builder:
name: autorelease-generate-project-report
- shell:
!include-raw:
- include-raw-generate-project-report.sh
+
+- builder:
+ name: autorelease-fix-relative-paths
+ builders:
+ - shell: |
+ ./scripts/fix-relativepaths.sh
+
+- publisher:
+ # include-raw-autorelease-notify-build-failure.sh searches console log for
+ # failures and emails the status to the release mailing list.
+ name: opendaylight-infra-notify-status
+ publishers:
+ - postbuildscript:
+ builders:
+ - shell:
+ !include-raw: include-raw-autorelease-notify-build-failure.sh
+ script-only-if-succeeded: False
+ script-only-if-failed: True