name: Test sample Gradle Plugin project on: workflow_call: inputs: cache-key-prefix: type: string runner-os: type: string default: '["ubuntu-latest", "windows-latest", "macos-latest"]' env: GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: sample-gradle-plugin-${{ inputs.cache-key-prefix }} GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true jobs: seed-build: strategy: matrix: os: ${{fromJSON(inputs.runner-os)}} runs-on: ${{ matrix.os }} steps: - name: Checkout sources uses: actions/checkout@v4 - name: Setup Gradle uses: ./ with: cache-read-only: false # For testing, allow writing cache entries on non-default branches - name: Build gradle-plugin project working-directory: .github/workflow-samples/gradle-plugin run: ./gradlew build verify-build: needs: seed-build strategy: matrix: os: ${{fromJSON(inputs.runner-os)}} runs-on: ${{ matrix.os }} steps: - name: Checkout sources uses: actions/checkout@v4 - name: Setup Gradle uses: ./ with: cache-read-only: true - name: Build gradle-plugin project working-directory: .github/workflow-samples/gradle-plugin run: ./gradlew build --offline