Skip to content

Update gradle.properties #1

Update gradle.properties

Update gradle.properties #1

Workflow file for this run

name: Release
on:
push:
branches: [ "master" ]
paths: [ "gradle.properties" ]
jobs:
release:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
java-version: '21'
distribution: 'microsoft'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: Check mod_version change
id: version
run: |
set -eo pipefail
current=$(grep '^mod_version=' gradle.properties | cut -d= -f2)
prev=$(git show HEAD^:gradle.properties 2>/dev/null | grep '^mod_version=' | cut -d= -f2 || true)
echo "current=$current" >> "$GITHUB_OUTPUT"
echo "previous=$prev" >> "$GITHUB_OUTPUT"
if [ -z "$prev" ] || [ "$current" != "$prev" ]; then
echo "changed=true" >> "$GITHUB_OUTPUT"
else
echo "changed=false" >> "$GITHUB_OUTPUT"
fi
- name: Build with Gradle
if: steps.version.outputs.changed == 'true'
run: ./gradlew build
- name: Prepare JAR artifacts
if: steps.version.outputs.changed == 'true'
run: |
set -eo pipefail
out_dir="build/upload"
rm -rf "$out_dir"
mkdir -p "$out_dir"
mc_version=$(grep '^minecraft_version=' gradle.properties | cut -d= -f2)
if [ -z "$mc_version" ]; then
echo "minecraft_version not found in gradle.properties" >&2
exit 1
fi
find build/libs -type f -name '*.jar' -print0 | while IFS= read -r -d '' jar; do
base=$(basename "$jar")
newbase="${base%.jar}-${mc_version}.jar"
cp "$jar" "$out_dir/$newbase"
done
- name: Create release and upload JARs
if: steps.version.outputs.changed == 'true'
uses: softprops/action-gh-release@v2
with:
tag_name: v${{ steps.version.outputs.current }}
name: Test Mod v${{ steps.version.outputs.current }}
files: build/upload/*.jar
generate_release_notes: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Skip release (version unchanged)
if: steps.version.outputs.changed != 'true'
run: echo "mod_version unchanged; skipping release."