mirror of
https://github.com/gradle/gradle-build-action.git
synced 2024-11-23 01:22:50 +00:00
Test config-cache support for multiple builds in one job
This commit is contained in:
parent
887e1a09ab
commit
69aad1f173
2 changed files with 37 additions and 1 deletions
|
@ -26,8 +26,13 @@ jobs:
|
||||||
with:
|
with:
|
||||||
build-root-directory: __tests__/samples/groovy-dsl
|
build-root-directory: __tests__/samples/groovy-dsl
|
||||||
arguments: test --configuration-cache
|
arguments: test --configuration-cache
|
||||||
|
- name: Second build with configuration-cache enabled
|
||||||
|
uses: ./
|
||||||
|
with:
|
||||||
|
build-root-directory: __tests__/samples/kotlin-dsl
|
||||||
|
arguments: test --configuration-cache
|
||||||
|
|
||||||
# Test that the project-dot-gradle cache will cache and restore configuration-cache
|
# Test restore configuration-cache
|
||||||
configuration-cache:
|
configuration-cache:
|
||||||
needs: seed-build
|
needs: seed-build
|
||||||
strategy:
|
strategy:
|
||||||
|
@ -46,6 +51,25 @@ jobs:
|
||||||
arguments: test --configuration-cache
|
arguments: test --configuration-cache
|
||||||
cache-read-only: true
|
cache-read-only: true
|
||||||
|
|
||||||
|
# Test restore configuration-cache from second build invocation
|
||||||
|
configuration-cache-2:
|
||||||
|
needs: seed-build
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
os: [ubuntu-latest, windows-latest]
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
steps:
|
||||||
|
- name: Checkout sources
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Execute Gradle build and verify cached configuration
|
||||||
|
uses: ./
|
||||||
|
env:
|
||||||
|
VERIFY_CACHED_CONFIGURATION: true
|
||||||
|
with:
|
||||||
|
build-root-directory: __tests__/samples/kotlin-dsl
|
||||||
|
arguments: test --configuration-cache
|
||||||
|
cache-read-only: true
|
||||||
|
|
||||||
# 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
|
||||||
no-extracted-cache-entries-restored:
|
no-extracted-cache-entries-restored:
|
||||||
needs: seed-build
|
needs: seed-build
|
||||||
|
|
|
@ -16,3 +16,15 @@ dependencies {
|
||||||
tasks.test {
|
tasks.test {
|
||||||
useJUnitPlatform()
|
useJUnitPlatform()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tasks.named("test").configure {
|
||||||
|
// Use an environment variable to bypass config-cache checks
|
||||||
|
if (System.getenv("VERIFY_CACHED_CONFIGURATION") != null) {
|
||||||
|
throw RuntimeException("Configuration was not cached: unexpected configuration of test task")
|
||||||
|
}
|
||||||
|
doLast {
|
||||||
|
if (System.getProperties().containsKey("verifyCachedBuild")) {
|
||||||
|
throw RuntimeException("Build was not cached: unexpected execution of test task")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue