Refactor integ-tests

- Include test name in all job names
- Remove cache key delegation as it is unused
This commit is contained in:
daz 2024-08-03 12:19:43 -06:00 committed by Daz DeBoer
parent fb2e6938b6
commit d74ee73e9f
18 changed files with 118 additions and 127 deletions

View file

@ -18,7 +18,6 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
outputs: outputs:
runner-os: ${{ steps.determine-suite.outputs.suite == 'quick' && '["ubuntu-latest"]' || '["ubuntu-latest", "windows-latest", "macos-latest"]' }} runner-os: ${{ steps.determine-suite.outputs.suite == 'quick' && '["ubuntu-latest"]' || '["ubuntu-latest", "windows-latest", "macos-latest"]' }}
cache-key-prefix: '0' # TODO DAZ Try this again ${{ steps.determine-suite.outputs.suite == 'quick' && '0' || github.run_number }}
suite: ${{ steps.determine-suite.outputs.suite }} suite: ${{ steps.determine-suite.outputs.suite }}
steps: steps:
- name: Determine suite to run - name: Determine suite to run
@ -58,7 +57,6 @@ jobs:
uses: ./.github/workflows/integ-test-build-scan-publish.yml uses: ./.github/workflows/integ-test-build-scan-publish.yml
with: with:
runner-os: '${{ needs.determine-suite.outputs.runner-os }}' runner-os: '${{ needs.determine-suite.outputs.runner-os }}'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
cache-cleanup: cache-cleanup:
@ -66,7 +64,6 @@ jobs:
uses: ./.github/workflows/integ-test-cache-cleanup.yml uses: ./.github/workflows/integ-test-cache-cleanup.yml
with: with:
runner-os: '${{ needs.determine-suite.outputs.runner-os }}' runner-os: '${{ needs.determine-suite.outputs.runner-os }}'
cache-key-prefix: '${{ needs.determine-suite.outputs.suite}}-${{github.run_number}}-' # Requires a fresh cache entry each run
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
caching-config: caching-config:
@ -74,7 +71,6 @@ jobs:
uses: ./.github/workflows/integ-test-caching-config.yml uses: ./.github/workflows/integ-test-caching-config.yml
with: with:
runner-os: '${{ needs.determine-suite.outputs.runner-os }}' runner-os: '${{ needs.determine-suite.outputs.runner-os }}'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
dependency-graph: dependency-graph:
@ -85,7 +81,6 @@ jobs:
contents: write contents: write
with: with:
runner-os: '${{ needs.determine-suite.outputs.runner-os }}' runner-os: '${{ needs.determine-suite.outputs.runner-os }}'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
dependency-submission: dependency-submission:
@ -96,7 +91,6 @@ jobs:
contents: write contents: write
with: with:
runner-os: '${{ needs.determine-suite.outputs.runner-os }}' runner-os: '${{ needs.determine-suite.outputs.runner-os }}'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
dependency-submission-failures: dependency-submission-failures:
@ -107,7 +101,6 @@ jobs:
contents: write contents: write
with: with:
runner-os: '${{ needs.determine-suite.outputs.runner-os }}' runner-os: '${{ needs.determine-suite.outputs.runner-os }}'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
develocity-injection: develocity-injection:
@ -115,8 +108,6 @@ jobs:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-inject-develocity.yml uses: ./.github/workflows/integ-test-inject-develocity.yml
with: with:
runner-os: '["ubuntu-latest"]'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
secrets: secrets:
DEVELOCITY_ACCESS_KEY: ${{ secrets.DV_SOLUTIONS_ACCESS_KEY }} DEVELOCITY_ACCESS_KEY: ${{ secrets.DV_SOLUTIONS_ACCESS_KEY }}
@ -125,8 +116,6 @@ jobs:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-provision-gradle-versions.yml uses: ./.github/workflows/integ-test-provision-gradle-versions.yml
with: with:
runner-os: '["ubuntu-latest"]'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
restore-configuration-cache: restore-configuration-cache:
@ -134,8 +123,6 @@ jobs:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-restore-configuration-cache.yml uses: ./.github/workflows/integ-test-restore-configuration-cache.yml
with: with:
runner-os: '["ubuntu-latest"]'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
secrets: secrets:
GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }} GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
@ -144,59 +131,46 @@ jobs:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-restore-containerized-gradle-home.yml uses: ./.github/workflows/integ-test-restore-containerized-gradle-home.yml
with: with:
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
restore-custom-gradle-home: restore-custom-gradle-home:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-restore-custom-gradle-home.yml uses: ./.github/workflows/integ-test-restore-custom-gradle-home.yml
with: with:
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
restore-gradle-home: restore-gradle-home:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-restore-gradle-home.yml uses: ./.github/workflows/integ-test-restore-gradle-home.yml
with: with:
runner-os: '["ubuntu-latest"]'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
restore-java-toolchain: restore-java-toolchain:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-restore-java-toolchain.yml uses: ./.github/workflows/integ-test-restore-java-toolchain.yml
with: with:
runner-os: '["ubuntu-latest"]'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
sample-kotlin-dsl: sample-kotlin-dsl:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-sample-kotlin-dsl.yml uses: ./.github/workflows/integ-test-sample-kotlin-dsl.yml
with: with:
runner-os: '["ubuntu-latest"]'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
sample-gradle-plugin: sample-gradle-plugin:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-sample-gradle-plugin.yml uses: ./.github/workflows/integ-test-sample-gradle-plugin.yml
with: with:
runner-os: '["ubuntu-latest"]'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
toolchain-detection: toolchain-detection:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-detect-java-toolchains.yml uses: ./.github/workflows/integ-test-detect-toolchains.yml
with: with:
runner-os: '["ubuntu-latest"]'
cache-key-prefix: '${{ needs.determine-suite.outputs.cache-key-prefix }}-'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}
wrapper-validation: wrapper-validation:
needs: [determine-suite, build-distribution] needs: [determine-suite, build-distribution]
uses: ./.github/workflows/integ-test-wrapper-validation.yml uses: ./.github/workflows/integ-test-wrapper-validation.yml
with: with:
runner-os: '["ubuntu-latest"]'
skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }} skip-dist: ${{ needs.determine-suite.outputs.suite == 'full' }}

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false

View file

@ -5,19 +5,21 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
env: env:
SKIP_DIST: ${{ inputs.skip-dist }} SKIP_DIST: ${{ inputs.skip-dist }}
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: cache-cleanup-${{ inputs.cache-key-prefix }} # Requires a fresh cache entry each run
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: cache-cleanup-${{ inputs.cache-key-prefix }}-${{github.run_number}}
jobs: jobs:
full-build: cache-cleanup-full-build:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -38,8 +40,8 @@ jobs:
run: ./gradlew --no-daemon --build-cache -Dcommons_math3_version="3.1" build run: ./gradlew --no-daemon --build-cache -Dcommons_math3_version="3.1" build
# Second build will use the cache from the first build, but cleanup should remove unused artifacts # Second build will use the cache from the first build, but cleanup should remove unused artifacts
assemble-build: cache-cleanup-assemble-build:
needs: full-build needs: cache-cleanup-full-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -60,8 +62,8 @@ jobs:
working-directory: sources/test/jest/resources/cache-cleanup working-directory: sources/test/jest/resources/cache-cleanup
run: ./gradlew --no-daemon --build-cache -Dcommons_math3_version="3.1.1" build run: ./gradlew --no-daemon --build-cache -Dcommons_math3_version="3.1.1" build
check-clean-cache: cache-cleanup-check-clean-cache:
needs: assemble-build needs: cache-cleanup-assemble-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -17,7 +18,7 @@ env:
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: caching-config-${{ inputs.cache-key-prefix }} GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: caching-config-${{ inputs.cache-key-prefix }}
jobs: jobs:
seed-build: caching-config-seed-build:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -46,8 +47,8 @@ jobs:
run: ./gradlew test run: ./gradlew test
# Test that the gradle-user-home cache will cache dependencies, by running build with --offline # Test that the gradle-user-home cache will cache dependencies, by running build with --offline
verify-build: caching-config-verify-build:
needs: seed-build needs: caching-config-seed-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -75,7 +76,7 @@ jobs:
run: ./gradlew test --offline run: ./gradlew test --offline
# Test that build scans are captured when caching is explicitly disabled # Test that build scans are captured when caching is explicitly disabled
cache-disabled: caching-config-cache-disabled:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -103,7 +104,7 @@ jobs:
core.setFailed('No Build Scan detected') core.setFailed('No Build Scan detected')
# Test that build scans are captured when caching is disabled because Gradle User Home already exists # Test that build scans are captured when caching is disabled because Gradle User Home already exists
cache-disabled-pre-existing-gradle-home: caching-config-cache-disabled-pre-existing-gradle-home:
runs-on: ubuntu-latest # This test only runs on Ubuntu runs-on: ubuntu-latest # This test only runs on Ubuntu
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -127,9 +128,9 @@ jobs:
core.setFailed('No Build Scan detected') core.setFailed('No Build Scan detected')
# Test seed the cache with cache-write-only and verify with cache-read-only # Test seed the cache with cache-write-only and verify with cache-read-only
seed-build-write-only: caching-config-seed-write-only:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: ${{ inputs.cache-key-prefix }}-write-only- GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: caching-config-write-only-${{ inputs.cache-key-prefix }}
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -149,10 +150,10 @@ jobs:
working-directory: .github/workflow-samples/groovy-dsl working-directory: .github/workflow-samples/groovy-dsl
run: ./gradlew test run: ./gradlew test
verify-write-only-build: caching-config-verify-write-only:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: ${{ inputs.cache-key-prefix }}-write-only- GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: caching-config-write-only-${{ inputs.cache-key-prefix }}
needs: seed-build-write-only needs: caching-config-seed-write-only
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -21,7 +22,7 @@ env:
GITHUB_DEPENDENCY_GRAPH_REF: 'refs/tags/v0.0.1' # Use a different ref to avoid updating the real dependency graph for the repository GITHUB_DEPENDENCY_GRAPH_REF: 'refs/tags/v0.0.1' # Use a different ref to avoid updating the real dependency graph for the repository
jobs: jobs:
groovy-upload: dependency-graph-groovy-upload:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -41,8 +42,8 @@ jobs:
run: ./gradlew build run: ./gradlew build
working-directory: .github/workflow-samples/groovy-dsl working-directory: .github/workflow-samples/groovy-dsl
groovy-submit: dependency-graph-groovy-submit:
needs: [groovy-upload] needs: [dependency-graph-groovy-upload]
runs-on: "ubuntu-latest" runs-on: "ubuntu-latest"
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -57,7 +58,7 @@ jobs:
env: env:
DEPENDENCY_GRAPH_DOWNLOAD_ARTIFACT_NAME: groovy-upload DEPENDENCY_GRAPH_DOWNLOAD_ARTIFACT_NAME: groovy-upload
kotlin-generate-and-submit: dependency-graph-kotlin-generate-and-submit:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -77,7 +78,7 @@ jobs:
run: ./gradlew build run: ./gradlew build
working-directory: .github/workflow-samples/kotlin-dsl working-directory: .github/workflow-samples/kotlin-dsl
multiple-builds: dependency-graph-multiple-builds:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -122,7 +123,7 @@ jobs:
exit 1 exit 1
fi fi
config-cache: dependency-graph-config-cache:
runs-on: ubuntu-latest # Test is not compatible with Windows runs-on: ubuntu-latest # Test is not compatible with Windows
steps: steps:
- name: Checkout sources - name: Checkout sources

View file

@ -5,6 +5,7 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest"]' default: '["ubuntu-latest"]'
@ -18,7 +19,7 @@ env:
GITHUB_DEPENDENCY_GRAPH_REF: 'refs/tags/v0.0.1' # Use a different ref to avoid updating the real dependency graph for the repository GITHUB_DEPENDENCY_GRAPH_REF: 'refs/tags/v0.0.1' # Use a different ref to avoid updating the real dependency graph for the repository
jobs: jobs:
failing-build: dependency-submission-failures-failing-build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -47,7 +48,7 @@ jobs:
exit 1 exit 1
fi fi
unsupported-gradle-version: dependency-submission-failures-unsupported-gradle-version:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -76,7 +77,7 @@ jobs:
exit 1 exit 1
fi fi
insufficient-permissions: dependency-submission-failures-insufficient-permissions:
runs-on: ubuntu-latest runs-on: ubuntu-latest
permissions: permissions:
contents: read contents: read

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -21,7 +22,7 @@ env:
GITHUB_DEPENDENCY_GRAPH_REF: 'refs/tags/v0.0.1' # Use a different ref to avoid updating the real dependency graph for the repository GITHUB_DEPENDENCY_GRAPH_REF: 'refs/tags/v0.0.1' # Use a different ref to avoid updating the real dependency graph for the repository
jobs: jobs:
groovy-generate-and-upload: dependency-submission-groovy-generate-and-upload:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -42,8 +43,8 @@ jobs:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: groovy-dependency-submission GRADLE_BUILD_ACTION_CACHE_KEY_JOB: groovy-dependency-submission
groovy-restore-cache: dependency-submission-groovy-restore-cache:
needs: [groovy-generate-and-upload] needs: [dependency-submission-groovy-generate-and-upload]
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -63,8 +64,8 @@ jobs:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: groovy-dependency-submission GRADLE_BUILD_ACTION_CACHE_KEY_JOB: groovy-dependency-submission
groovy-download-and-submit: dependency-submission-groovy-download-and-submit:
needs: [groovy-generate-and-upload] needs: [dependency-submission-groovy-generate-and-upload]
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -83,7 +84,7 @@ jobs:
env: env:
DEPENDENCY_GRAPH_DOWNLOAD_ARTIFACT_NAME: groovy-generate-and-upload-${{ matrix.os }} DEPENDENCY_GRAPH_DOWNLOAD_ARTIFACT_NAME: groovy-generate-and-upload-${{ matrix.os }}
kotlin-generate-and-submit: dependency-submission-kotlin-generate-and-submit:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -100,7 +101,7 @@ jobs:
with: with:
build-root-directory: .github/workflow-samples/kotlin-dsl build-root-directory: .github/workflow-samples/kotlin-dsl
multiple-builds: dependency-submission-multiple-builds:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -145,7 +146,7 @@ jobs:
exit 1 exit 1
fi fi
multiple-builds-upload: dependency-submission-multiple-builds-upload:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -168,7 +169,7 @@ jobs:
dependency-graph: generate-and-upload dependency-graph: generate-and-upload
build-root-directory: .github/workflow-samples/groovy-dsl build-root-directory: .github/workflow-samples/groovy-dsl
config-cache: dependency-submission-config-cache:
runs-on: ubuntu-latest # Test is not compatible with Windows runs-on: ubuntu-latest # Test is not compatible with Windows
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -203,7 +204,7 @@ jobs:
exit 1 exit 1
fi fi
gradle-versions: dependency-submission-gradle-versions:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -227,7 +228,7 @@ jobs:
gradle-version: ${{ matrix.gradle }} gradle-version: ${{ matrix.gradle }}
build-root-directory: .github/workflow-samples/no-wrapper${{ matrix.build-root-suffix }} build-root-directory: .github/workflow-samples/no-wrapper${{ matrix.build-root-suffix }}
with-setup-gradle: dependency-submission-with-setup-gradle:
runs-on: ubuntu-latest # Test is not compatible with Windows runs-on: ubuntu-latest # Test is not compatible with Windows
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -262,7 +263,7 @@ jobs:
exit 1 exit 1
fi fi
with-includes-and-excludes: dependency-submission-with-includes-and-excludes:
runs-on: ubuntu-latest # Test is not compatible with Windows runs-on: ubuntu-latest # Test is not compatible with Windows
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -296,7 +297,7 @@ jobs:
fi fi
custom-report-dir-submit: dependency-submission-custom-report-dir-submit:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -330,7 +331,7 @@ jobs:
exit 1 exit 1
fi fi
custom-report-dir-upload: dependency-submission-custom-report-dir-upload:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -347,7 +348,7 @@ jobs:
build-root-directory: .github/workflow-samples/groovy-dsl build-root-directory: .github/workflow-samples/groovy-dsl
custom-report-dir-download-and-submit: custom-report-dir-download-and-submit:
needs: custom-report-dir-upload needs: [dependency-submission-custom-report-dir-upload]
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -18,7 +19,7 @@ env:
jobs: jobs:
# Test that pre-installed runner JDKs are detected # Test that pre-installed runner JDKs are detected
pre-installed-toolchains: detect-toolchains-pre-installed-jdks:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -48,7 +49,7 @@ jobs:
grep -q 'Eclipse Temurin JDK 21' output.txt || (echo "::error::Did not detect preinstalled JDK 21" && exit 1) grep -q 'Eclipse Temurin JDK 21' output.txt || (echo "::error::Did not detect preinstalled JDK 21" && exit 1)
# Test that JDKs provisioned by setup-java are detected # Test that JDKs provisioned by setup-java are detected
setup-java-installed-toolchain: detect-toolchains-setup-java-jdks:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -69,7 +70,7 @@ jobs:
script: | script: |
core.setFailed('Gradle version parameter not set correctly: value was "${{ steps.gradle-current.outputs.gradle-version }}"') core.setFailed('Gradle version parameter not set correctly: value was "${{ steps.gradle-current.outputs.gradle-version }}"')
gradle-versions: provision-gradle-version:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -20,7 +21,7 @@ env:
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-configuration-cache-${{ inputs.cache-key-prefix }} GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-configuration-cache-${{ inputs.cache-key-prefix }}
jobs: jobs:
seed-build-groovy: restore-cc-seed-build-groovy:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy
strategy: strategy:
@ -50,11 +51,11 @@ jobs:
working-directory: .github/workflow-samples/groovy-dsl working-directory: .github/workflow-samples/groovy-dsl
run: gradle test --configuration-cache run: gradle test --configuration-cache
verify-build-groovy: restore-cc-verify-build-groovy:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy
GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_1 GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_1
needs: seed-build-groovy needs: restore-cc-seed-build-groovy
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -91,11 +92,11 @@ jobs:
fi fi
# Ensure that cache-cleanup doesn't remove all necessary files # Ensure that cache-cleanup doesn't remove all necessary files
verify-no-cache-cleanup-groovy: restore-cc-verify-no-cache-cleanup-groovy:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy
GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_2 GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_2
needs: verify-build-groovy needs: restore-cc-verify-build-groovy
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -131,11 +132,11 @@ jobs:
fi fi
# Check that the build can run when no extracted cache entries are restored # Check that the build can run when no extracted cache entries are restored
gradle-user-home-not-fully-restored: restore-cc-gradle-user-home-not-fully-restored:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy
GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_x GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_x
needs: seed-build-groovy needs: restore-cc-seed-build-groovy
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -164,7 +165,7 @@ jobs:
working-directory: .github/workflow-samples/groovy-dsl working-directory: .github/workflow-samples/groovy-dsl
run: gradle test --configuration-cache run: gradle test --configuration-cache
seed-build-kotlin: restore-cc-seed-build-kotlin:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-kotlin GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-kotlin
strategy: strategy:
@ -194,11 +195,11 @@ jobs:
working-directory: .github/workflow-samples/kotlin-dsl working-directory: .github/workflow-samples/kotlin-dsl
run: gradle help --configuration-cache run: gradle help --configuration-cache
modify-build-kotlin: restore-cc-modify-build-kotlin:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-kotlin GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-kotlin
GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_1 GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_1
needs: seed-build-kotlin needs: restore-cc-seed-build-kotlin
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -226,11 +227,11 @@ jobs:
run: gradle test --configuration-cache run: gradle test --configuration-cache
# Test restore configuration-cache from the third build invocation # Test restore configuration-cache from the third build invocation
verify-build-kotlin: restore-cc-verify-build-kotlin:
env: env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-kotlin GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-kotlin
GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_2 GRADLE_BUILD_ACTION_CACHE_KEY_JOB_EXECUTION: ${{github.sha}}_2
needs: modify-build-kotlin needs: restore-cc-modify-build-kotlin
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:

View file

@ -5,6 +5,7 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -14,7 +15,7 @@ env:
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-containerized-gradle-home-${{ inputs.cache-key-prefix }} GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-containerized-gradle-home-${{ inputs.cache-key-prefix }}
jobs: jobs:
seed-build: restore-containerized-seed-build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: fedora:latest container: fedora:latest
steps: steps:
@ -32,8 +33,8 @@ jobs:
run: ./gradlew test run: ./gradlew test
# Test that the gradle-user-home cache will cache dependencies, by running build with --offline # Test that the gradle-user-home cache will cache dependencies, by running build with --offline
dependencies-cache: restore-containerized-dependencies-cache:
needs: seed-build needs: restore-containerized-seed-build
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: fedora:latest container: fedora:latest
steps: steps:

View file

@ -5,6 +5,7 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -14,7 +15,7 @@ env:
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-custom-gradle-home-${{ inputs.cache-key-prefix }} GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-custom-gradle-home-${{ inputs.cache-key-prefix }}
jobs: jobs:
seed-build: restore-custom-gradle-home-seed-build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -35,8 +36,8 @@ jobs:
run: ./gradlew test --info run: ./gradlew test --info
# Test that the gradle-user-home cache will cache dependencies, by running build with --offline # Test that the gradle-user-home cache will cache dependencies, by running build with --offline
dependencies-cache: restore-custom-gradle-home-dependencies-cache:
needs: seed-build needs: restore-custom-gradle-home-seed-build
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -57,8 +58,8 @@ jobs:
run: ./gradlew test --offline --info run: ./gradlew test --offline --info
# Test that the gradle-user-home cache will cache and restore local build-cache # Test that the gradle-user-home cache will cache and restore local build-cache
build-cache: restore-custom-gradle-home-build-cache:
needs: seed-build needs: restore-custom-gradle-home-seed-build
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -18,7 +19,7 @@ env:
GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-gradle-home GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-gradle-home
jobs: jobs:
seed-build: restore-gradle-home-seed-build:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -39,8 +40,8 @@ jobs:
run: ./gradlew test run: ./gradlew test
# Test that the gradle-user-home cache will cache dependencies, by running build with --offline # Test that the gradle-user-home cache will cache dependencies, by running build with --offline
dependencies-cache: restore-gradle-home-dependencies-cache:
needs: seed-build needs: restore-gradle-home-seed-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -61,8 +62,8 @@ jobs:
run: ./gradlew test --offline run: ./gradlew test --offline
# Test that the gradle-user-home cache will cache and restore local build-cache # Test that the gradle-user-home cache will cache and restore local build-cache
build-cache: restore-gradle-home-build-cache:
needs: seed-build needs: restore-gradle-home-seed-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -83,8 +84,8 @@ jobs:
run: ./gradlew test -DverifyCachedBuild=true run: ./gradlew test -DverifyCachedBuild=true
# Check that the build can run when Gradle User Home is not fully restored # Check that the build can run when Gradle User Home is not fully restored
no-extracted-cache-entries-restored: restore-gradle-home-no-extracted-cache-entries-restored:
needs: seed-build needs: restore-gradle-home-seed-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -107,8 +108,8 @@ jobs:
run: ./gradlew test run: ./gradlew test
# Test that a pre-existing gradle-user-home can be overwritten by the restored cache # Test that a pre-existing gradle-user-home can be overwritten by the restored cache
pre-existing-gradle-home: restore-gradle-home-pre-existing-gradle-home:
needs: seed-build needs: restore-gradle-home-seed-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -17,7 +18,7 @@ env:
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-java-toolchain-${{ inputs.cache-key-prefix }} GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-java-toolchain-${{ inputs.cache-key-prefix }}
jobs: jobs:
seed-build: restore-java-toolchain-seed-build:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -38,8 +39,8 @@ jobs:
run: ./gradlew test --info run: ./gradlew test --info
# Test that the gradle-user-home cache will cache the toolchain, by running build with --offline # Test that the gradle-user-home cache will cache the toolchain, by running build with --offline
toolchain-cache: restore-java-toolchain-verify-build:
needs: seed-build needs: restore-java-toolchain-seed-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -17,7 +18,7 @@ env:
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: sample-gradle-plugin-${{ inputs.cache-key-prefix }} GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: sample-gradle-plugin-${{ inputs.cache-key-prefix }}
jobs: jobs:
seed-build: sample-gradle-plugin-seed-build:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -37,8 +38,8 @@ jobs:
working-directory: .github/workflow-samples/gradle-plugin working-directory: .github/workflow-samples/gradle-plugin
run: ./gradlew build run: ./gradlew build
verify-build: sample-gradle-plugin-verify-build:
needs: seed-build needs: sample-gradle-plugin-seed-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:

View file

@ -5,9 +5,10 @@ on:
inputs: inputs:
cache-key-prefix: cache-key-prefix:
type: string type: string
default: '0'
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -17,7 +18,7 @@ env:
GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: sample-kotlin-dsl-${{ inputs.cache-key-prefix }} GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: sample-kotlin-dsl-${{ inputs.cache-key-prefix }}
jobs: jobs:
seed-build: sample-kotlin-dsl-seed-build:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -37,8 +38,8 @@ jobs:
working-directory: .github/workflow-samples/kotlin-dsl working-directory: .github/workflow-samples/kotlin-dsl
run: ./gradlew build run: ./gradlew build
verify-build: sample-kotlin-dsl-verify-build:
needs: seed-build needs: sample-kotlin-dsl-seed-build
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:

View file

@ -5,7 +5,7 @@ on:
inputs: inputs:
runner-os: runner-os:
type: string type: string
default: '["ubuntu-latest", "windows-latest", "macos-latest"]' default: '["ubuntu-latest"]'
skip-dist: skip-dist:
type: boolean type: boolean
default: false default: false
@ -14,7 +14,7 @@ env:
SKIP_DIST: ${{ inputs.skip-dist }} SKIP_DIST: ${{ inputs.skip-dist }}
jobs: jobs:
test-setup-gradle-validation: wrapper-validation-setup-gradle:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -40,7 +40,7 @@ jobs:
exit 1 exit 1
fi fi
test-validation-success: wrapper-validation-success:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -68,7 +68,7 @@ jobs:
exit 1 exit 1
fi fi
test-validation-error: wrapper-validation-error:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -100,7 +100,7 @@ jobs:
exit 1 exit 1
fi fi
test-validation-minimum-wrapper-count: wrapper-validation-minimum-wrapper-count:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
@ -129,7 +129,7 @@ jobs:
exit 1 exit 1
fi fi
test-validation-zero-wrappers: wrapper-validation-zero-wrappers:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources