39 lines
1.0 KiB
Bash
39 lines
1.0 KiB
Bash
#!/usr/bin/env bash
|
|
# file: release-branch.sh
|
|
# description: Prepare a release branch from develop to master.
|
|
|
|
## Build release context as environment variables.
|
|
GIT_BRANCH=$(git symbolic-ref --short HEAD)
|
|
|
|
## TODO: get package version from pyproject.toml
|
|
CURRENT_VERSION=v2.2.0
|
|
## TODO: get new package version e.g. minor, major, bugfix
|
|
NEW_VERSION=v2.3.0
|
|
|
|
## TODO: ensure you're on the develop branch else fail
|
|
if [[ "${GIT_BRANCH}" != "develop" ]]; then
|
|
echo 'Please switch to to the develop branch to create a release branch.'
|
|
exit 0
|
|
fi
|
|
|
|
## Create release branch
|
|
git checkout -b "release/${NEW_VERSION}" develop
|
|
|
|
## TODO: bump package version in pyproject.toml
|
|
## TODO: commit changes to pyproject.toml
|
|
## TODO: generate new CHANGELOG entry from commits
|
|
## TODO: commit changes to CHANGELOG
|
|
|
|
## Return to develop
|
|
git checkout develop
|
|
|
|
if [[ -z "${CI}" ]]; then
|
|
echo "Please confirm the release branch is correct."
|
|
read -p "Press enter to continue"
|
|
echo
|
|
fi
|
|
|
|
## Push branch and tags
|
|
git push origin "release/${NEW_VERSION}"
|
|
|
|
## TODO: create PR for review |