Skip to content

Commit

Permalink
[haxe] Publish script.
Browse files Browse the repository at this point in the history
  • Loading branch information
davidetan committed Jul 9, 2024
1 parent c7d68a2 commit 4aa918f
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 17 deletions.
40 changes: 24 additions & 16 deletions spine-haxe/build.sh
Original file line number Diff line number Diff line change
@@ -1,24 +1,32 @@
#!/bin/sh
set -e

if [ -z "$GITHUB_REF" ];
then
BRANCH=$(git symbolic-ref --short -q HEAD)
if [ -z "$GITHUB_REF" ]; then
BRANCH=$(git symbolic-ref --short -q HEAD)
else
BRANCH=${GITHUB_REF#refs/heads/}
BRANCH=${GITHUB_REF#refs/heads/}
fi

echo "Building spine-haxe $BRANCH artifacts"
# Get the latest commit message
COMMIT_MSG=$(git log -1 --pretty=%B)

if ! [ -z "$HAXE_UPDATE_URL" ] && ! [ -z "$BRANCH" ];
then
echo "Deploying spine-haxe $BRANCH artifacts"
zip -r spine-haxe.zip \
haxelib.json \
LICENSE \
README.md \
spine-haxe
curl -f -F "file=@spine-haxe.zip" "$HAXE_UPDATE_URL$BRANCH"
# Public only if the commit message is in the correct format
if echo "$COMMIT_MSG" | grep -qE '^\[haxe\] Release [0-9]+\.[0-9]+\.[0-9]+$'; then
VERSION=$(echo "$COMMIT_MSG" | sed -E 's/^\[haxe\] Release ([0-9]+\.[0-9]+\.[0-9]+)$/\1/')
echo "Building spine-haxe $BRANCH artifacts (version $VERSION)"

if [ ! -z "$HAXE_UPDATE_URL" ] && [ ! -z "$BRANCH" ]; then
echo "Deploying spine-haxe $BRANCH artifacts (version $VERSION)"
zip -r "spine-haxe-$VERSION.zip" \
haxelib.json \
LICENSE \
README.md \
spine-haxe
curl -f -F "file=@spine-haxe-$VERSION.zip" "$HAXE_UPDATE_URL$BRANCH"
else
echo "Not deploying artifacts. HAXE_UPDATE_URL and/or BRANCH not set."
fi
else
echo "Not deploying artifacts. HAXE_UPDATE_URL and/or BRANCH not set."
fi
echo "The commit is not a release - do not publish."
echo "To release the commit has to be in the for: \"[haxe] Release x.y.z\""
fi
2 changes: 1 addition & 1 deletion spine-haxe/haxelib.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
],
"description": "The official Spine Runtime for Haxe",
"version": "4.2.0",
"releasenote": "Initial release",
"releasenote": "Update to 4.2.0",
"contributors": [
"esotericsoftware"
],
Expand Down
29 changes: 29 additions & 0 deletions spine-haxe/publish.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#!/bin/sh
set -e

currentVersion=$(grep -o '"version": "[^"]*' haxelib.json | grep -o '[^"]*$')

major=$(echo "$currentVersion" | cut -d. -f1)
minor=$(echo "$currentVersion" | cut -d. -f2)
patch=$(echo "$currentVersion" | cut -d. -f3)
newPatch=$((patch + 1))
newVersion="$major.$minor.$newPatch"

echo "current version: $currentVersion"
echo "new version: $newVersion"

sed -i '' "s/$currentVersion/$newVersion/" haxelib.json

echo "Write Y if you want to commit and push the new version $newVersion."
echo "This will trigger a pipeline that will publish the new version on esoteric software server."
echo "Do you want to proceed [y/n]?"

read answer
if [ "$answer" = "Y" ] || [ "$answer" = "y" ]; then
git add haxelib.json
git commit -m "[haxe] Release $newVersion"
git push origin haxe-ci
echo "Changes committed and pushed."
else
echo "Commit and push cancelled, but haxelib.json version updated."
fi

0 comments on commit 4aa918f

Please sign in to comment.