diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 752bb1b..6fe2ec1 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -1,23 +1,69 @@ -name: Gradle Build +name: Java CI with Gradle on: push: + branches: [ "develop" ] pull_request: + branches: [ "develop" ] jobs: build: runs-on: ubuntu-latest + permissions: + contents: read + steps: - - uses: actions/checkout@v4 - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 + + - name: Set up JDK 25 + uses: actions/setup-java@v6 with: - repository: headhunter45/ScoreKeeper - path: ScoreKeeper - - uses: actions/setup-java@v4 - with: - distribution: temurin java-version: '25' - - uses: gradle/actions/setup-gradle@v4 - - run: ./gradlew publishToMavenLocal - working-directory: ScoreKeeper - - run: ./gradlew test build \ No newline at end of file + distribution: 'temurin' + + - name: Setup Gradle 9.8.0 + uses: gradle/actions/setup-gradle@v5 + with: + gradle-version: '9.8.0' + cache-read-only: ${{ github.ref != 'refs/heads/develop' }} + + - name: Build with Gradle Wrapper + run: ./tools/build-plugin.sh + + - name: Extract Project Version + id: project_info + run: | + VERSION=$(./gradlew properties --no-daemon -q | awk -F ': ' '$1 == "version" {print $2}') + echo "version=$VERSION" >> $GITHUB_OUTPUT + + - name: Upload Plugin Artifact + uses: actions/upload-artifact@v7 + with: + name: MobScores-${{ steps.project_info.outputs.version }} + path: build/libs/*.jar + if-no-files-found: error + retention-days: 14 + + dependency-submission: + runs-on: ubuntu-latest + permissions: + contents: write + + steps: + - uses: actions/checkout@v7 + + - name: Set up JDK 25 + uses: actions/setup-java@v6 + with: + java-version: '25' + distribution: 'temurin' + + - name: Setup Gradle 9.8.0 + uses: gradle/actions/setup-gradle@v5 + with: + gradle-version: '9.8.0' + + - name: Generate and submit dependency graph + uses: gradle/actions/dependency-submission@v5 + with: + include-configurations: '^(compileClasspath|runtimeClasspath)$'