Skip to content

Commit e1165e4

Browse files
committed
Enhance version bump logic to support pre-release tags in CI workflows
1 parent e8bfd23 commit e1165e4

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

.github/workflows/deploy-dev-release.yml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ on:
1010
type: choice
1111
default: 'prerelease'
1212
options:
13-
- prerelease # 2025.3.2a13 -> 2025.3.2a14
14-
- prepatch # 2025.3.2 -> 2025.3.3a1
15-
- preminor # 2025.3.2 -> 2025.4.0a1
13+
- prerelease # 2025.3.2a13 -> 2025.3.2a14, 2026.1.1b1 -> 2026.1.1b2
14+
- prepatch # 2025.3.2a13 -> 2025.3.3a1, 2026.1.1b1 -> 2026.1.2b1
15+
- preminor # 2025.3.2a13 -> 2025.4.0a1, 2026.1.1b1 -> 2026.2.0b1
1616
- custom # Use custom-version input
1717
custom-version:
1818
description: 'Custom version (only if bump-type is "custom", e.g., 2025.4.0b1)'
@@ -70,12 +70,13 @@ jobs:
7070
echo "Using custom version: $NEW_VERSION"
7171
else
7272
# Parse version components
73-
# Handle versions like 2025.3.2a13 or 2025.3.2
74-
if [[ $CURRENT_VERSION =~ ^([0-9]+)\.([0-9]+)\.([0-9]+)(a([0-9]+))?$ ]]; then
73+
# Handle versions like 2025.3.2a13, 2025.3.2b1, or 2025.3.2
74+
if [[ $CURRENT_VERSION =~ ^([0-9]+)\.([0-9]+)\.([0-9]+)((a|b)([0-9]+))?$ ]]; then
7575
MAJOR="${BASH_REMATCH[1]}"
7676
MINOR="${BASH_REMATCH[2]}"
7777
PATCH="${BASH_REMATCH[3]}"
78-
PRE_NUM="${BASH_REMATCH[5]:-0}"
78+
PRE_TAG="${BASH_REMATCH[5]:-a}"
79+
PRE_NUM="${BASH_REMATCH[6]:-0}"
7980
else
8081
echo "Error: Cannot parse version $CURRENT_VERSION"
8182
exit 1
@@ -84,15 +85,15 @@ jobs:
8485
case $BUMP_TYPE in
8586
prerelease)
8687
NEW_PRE=$((PRE_NUM + 1))
87-
NEW_VERSION="${MAJOR}.${MINOR}.${PATCH}a${NEW_PRE}"
88+
NEW_VERSION="${MAJOR}.${MINOR}.${PATCH}${PRE_TAG}${NEW_PRE}"
8889
;;
8990
prepatch)
9091
NEW_PATCH=$((PATCH + 1))
91-
NEW_VERSION="${MAJOR}.${MINOR}.${NEW_PATCH}a1"
92+
NEW_VERSION="${MAJOR}.${MINOR}.${NEW_PATCH}${PRE_TAG}1"
9293
;;
9394
preminor)
9495
NEW_MINOR=$((MINOR + 1))
95-
NEW_VERSION="${MAJOR}.${NEW_MINOR}.0a1"
96+
NEW_VERSION="${MAJOR}.${NEW_MINOR}.0${PRE_TAG}1"
9697
;;
9798
esac
9899
fi

0 commit comments

Comments
 (0)