diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 3db549e..4cea4bd 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1 +1 @@ -* @leviem1 +* @zontreck diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 5f2e551..30c999c 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1 +1 @@ -github: leviem1 +github: zontreck diff --git a/.github/actions/common-setup/action.yml b/.github/actions/common-setup/action.yml deleted file mode 100644 index 99548a4..0000000 --- a/.github/actions/common-setup/action.yml +++ /dev/null @@ -1,21 +0,0 @@ -name: 'Common Setup' -description: 'Set up JDK and grant execute permissions for gradlew' - -inputs: - java-version: - description: 'Java version' - required: true - default: '21' - -runs: - using: 'composite' - steps: - - name: Set up JDK - uses: actions/setup-java@v4 - with: - java-version: ${{ inputs.java-version }} - distribution: 'zulu' - cache: gradle - - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 18a2326..3076486 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -8,7 +8,7 @@ updates: prefix: "build:" target-branch: "main" reviewers: - - "leviem1" + - "zontreck" - package-ecosystem: "gradle" directory: "/" schedule: @@ -17,4 +17,4 @@ updates: prefix: "deps:" target-branch: "main" reviewers: - - "leviem1" + - "zontreck" diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml deleted file mode 100644 index c7711c4..0000000 --- a/.github/workflows/main.yml +++ /dev/null @@ -1,112 +0,0 @@ -name: Test and Release - -on: - push: - branches: - - 'main' - schedule: - # PaperMC doesn't change version numbers for latest releases meaning the build may break - # unexpectedly. Build every so often so that we know if a breaking change has been published - - cron: '0 0 * * 6' - -concurrency: - group: ${{ format('{0}-{1}', github.workflow, github.ref) }} - cancel-in-progress: false - -jobs: - test: - name: Run unit tests - strategy: - matrix: - os: [ ubuntu-latest, windows-latest ] - java: [ 21 ] - runs-on: ${{ matrix.os }} - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Common Setup - uses: ./.github/actions/common-setup - with: - java-version: ${{ matrix.java }} - - - name: Build with Gradle - run: ./gradlew build --info - - - name: Upload build results - uses: actions/upload-artifact@v4 - with: - name: ${{ matrix.os }} Java ${{ matrix.java }} build results - path: ${{ github.workspace }}/build/libs/ - - - name: Upload test results - if: ${{ always() }} - uses: actions/upload-artifact@v4 - with: - name: ${{ matrix.os }} Java ${{ matrix.java }} test results - path: ${{ github.workspace }}/build/reports/ - - release: - runs-on: ubuntu-latest - needs: - - test - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Common Setup - uses: ./.github/actions/common-setup - with: - java-version: 21 - - - name: Publish with Gradle - run: ./gradlew -Pver="0.0.0-RC-1" release - - - name: Upload build results - uses: actions/upload-artifact@v4 - with: - name: Release Build - path: ${{ github.workspace }}/build/libs/ - - notify: - name: Send job complete notification - runs-on: ubuntu-latest - needs: - - test - - release - if: always() && vars.DISCORD_WEBHOOK_ID - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Common Setup - uses: ./.github/actions/common-setup - with: - java-version: 21 - - - name: Retrieve Project Name - run: echo "PROJECT_NAME=$(${{github.workspace}}/gradlew -q printProjectName)" >> $GITHUB_ENV - - - name: Notify on success - if: success() - uses: appleboy/discord-action@v1.2.0 - with: - webhook_id: ${{ vars.DISCORD_WEBHOOK_ID }} - webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }} - color: "#00FF00" - username: "${{ env.PROJECT_NAME }} Release Bot" - message: > - An ${{ env.PROJECT_NAME }} snapshot was deployed by ${{ github.actor }}: - https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} - - - name: Notify on failure - if: failure() - uses: appleboy/discord-action@v1.2.0 - with: - webhook_id: ${{ vars.DISCORD_WEBHOOK_ID }} - webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }} - color: "#FF0000" - username: "${{ env.PROJECT_NAME }} Release Bot" - message: > - An ${{ env.PROJECT_NAME }} snapshot deployment ran by ${{ github.actor }} failed: - https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml deleted file mode 100644 index ce2abe9..0000000 --- a/.github/workflows/pr.yml +++ /dev/null @@ -1,46 +0,0 @@ -name: Test - -on: - pull_request: - branches: - - 'main' - merge_group: - types: - - checks_requested - -concurrency: - group: ${{ format('{0}-{1}', github.workflow, github.ref) }} - cancel-in-progress: true - -jobs: - test: - name: Run unit tests - strategy: - matrix: - os: [ ubuntu-latest, windows-latest ] - java: [ 21 ] - runs-on: ${{ matrix.os }} - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Common Setup - uses: ./.github/actions/common-setup - with: - java-version: ${{ matrix.java }} - - - name: Build with Gradle - run: ./gradlew build --info - - - name: Upload build results - uses: actions/upload-artifact@v4 - with: - name: ${{ matrix.os }} Java ${{ matrix.java }} build results - path: ${{ github.workspace }}/build/libs/ - - - name: Upload test results - if: ${{ always() }} - uses: actions/upload-artifact@v4 - with: - name: ${{ matrix.os }} Java ${{ matrix.java }} test results - path: ${{ github.workspace }}/build/reports/ diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 839c126..0000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,43 +0,0 @@ -name: Notify on Release - -on: - release: - types: - - published - -jobs: - notify: - name: Send job complete notification - runs-on: ubuntu-latest - if: vars.DISCORD_RELEASE_WEBHOOK_ID || vars.DISCORD_WEBHOOK_ID - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Common Setup - uses: ./.github/actions/common-setup - - - name: Retrieve Project Name - run: echo "PROJECT_NAME=$(${{github.workspace}}/gradlew -q printProjectName)" >> $GITHUB_ENV - id: project_name - - - name: Set pre-release environment - if: ${{ github.event.release.prerelease }} - run: | - echo "RELEASE_TYPE=pre-release" >> $GITHUB_ENV - - - name: Set release environment - if: ${{ !github.event.release.prerelease }} - run: | - echo "RELEASE_TYPE=release" >> $GITHUB_ENV - - - name: Notify - uses: appleboy/discord-action@v1.2.0 - with: - webhook_id: ${{ !github.event.release.prerelease && vars.DISCORD_RELEASE_WEBHOOK_ID || vars.DISCORD_WEBHOOK_ID }} - webhook_token: ${{ !github.event.release.prerelease && secrets.DISCORD_RELEASE_WEBHOOK_TOKEN || secrets.DISCORD_WEBHOOK_TOKEN }} - color: "#00FF00" - username: "${{ env.PROJECT_NAME }} Release Bot" - message: > - An ${{ env.PROJECT_NAME }} ${{ env.RELEASE_TYPE }} was deployed by ${{ github.actor }}: - https://github.com/${{ github.repository }}/releases/tag/${{ github.ref_name }} diff --git a/.github/workflows/tag.yml b/.github/workflows/tag.yml deleted file mode 100644 index 6577073..0000000 --- a/.github/workflows/tag.yml +++ /dev/null @@ -1,84 +0,0 @@ -name: Release - -on: - push: - tags: - - 'v*' # For v1.0, v0.1.0, etc - -concurrency: - group: ${{ format('{0}-{1}', github.workflow, github.ref) }} - cancel-in-progress: true - -jobs: - release: - runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Common Setup - uses: ./.github/actions/common-setup - - - name: Publish with Gradle - run: ./gradlew -Pver=${{ github.ref_name }} release - - - name: Upload build results - uses: actions/upload-artifact@v4 - with: - name: Release Build - path: ${{ github.workspace }}/build/libs/ - - - name: Create Release - uses: softprops/action-gh-release@v2 - id: release - with: - files: ${{ github.workspace }}/build/libs/* - generate_release_notes: true - name: ${{ format('Release {0}', github.ref_name) }} - prerelease: ${{ contains(github.ref_name, '-rc-') }} - fail_on_unmatched_files: true - draft: true - outputs: - url: ${{ steps.release.outputs.url }} - - notify: - name: Send job complete notification - runs-on: ubuntu-latest - needs: - - release - if: always() && vars.DISCORD_WEBHOOK_ID - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Common Setup - uses: ./.github/actions/common-setup - with: - java-version: 21 - - - name: Retrieve Project Name - run: echo "PROJECT_NAME=$(${{github.workspace}}/gradlew -q printProjectName)" >> $GITHUB_ENV - - - name: Notify on success - if: success() - uses: appleboy/discord-action@v1.2.0 - with: - webhook_id: ${{ vars.DISCORD_WEBHOOK_ID }} - webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }} - color: "#00FF00" - username: "${{ env.PROJECT_NAME }} Release Bot" - message: > - An ${{ env.PROJECT_NAME }} release draft was deployed by ${{ github.actor }}: - ${{ needs.release.outputs.url }} - - - name: Notify on failure - if: failure() - uses: appleboy/discord-action@v1.2.0 - with: - webhook_id: ${{ vars.DISCORD_WEBHOOK_ID }} - webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }} - color: "#FF0000" - username: "${{ env.PROJECT_NAME }} Release Bot" - message: > - An ${{ env.PROJECT_NAME }} release draft ran by ${{ github.actor }} failed: - https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}