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 |