Rename deploy to release to make more sense
This commit is contained in:
53
release.sh
Normal file
53
release.sh
Normal file
@@ -0,0 +1,53 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Default version increment
|
||||
DEFAULT_INCREMENT="0.0.1"
|
||||
|
||||
# Get the increment parameter or use the default
|
||||
INCREMENT=${1:-$DEFAULT_INCREMENT}
|
||||
|
||||
# Function to increment the version
|
||||
increment_version() {
|
||||
local version=$1
|
||||
local increment=$2
|
||||
|
||||
IFS='.' read -r -a version_parts <<< "$version"
|
||||
IFS='.' read -r -a increment_parts <<< "$increment"
|
||||
|
||||
# Increment major, minor, and patch
|
||||
version_parts[0]=$((version_parts[0] + increment_parts[0]))
|
||||
version_parts[1]=$((version_parts[1] + increment_parts[1]))
|
||||
version_parts[2]=$((version_parts[2] + increment_parts[2]))
|
||||
|
||||
# Reset minor and patch if major is incremented
|
||||
if [ "${increment_parts[0]}" -gt 0 ]; then
|
||||
version_parts[1]=0
|
||||
version_parts[2]=0
|
||||
elif [ "${increment_parts[1]}" -gt 0 ]; then
|
||||
version_parts[2]=0
|
||||
fi
|
||||
|
||||
echo "${version_parts[0]}.${version_parts[1]}.${version_parts[2]}"
|
||||
}
|
||||
|
||||
CURRENT_VERSION=$(grep -oP '## Version: \K[0-9]+\.[0-9]+\.[0-9]+' Heimdall.toc)
|
||||
NEW_VERSION=$(increment_version "$CURRENT_VERSION" "$INCREMENT")
|
||||
sed -i "s/## Version: $CURRENT_VERSION/## Version: $NEW_VERSION/" Heimdall.toc
|
||||
sed -i "s/local VERSION = \"$CURRENT_VERSION\"/local VERSION = \"$NEW_VERSION\"/" Heimdall.lua
|
||||
|
||||
# Existing deployment steps
|
||||
rm Heimdall.zip
|
||||
mkdir Heimdall
|
||||
cp *.lua *.toc Heimdall
|
||||
cp -r Modules Heimdall
|
||||
cp -r Sounds Heimdall
|
||||
cp -r Texture Heimdall
|
||||
7z a Heimdall.zip Heimdall
|
||||
rm -rf Heimdall
|
||||
|
||||
# Git operations
|
||||
git add Heimdall.lua Heimdall.toc Heimdall.zip
|
||||
git commit -m "Release $NEW_VERSION"
|
||||
git tag "$NEW_VERSION"
|
||||
|
||||
echo "Deployment complete. New version: $NEW_VERSION"
|
||||
Reference in New Issue
Block a user