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-trigger-patch-site-merged
30 server-name: 'OpenDaylight'
33 - comment-added-contains-event:
34 comment-contains-value: 'republish'
36 - project-compare-type: 'ANT'
37 project-pattern: '{name}'
39 - branch-compare-type: 'ANT'
40 branch-pattern: '**/{branch}'
48 name: autorelease-trigger-patch-site-submitted
51 server-name: 'OpenDaylight'
53 - patchset-created-event:
54 exclude-drafts: 'true'
55 exclude-trivial-rebase: 'false'
56 exclude-no-code-change: 'true'
57 - draft-published-event
58 - comment-added-contains-event:
59 comment-contains-value: 'recheck'
60 - comment-added-contains-event:
61 comment-contains-value: 'reverify'
63 - project-compare-type: 'ANT'
64 project-pattern: '{name}'
66 - branch-compare-type: 'ANT'
67 branch-pattern: '**/{branch}'
75 name: autorelease-checkout-gerrit-patch
79 echo "Checking out ${GERRIT_PROJECT} patch ${GERRIT_REFSPEC}..."
80 git fetch origin ${GERRIT_REFSPEC} && git checkout FETCH_HEAD
86 - config-file-provider:
88 - file-id: 'autorelease-settings'
89 variable: 'SETTINGS_FILE'
90 - file-id: 'odl-global-settings'
91 variable: 'GLOBAL_SETTINGS_FILE'
94 name: autorelease-determine-merge-order
97 virtualenv --system-site-packages $WORKSPACE/venv
98 source $WORKSPACE/venv/bin/activate
99 pip install --upgrade pip
100 pip install --upgrade networkx
102 ./scripts/determine-merge-order.py
104 rm -rf $WORKSPACE/venv
107 name: autorelease-maven-deploy
111 - include-raw-autorelease-maven-deploy.sh
114 name: autorelease-maven-sources
117 maven-version: '{maven-version}'
119 goals: '--quiet dependency:sources -DoutputFile=$WORKSPACE/sources.log -DappendOutput -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
121 - '-Xmx4096m -XX:MaxPermSize=1024m'
122 settings: '{settings}'
124 global-settings: '{global-settings}'
125 global-settings-type: cfp
128 name: autorelease-maven-sources-post-process
131 awk '/The following files have NOT been resolved:/,/^$/' sources.log > missing-sources.log
134 name: autorelease-generate-taglist
137 echo autorelease `git rev-parse --verify HEAD` ${RELEASE_TAG} | tee -a $WORKSPACE/taglist.log
138 git submodule foreach 'echo $path `git rev-parse --verify HEAD` ${RELEASE_TAG} | tee -a $WORKSPACE/taglist.log'
141 name: autorelease-distribute-taglist
144 if [ -d "integration/distribution/distributions" ]; then
145 cp -vf "$WORKSPACE/taglist.log" "integration/distribution/distributions/karaf/src/main/assembly/"
147 cp -vf "$WORKSPACE/taglist.log" "integration/distribution/distribution-karaf/src/main/assembly/"
151 name: autorelease-generate-release-patches
155 - include-raw-autorelease-release-versions.sh
158 name: autorelease-sys-stats
165 name: autorelease-get-integration-test-variables
169 - include-raw-autorelease-get-integration-test-variables.sh
171 properties-file: variables.prop
174 name: autorelease-generate-project-report
178 - include-raw-generate-project-report.sh