diff options
Diffstat (limited to 'hack/create-release-pr.sh')
| -rwxr-xr-x | hack/create-release-pr.sh | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/hack/create-release-pr.sh b/hack/create-release-pr.sh index 19dda33..6b0f1ef 100755 --- a/hack/create-release-pr.sh +++ b/hack/create-release-pr.sh @@ -4,14 +4,23 @@ # - install gh cli and semver-cli (go install github.com/davidrjonas/semver-cli@latest) # - create and push "release-X.Y" branch # - checkout this branch locally -# - run this script from repo root: ./hack/create-release-pr.sh +# - run this script from repo root: ./hack/create-release-pr.sh [REMOTE] # - merge the PR # It will trigger the release workflow that would create release draft on github -RELEASE_BRANCH="$(git rev-parse --abbrev-ref HEAD || true)" set -eux set -o pipefail + +CURRENT_BRANCH="$(git branch --show-current)" + +if [[ ! "$CURRENT_BRANCH" == release-* ]]; then + echo "!! Please checkout branch 'release-X.Y' (currently in branch: '${CURRENT_BRANCH}')" >&2 + exit 1 +fi + +RELEASE_BRANCH="${CURRENT_BRANCH}" + ### look for latest on-branch tag PREVIOUS_TAG=$(git describe --tags --abbrev=0 --match "*${RELEASE_BRANCH##release-}*" 2>/dev/null || true) @@ -26,11 +35,14 @@ echo $NEW_VERSION > VERSION IMAGE_TAG="v${NEW_VERSION}" make manifests +REMOTE=${1:-origin} +REMOTE_URL=$(git remote get-url ${REMOTE}) + git checkout -b "feat/new-version-${NEW_VERSION}" git commit -m "Release ${NEW_VERSION}" VERSION manifests/ -git push --set-upstream origin "feat/new-version-${NEW_VERSION}" -gh label --repo $(git remote get-url origin) create --force release -gh pr --repo $(git remote get-url origin) \ +git push --set-upstream ${REMOTE} "feat/new-version-${NEW_VERSION}" +gh label --repo ${REMOTE_URL} create --force release +gh pr --repo ${REMOTE_URL} \ create \ --base ${RELEASE_BRANCH} \ --title "Release ${NEW_VERSION}" \ |
