update-version.sh
Some checks failed
ci / build (push) Failing after 23s

This commit is contained in:
miwr 2025-04-14 10:33:03 +02:00
parent 56e3ca3cd6
commit 7bfe1507dd
2 changed files with 43 additions and 0 deletions

View file

@ -36,6 +36,8 @@ jobs:
driver-opts: network=host
- name: Checkout code
uses: actions/checkout@v4
- name: Update version
run: update-version.sh
- name: Build and push
uses: docker/build-push-action@v6
with:

41
update-version.sh Executable file
View file

@ -0,0 +1,41 @@
#!/bin/bash
set -e
# Extract version using grep/sed as fallback (works even with -SNAPSHOT)
current_version=$(xmllint --xpath "/*[local-name()='project']/*[local-name()='version']/text()" pom.xml)
if [[ -z "$current_version" ]]; then
echo "❌ Failed to extract version from pom.xml"
exit 1
fi
# Strip "-SNAPSHOT" if present
base_version="${current_version%-SNAPSHOT}"
# Split into major.minor.patch
IFS='.' read -r major minor patch <<< "$base_version"
# Handle missing patch (e.g. 1.0)
patch=${patch:-0}
# Increment minor, reset patch
minor=$((minor + 1))
patch=0
# Preserve -SNAPSHOT if it was present
if [[ "$current_version" == *-SNAPSHOT ]]; then
new_version="${major}.${minor}.${patch}-SNAPSHOT"
else
new_version="${major}.${minor}.${patch}"
fi
# Apply it with Maven
echo "🔧 Updating version: $current_version$new_version"
mvn versions:set -DnewVersion="$new_version"
mvn versions:commit
# Remove unnecessary backup file
rm -f pom.xml.versionsBackup
echo "✅ Done!"