eris/packaging/push-new-version

28 lines
619 B
Text
Raw Normal View History

#!/bin/bash
set -e
# Only run at the codebase root.
[ -e .git ]
# Don't run with uncommited or staged changes.
git diff --exit-code
git diff --cached --exit-code
NEW_VERSION=$(date "+v%Y.%m.%d")
CURRENT_VERSION=$(git describe --tags --abbrev=0)
if [ $NEW_VERSION == $CURRENT_VERSION ]; then
git tag --delete $CURRENT_VERSION
git push --delete origin $CURRENT_VERSION
else
git grep --no-color -l $CURRENT_VERSION | xargs sed -i "s/$CURRENT_VERSION/$NEW_VERSION/g"
uv lock
git commit --all --message="Update version to $NEW_VERSION"
fi
git tag $NEW_VERSION
git push
git push --tags
echo "Done."