Files
originblacklist/.github/workflows/gradle.yml
Colbster937 430653a4ab 2.0
2026-01-09 18:07:40 -06:00

69 lines
2.1 KiB
YAML

name: Build Plugin
on:
workflow_dispatch:
push:
branches: [ main ]
permissions:
contents: write
actions: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 21
- uses: gradle/actions/setup-gradle@v4
- run: |
gradle wrapper
chmod +x ./gradlew
./gradlew shadowJar
- id: vars
run: |
echo "COMMIT_HASH=$(git rev-parse --short HEAD)" >> "$GITHUB_OUTPUT"
./gradlew -q printVars | sed 's/ = /=/g' >> "$GITHUB_OUTPUT"
- id: ghck
run: |
CODE=$(curl -s -o /dev/null -w "%{http_code}" \
-H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"https://api.github.com/repos/${{ github.repository }}/releases/tags/v${{ steps.vars.outputs.VERS }}")
if [ "$CODE" = "200" ]; then
echo "EXISTS=true" >> "$GITHUB_OUTPUT"
else
echo "EXISTS=false" >> "$GITHUB_OUTPUT"
fi
- run: |
mkdir -p dist
cp "./build/libs/${{ steps.vars.outputs.AFCT }}" ./dist
- uses: actions/upload-artifact@v4
with:
path: dist/${{ steps.vars.outputs.AFCT }}
name: ${{ steps.vars.outputs.AFCT }}
- if: github.event_name == 'push' && github.ref == 'refs/heads/main'
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ format('v{0}{1}', steps.vars.outputs.VERS, steps.ghck.outputs.EXISTS == 'true' && format('+{0}', steps.vars.outputs.COMMIT_HASH) || '') }}
name: ${{ format('{0}{1}', steps.ghck.outputs.EXISTS == 'true' && 'Snapshot ' || 'v', steps.ghck.outputs.EXISTS == 'true' && steps.vars.outputs.COMMIT_HASH || steps.vars.outputs.VERS) }}
files: dist/${{ steps.vars.outputs.AFCT }}
prerelease: ${{ steps.ghck.outputs.EXISTS == 'true' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}