1 # Macros for the AutoRelease project
3 name: autorelease-release-tag
7 default: '{release-tag}'
8 description: "The Release train tag to use eg. Beryllium-SR1"
11 name: autorelease-release-branch
15 default: '{release-branch}'
16 description: "The Release train branch to base build off eg. stable/beryllium"
19 name: autorelease-build-timeout
27 name: autorelease-checkout-gerrit-patch
31 echo "Checking out ${GERRIT_PROJECT} patch ${GERRIT_REFSPEC}..."
32 git fetch origin ${GERRIT_REFSPEC} && git checkout FETCH_HEAD
38 - config-file-provider:
40 - file-id: 'autorelease-settings'
41 variable: 'SETTINGS_FILE'
42 - file-id: 'odl-global-settings'
43 variable: 'GLOBAL_SETTINGS_FILE'
46 name: autorelease-determine-merge-order
49 # TODO: Remove this condition once stable/beryllium is no longer
50 # officially maintained.
51 if [ "$GERRIT_BRANCH" != "stable/beryllium" ]; then
52 virtualenv --system-site-packages $WORKSPACE/venv
53 source $WORKSPACE/venv/bin/activate
54 pip install --upgrade pip
55 pip install --upgrade networkx
57 ./scripts/determine-merge-order.py
59 rm -rf $WORKSPACE/venv
63 name: autorelease-maven-deploy
67 - include-raw-autorelease-maven-deploy.sh
70 name: autorelease-maven-sources
73 maven-version: '{maven-version}'
75 goals: '--quiet dependency:sources -DoutputFile=$WORKSPACE/sources.log -DappendOutput -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
77 - '-Xmx4096m -XX:MaxPermSize=1024m'
78 settings: '{settings}'
80 global-settings: '{global-settings}'
81 global-settings-type: cfp
84 name: autorelease-maven-sources-post-process
87 awk '/The following files have NOT been resolved:/,/^$/' sources.log > missing-sources.log
90 name: autorelease-generate-taglist
93 echo autorelease `git rev-parse --verify HEAD` ${RELEASE_TAG} | tee -a $WORKSPACE/taglist.log
94 git submodule foreach 'echo $path `git rev-parse --verify HEAD` ${RELEASE_TAG} | tee -a $WORKSPACE/taglist.log'
97 name: autorelease-distribute-taglist
100 if [ -d "integration/distribution/distributions" ]; then
101 cp -vf "$WORKSPACE/taglist.log" "integration/distribution/distributions/karaf/src/main/assembly/"
103 cp -vf "$WORKSPACE/taglist.log" "integration/distribution/distribution-karaf/src/main/assembly/"
107 name: autorelease-generate-release-patches
111 - include-raw-autorelease-release-versions.sh
114 name: autorelease-sys-stats
121 name: autorelease-get-integration-test-variables
125 - include-raw-autorelease-get-integration-test-variables.sh
127 properties-file: variables.prop
130 name: autorelease-generate-project-report
134 - include-raw-generate-project-report.sh
137 name: autorelease-fix-relative-paths
140 ./scripts/fix-relativepaths.sh
143 # include-raw-autorelease-notify-build-failure.sh searches console log for
144 # failures and emails the status to the release mailing list.
145 name: opendaylight-infra-notify-status
148 !include-raw-escape: include-raw-autorelease-notify-build-failure.sh