4
4
# - install gh cli and semver-cli (go install github.com/davidrjonas/semver-cli@latest)
5
5
# - create and push "release-X.Y" branch
6
6
# - checkout this branch locally
7
- # - run this script from repo root: ./hack/create-release-pr.sh
7
+ # - run this script from repo root: ./hack/create-release-pr.sh [REMOTE]
8
8
# - merge the PR
9
9
# It will trigger the release workflow that would create release draft on github
10
10
11
- RELEASE_BRANCH=" $( git rev-parse --abbrev-ref HEAD || true) "
12
11
set -eux
13
12
set -o pipefail
14
13
14
+
15
+ CURRENT_BRANCH=" $( git branch --show-current) "
16
+
17
+ if [[ ! " $CURRENT_BRANCH " == release-* ]]; then
18
+ echo " !! Please checkout branch 'release-X.Y' (currently in branch: '${CURRENT_BRANCH} ')" >&2
19
+ exit 1
20
+ fi
21
+
22
+ RELEASE_BRANCH=" ${CURRENT_BRANCH} "
23
+
15
24
# ## look for latest on-branch tag
16
25
PREVIOUS_TAG=$( git describe --tags --abbrev=0 --match " *${RELEASE_BRANCH## release-} *" 2> /dev/null || true)
17
26
@@ -26,11 +35,14 @@ echo $NEW_VERSION > VERSION
26
35
IMAGE_TAG=" v${NEW_VERSION} "
27
36
make manifests
28
37
38
+ REMOTE=${1:- origin}
39
+ REMOTE_URL=$( git remote get-url ${REMOTE} )
40
+
29
41
git checkout -b " feat/new-version-${NEW_VERSION} "
30
42
git commit -m " Release ${NEW_VERSION} " VERSION manifests/
31
- git push --set-upstream origin " feat/new-version-${NEW_VERSION} "
32
- gh label --repo $( git remote get-url origin ) create --force release
33
- gh pr --repo $( git remote get-url origin ) \
43
+ git push --set-upstream ${REMOTE} " feat/new-version-${NEW_VERSION} "
44
+ gh label --repo ${REMOTE_URL} create --force release
45
+ gh pr --repo ${REMOTE_URL} \
34
46
create \
35
47
--base ${RELEASE_BRANCH} \
36
48
--title " Release ${NEW_VERSION} " \
0 commit comments