From 2e630ab55cc3cb719c68d34a000baad9e1bf6244 Mon Sep 17 00:00:00 2001 From: Ian Stapleton Cordasco <icordasco@heroku.com> Date: Thu, 28 Jun 2018 12:33:54 -0500 Subject: [PATCH] Steal the java buildpack's release script This will make releasing new versions easier for us. Closes gh-723 --- etc/publish.sh | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 etc/publish.sh diff --git a/etc/publish.sh b/etc/publish.sh new file mode 100644 index 00000000..4b7b45e8 --- /dev/null +++ b/etc/publish.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +set -e + +BP_NAME=${1:-"heroku/python"} + +curVersion=$(heroku buildpacks:versions "$BP_NAME" | awk 'FNR == 3 { print $1 }') +newVersion="v$((curVersion + 1))" + +read -p "Deploy as version: $newVersion [y/n]? " choice +case "$choice" in + y|Y ) echo "";; + n|N ) exit 0;; + * ) exit 1;; +esac + +originMaster=$(git rev-parse origin/master) +echo "Tagging commit $originMaster with $newVersion... " +git tag "$newVersion" "${originMaster:?}" +git push origin refs/tags/$newVersion + +heroku buildpacks:publish "$BP_NAME" "$newVersion" + +if [ $(git tag | grep -q previous-version) ]; then + echo "Updating previous-version tag" + git tag -d previous-version + git push origin :previous-version + git tag previous-version latest-version +fi +if [ $(git tag | grep -q latest-version) ]; then + echo "Updating latest-version tag" + git tag -d latest-version + git push origin :latest-version + git tag latest-version "${originMaster:?}" + git push --tags +fi + +echo "Done." -- GitLab