1
- ---
2
1
name : " Update SDK version"
3
2
4
3
on :
13
12
# - major
14
13
required : true
15
14
default : patch
15
+ mark_as_alpha :
16
+ type : boolean
17
+ description : Mark as alpha release
18
+ required : false
19
+ default : false
16
20
17
21
env :
18
22
UPGRADE_TYPE : ${{ github.event.inputs.upgrade_type || 'patch' }}
23
+ MARK_AS_ALPHA : ${{ github.event.inputs.mark_as_alpha || false }}
19
24
20
25
jobs :
21
26
update :
30
35
id : check_team
31
36
run : |
32
37
./.github/scripts/check_team_membership.sh "${{ github.actor }}" "${{ secrets.UNITY_IMMUTABLE_SDK_GITHUB_TOKEN }}"
33
- # shellcheck disable=SC1090
34
38
source "$GITHUB_ENV"
35
39
echo "${{ github.actor }} is a member of the SDK team: $IS_MEMBER"
36
40
if [[ "$IS_MEMBER" != "true" ]]; then
@@ -53,29 +57,35 @@ jobs:
53
57
MARKETPLACE_FILE=./src/Packages/Marketplace/package.json
54
58
55
59
CURRENT_VERSION=$(jq -r '.version' $PASSPORT_FILE)
60
+ echo "CURRENT_VERSION: $CURRENT_VERSION"
56
61
IFS='.' read -r MAJOR MINOR PATCH <<< "$CURRENT_VERSION"
57
62
58
- # Increment version based on UPGRADE_TYPE
59
- case "$UPGRADE_TYPE" in
60
- major)
61
- MAJOR=$((MAJOR + 1))
62
- MINOR=0
63
- PATCH=0
64
- ;;
65
- minor)
63
+ HAS_ALPHA=$(echo "$CURRENT_VERSION" | grep -q "\.alpha" && echo "true" || echo "false")
64
+ echo "HAS_ALPHA: $HAS_ALPHA"
65
+ NEW_VERSION=""
66
+
67
+ if [[ "$HAS_ALPHA" == "true" ]]; then
68
+ # If version is alpha and upgrade type is patch, don't increment patch
69
+ if [ "$UPGRADE_TYPE" == "patch" ]; then
70
+ NEW_VERSION="$MAJOR.$MINOR.$PATCH"
71
+ elif [ "$UPGRADE_TYPE" == "minor" ]; then
66
72
MINOR=$((MINOR + 1))
67
73
PATCH=0
68
- ;;
69
- patch)
74
+ NEW_VERSION="$MAJOR.$MINOR.$PATCH"
75
+ fi
76
+ else
77
+ if [ "$UPGRADE_TYPE" == "patch" ]; then
70
78
PATCH=$((PATCH + 1))
71
- ;;
72
- *)
73
- echo "Invalid upgrade type: $UPGRADE_TYPE"
74
- exit 1
75
- ;;
76
- esac
77
-
78
- NEW_VERSION="$MAJOR.$MINOR.$PATCH"
79
+ elif [ "$UPGRADE_TYPE" == "minor" ]; then
80
+ MINOR=$((MINOR + 1))
81
+ PATCH=0
82
+ fi
83
+ NEW_VERSION="$MAJOR.$MINOR.$PATCH"
84
+ fi
85
+
86
+ if [[ "$MARK_AS_ALPHA" == "true" && "$HAS_ALPHA" == "false" ]]; then
87
+ NEW_VERSION="$NEW_VERSION.alpha"
88
+ fi
79
89
80
90
# Update Passport package.json
81
91
jq --arg version "$NEW_VERSION" '.version = $version' $PASSPORT_FILE > tmp.$$.json && mv tmp.$$.json $PASSPORT_FILE
0 commit comments