# SPDX-FileCopyrightText: 2023 Linnea Gräf <nea@nea.moe>
#
# SPDX-License-Identifier: CC0-1.0

name: Build
on:
    - push
    - pull_request

jobs:
    build:
        name: Test
        runs-on: ubuntu-latest
        steps:
            - uses: actions/checkout@v4
              name: Checkout repository
            - name: Set up JDK 21
              uses: actions/setup-java@v4
              with:
                  distribution: temurin
                  java-version: 21
            - name: Set up gradle cache
              uses: gradle/actions/setup-gradle@v3
            - name: Build with gradle
              run: ./gradlew clean test remapJar --stacktrace
            - name: Upload build artifact
              uses: actions/upload-artifact@v3
              with:
                  path: build/libs/Firmament-*.jar
            - name: Move build artifact around
              id: artifact-rename
              run: |
                  rm -f build/libs/*sources*.jar
                  newfilename=build/libs/Firmament-$(git rev-parse --short HEAD).jar
                  echo filename=$newfilename >>"$GITHUB_OUTPUT"
                  mv build/libs/Firmament-*.jar $newfilename
            - name: Upload artifact to discord
              if: ${{ github.ref == 'refs/heads/master' }}
              uses: tsickert/discord-webhook@v5.3.0
              with:
                  webhook-url: ${{ secrets.WEBHOOK_URL }}
                  filename: ${{ steps.artifact-rename.outputs.filename }}