name: Patch and Build on: push: branches: [ "**" ] pull_request: jobs: build: # Only run on PRs if the source branch is on someone else's repo if: ${{ github.event_name != 'pull_request' || github.repository != github.event.pull_request.head.repo.full_name }} runs-on: ubuntu-latest steps: - name: Checkout Git Repository uses: actions/checkout@v3 - name: Validate Gradle wrapper uses: gradle/wrapper-validation-action@v1 - name: Setup Gradle uses: gradle/gradle-build-action@v2 - name: Set up JDK uses: actions/setup-java@v3 with: distribution: 'temurin' java-version: '21' - name: Configure Git User Details run: git config --global user.email "actions@github.com" && git config --global user.name "Github Actions" - name: Grant execute permission for gradlew run: chmod +x gradlew - name: Apply Patches run: ./gradlew applyPatches - name: Build run: ./gradlew build - name: Publish publications and dev bundle run: ./gradlew -PpublishDevBundle publishDevBundlePublicationToPerfectDreamsRepository publishMavenPublicationToPerfectDreamsRepository env: ORG_GRADLE_PROJECT_PerfectDreamsUsername: ${{ secrets.PERFECTDREAMS_REPO_USERNAME }} ORG_GRADLE_PROJECT_PerfectDreamsPassword: ${{ secrets.PERFECTDREAMS_REPO_PASSWORD }} - name: Create Paperclip JAR run: ./gradlew createMojmapPaperclipJar createReobfPaperclipJar - uses: actions/upload-artifact@v4 name: "Upload Mojang Mappings Paperclip JAR" with: name: SparklyPaper Paperclip (Mojang Mappings - mojmap) path: "build/libs/SparklyPaper-paperclip-*-mojmap.jar" - uses: actions/upload-artifact@v4 name: "Upload Spigot Mappings (reobf) Paperclip JAR" with: name: SparklyPaper Paperclip (Spigot Mappings - reobf) path: "build/libs/SparklyPaper-paperclip-*-reobf.jar"