Made the version bump more robust.

This commit is contained in:
2026-08-10 08:33:15 +00:00
parent 38a8656008
commit ebe5a6352e
2 changed files with 36 additions and 13 deletions

View File

@ -7,11 +7,10 @@ cd "$parent_path" || exit
if [ 1 -eq "$#" ]
then
# ./version_bump.sh "$1"
make build-production TAG="$1"
else
# ./version_bump.sh
make build-production
./version_bump.sh "$1"
fi
current_version=$(grep -m 1 '^version = ' barker/pyproject.toml | sed -E 's/version = "([^"]+)"/\1/')
make build-production TAG="$current_version"
cd "$parent_path/ansible" || exit
ansible-playbook --inventory=hosts playbook.yml

View File

@ -5,20 +5,44 @@ cd "$parent_path" || exit
if [ 1 -eq "$#" ]
then
echo "Version bump to $1"
sed --in-place --regexp-extended 's/"([0-9]{1,2}.[0-9].[0-9])"/"'"$1"'"/g' barker/barker/__version__.py
current_version=$(grep -m 1 '^version = ' barker/pyproject.toml | sed -E 's/version = "([^"]+)"/\1/')
IFS='.' read -r major minor patch <<< "$current_version"
if [ "$1" == "major" ]; then
major=$((major + 1))
minor=0
patch=0
new_version="${major}.${minor}.${patch}"
elif [ "$1" == "minor" ]; then
minor=$((minor + 1))
patch=0
new_version="${major}.${minor}.${patch}"
elif [ "$1" == "patch" ]; then
patch=$((patch + 1))
new_version="${major}.${minor}.${patch}"
elif [[ "$1" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
new_version="$1"
else
echo "Invalid argument: must be 'major', 'minor', 'patch', or a specific version (e.g. 1.2.3)"
exit 1
fi
echo "Version bump from $current_version to $new_version"
sed --in-place --regexp-extended 's/"([0-9]{1,2}.[0-9]+.[0-9]+)"/"'"$new_version"'"/g' barker/barker/__version__.py
git add barker/barker/__version__.py
sed --in-place --regexp-extended 's/version = "([0-9]{1,2}.[0-9].[0-9])"/version = "'"$1"'"/g' barker/pyproject.toml
sed --in-place --regexp-extended 's/version = "([0-9]{1,2}.[0-9]+.[0-9]+)"/version = "'"$new_version"'"/g' barker/pyproject.toml
git add barker/pyproject.toml
sed --in-place --regexp-extended 's/version = "([0-9]{1,2}.[0-9].[0-9])"/version = "'"$1"'"/g' frank/pyproject.toml
sed --in-place --regexp-extended 's/version = "([0-9]{1,2}.[0-9]+.[0-9]+)"/version = "'"$new_version"'"/g' frank/pyproject.toml
git add frank/pyproject.toml
sed --in-place --regexp-extended 's/version: '\''([0-9]*.[0-9].[0-9])'\''/version: '\'"$1"\''/g' bookie/src/app/app.environment.ts
sed --in-place --regexp-extended 's/version: '\''([0-9]*.[0-9]+.[0-9]+)'\''/version: '\'"$new_version"\''/g' bookie/src/app/app.environment.ts
git add bookie/src/app/app.environment.ts
sed --in-place --regexp-extended 's/"version": "([0-9]{1,2}.[0-9].[0-9])"/"version": "'"$1"'"/g' bookie/package.json
sed --in-place --regexp-extended 's/"version": "([0-9]{1,2}.[0-9]+.[0-9]+)"/"version": "'"$new_version"'"/g' bookie/package.json
git add bookie/package.json
git commit -m "Version Bump v$1"
git tag "v$1"
git commit -m "Version Bump v$new_version"
git tag "v$new_version"
else
echo "No version bump"
echo "Usage: $0 <major|minor|patch|version_string>"
exit 1
fi
git push --tags