Skip to content

Clean gradle builds

Clean gradle builds #4

Workflow file for this run

name: Release
on:
push:
tags: [ '*' ]
permissions:
contents: write
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
distribution: 'adopt'
java-version: '21'
- name: Cache Gradle files
uses: actions/cache@v4
with:
path: |
~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Cache Gradle build directory
uses: actions/cache@v4
with:
path: build
key: ${{ runner.os }}-gradle-build-${{ hashFiles('build.gradle', 'settings.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-build-
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Get Git tag
id: git-tag
run: |
TAG=$(git describe --tags --abbrev=0 2>/dev/null || true)
echo "tag=${TAG}" >> $GITHUB_OUTPUT
- name: Clean gradle build
run: ./gradlew clean
- name: Build with Gradle
run: ./gradlew -Dgit.tag=${{ steps.git-tag.outputs.tag }} build
- name: Check if prerelease
id: check-prerelease
run: |
if [[ "${{ github.ref_name }}" == *"alpha"* ]] || [[ "${{ github.ref_name }}" == *"beta"* ]]; then
echo "prerelease=true" >> $GITHUB_OUTPUT
else
echo "prerelease=false" >> $GITHUB_OUTPUT
fi
- name: Create Release
id: create-release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ github.ref_name }}
name: Release ${{ github.ref_name }}
body: |
Release ${{ github.ref_name }}
Built from commit ${{ github.sha }}
files: |
build/libs/*-all.jar
build/libs/*-bundled.jar
draft: false
prerelease: ${{ steps.check-prerelease.outputs.prerelease }}