Skip to content

Instantly share code, notes, and snippets.

@maxpeterson
Created September 17, 2016 08:43
Show Gist options
  • Save maxpeterson/24abbd1de178ba2c62f414d5fc257004 to your computer and use it in GitHub Desktop.
Save maxpeterson/24abbd1de178ba2c62f414d5fc257004 to your computer and use it in GitHub Desktop.
Make release of library
#!/bin/sh
version=$1; shift
current=$(grep 'version=' ./setup.py | sed -e "s/^.*version='\([^']*\).*$/\1/")
if [[ "$version" == "" ]]; then
echo "$0: No versions specified. Current is $current"
exit 1
fi
if [[ "$version" == "$current" ]]; then
echo "$0: Version $version is same as current version"
exit 1
fi
(git diff --quiet && git diff --cached --quiet) || \
(echo "You have uncommitted changes - stash or commit your changes"; exit 1)
sed -i '' -e "s/^# *UPCOMING*$/# $version/" changelog.md
sed -i '' -e "s/version='.*'/version='$version'/" setup.py
sed -i '' -e "s/\"version\": \".*\"/\"version\": \"$version\"/" package.json
git add . && \
git commit -v -m "Bump to $version" && \
git tag $version;
echo "To release run: git push && git push --tag && make release;"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment