@@ -13,8 +13,16 @@ requireSnapshot() {
1313 fi
1414}
1515
16- removeSnapshots () {
17- sed -i ' s/-SNAPSHOT//' pom.xml
16+ setReleaseVersion () {
17+ if [[ ! ${RELEASE_VERSION} =~ ^[0-9]+\. [0-9]+\. [0-9]+$ ]]; then
18+ echo " Release version must look like 14.3.0: '${RELEASE_VERSION} '"
19+ exit 1
20+ fi
21+ sed -i " 0,/<version>.*<\/version>/s//<version>${RELEASE_VERSION} <\/version>/" pom.xml
22+ local PREVIOUS_VERSION=${PREVIOUS_TAG# v}
23+ sed -i -e " s/graphql-java-tools:${PREVIOUS_VERSION} '/graphql-java-tools:${RELEASE_VERSION} '/" \
24+ -e " s/<version>${PREVIOUS_VERSION} <\/version>/<version>${RELEASE_VERSION} <\/version>/" README.md
25+ grep -q " <version>${RELEASE_VERSION} </version>" README.md || echo " ::warning::README.md still shows another version, update it manually"
1826}
1927
2028commitRelease () {
@@ -27,7 +35,6 @@ publishTag() {
2735 local APP_VERSION=$( getVersion)
2836 git push origin " v${APP_VERSION} "
2937 # Release tags aren't on master's first-parent history, so GitHub can't find the previous one on its own
30- local PREVIOUS_TAG=$( gh release view --json tagName --jq .tagName)
3138 gh release create " v${APP_VERSION} " --verify-tag --draft --generate-notes --notes-start-tag " ${PREVIOUS_TAG} " --title " v${APP_VERSION} " \
3239 || echo " ::warning::Draft release for v${APP_VERSION} was not created, create it manually"
3340}
@@ -61,9 +68,10 @@ git config --global user.email "actions@github.com"
6168git config --global user.name " GitHub Actions"
6269
6370requireSnapshot
71+ PREVIOUS_TAG=$( gh release view --json tagName --jq .tagName)
6472
6573echo " Deploying release to Maven Central"
66- removeSnapshots
74+ setReleaseVersion
6775
6876mvn --batch-mode -Prelease deploy
6977
0 commit comments