Skip to content

Create Release

Create Release #22

name: Create Release
on:
workflow_dispatch:
# Needed for creating releases and uploading assets and dispatching packaging workflow
permissions:
contents: write
actions: write
jobs:
create-release:
name: Gradle create-release
runs-on: ubuntu-latest
outputs:
version: ${{ steps.get-version.outputs.version }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Java (Temurin 17)
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: '17'
cache: 'gradle'
- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@v2
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
- name: Ensure gradlew is executable
run: chmod +x gradlew
- name: Get version from Gradle
id: get-version
run: |
VERSION=$(./gradlew -q properties | grep "^version:" | awk '{print $2}')
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "Release version: $VERSION"
- name: Run Gradle create-release (create draft release)
run: |
./gradlew --no-daemon create-release \
-PtankRoyaleGitHubToken=${{ secrets.GITHUB_TOKEN }}
package-release:
name: Call package-release workflow
needs: create-release
uses: ./.github/workflows/package-release.yml
with:
version: ${{ needs.create-release.outputs.version }}
secrets: inherit