Add script to bump version
This commit is contained in:
parent
ebf7d43bfb
commit
c4f3e9b29f
1 changed files with 41 additions and 0 deletions
41
scripts/bump_version.sh
Executable file
41
scripts/bump_version.sh
Executable file
|
@ -0,0 +1,41 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Exit immediately if a command exits with a non-zero status
|
||||
set -e
|
||||
|
||||
# Go to the project root directory
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
# Check that the current branch is main
|
||||
if [[ $(git rev-parse --abbrev-ref HEAD) != "main" ]]; then
|
||||
echo "Error: Not on main branch"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check that there are no uncommitted changes
|
||||
if [[ $(git diff-index --quiet HEAD --) != 0 ]]; then
|
||||
echo "Error: There are uncommitted changes"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Pull the latest changes from main branch
|
||||
git pull origin main
|
||||
|
||||
# Create a new branch with the current date and time as a suffix
|
||||
new_branch="bump-version-$(date +'%Y%m%d%H%M%S')"
|
||||
git checkout -b "$new_branch"
|
||||
|
||||
# Find the version line in pubspec.yaml
|
||||
version_line=$(grep -E '^version:' pubspec.yaml)
|
||||
|
||||
# Extract and bump the version number and code
|
||||
new_version=$(echo $version_line | awk -F '[.+]' '{printf "version: 0.%s.%d+%d", $2, $3+1, $4+1}')
|
||||
|
||||
# Replace the version line in pubspec.yaml (macOS compatible)
|
||||
sed -i '' "s/$version_line/$new_version/" pubspec.yaml
|
||||
|
||||
# Commit the version bump with new_version in the commit message
|
||||
git add pubspec.yaml
|
||||
git commit -m "Bump version to $new_version"
|
||||
|
||||
gh pr create --fill -r ashilkn --base main
|
Loading…
Add table
Reference in a new issue