mirror of
https://github.com/gradle/gradle-build-action.git
synced 2024-11-23 01:22:50 +00:00
Split the 'prod' workflow up into different isolated workflows
This is required to ensure that cache entries are namespaced correctly for the integration tests.
This commit is contained in:
parent
cae99bf6d9
commit
d5cd9d86a1
3 changed files with 76 additions and 49 deletions
37
.github/workflows/failure-cases.yml
vendored
Normal file
37
.github/workflows/failure-cases.yml
vendored
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
# Run builds under certain failure conditions to allow the output to be manually inspected.
|
||||||
|
# These build invocations are informational only, and are expected to fail
|
||||||
|
name: failure-cases
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
push:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
env:
|
||||||
|
CACHE_KEY_PREFIX: ${{github.workflow}}#${{github.run_number}}-
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
wrapper-missing:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout sources
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Test wrapper missing
|
||||||
|
uses: ./
|
||||||
|
continue-on-error: true
|
||||||
|
with:
|
||||||
|
build-root-directory: __tests__/samples/no-wrapper
|
||||||
|
arguments: help
|
||||||
|
|
||||||
|
bad-configuration:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout sources
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Test bad config value
|
||||||
|
uses: ./
|
||||||
|
continue-on-error: true
|
||||||
|
with:
|
||||||
|
build-root-directory: __tests__/samples/no-wrapper
|
||||||
|
arguments: help
|
||||||
|
gradle-cache-enabled: no
|
37
.github/workflows/integration-testing-kotlin-dsl.yml
vendored
Normal file
37
.github/workflows/integration-testing-kotlin-dsl.yml
vendored
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
# Make sure the action works on a clean machine without building
|
||||||
|
name: integration-testing-kotlin-dsl
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
push:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
env:
|
||||||
|
CACHE_KEY_PREFIX: ${{github.workflow}}#${{github.run_number}}-
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
# Use kotlin-dsl project to verify caching of generated jars and compiled scripts
|
||||||
|
seed-build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout sources
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Build kotlin-dsl project
|
||||||
|
uses: ./
|
||||||
|
with:
|
||||||
|
build-root-directory: __tests__/samples/kotlin-dsl
|
||||||
|
arguments: test
|
||||||
|
|
||||||
|
# Check that the build can run --offline
|
||||||
|
verify-build:
|
||||||
|
needs: seed-build
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout sources
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Build kotlin-dsl project
|
||||||
|
uses: ./
|
||||||
|
with:
|
||||||
|
build-root-directory: __tests__/samples/kotlin-dsl
|
||||||
|
arguments: test --offline
|
||||||
|
gradle-cache-enabled: read-only
|
|
@ -1,5 +1,5 @@
|
||||||
# Make sure the action works on a clean machine without building
|
# Verify the functionality works as expected
|
||||||
name: prod
|
name: integration-testing
|
||||||
|
|
||||||
on:
|
on:
|
||||||
pull_request:
|
pull_request:
|
||||||
|
@ -119,50 +119,3 @@ jobs:
|
||||||
build-root-directory: __tests__/samples/basic
|
build-root-directory: __tests__/samples/basic
|
||||||
arguments: test --configuration-cache
|
arguments: test --configuration-cache
|
||||||
gradle-cache-enabled: read-only
|
gradle-cache-enabled: read-only
|
||||||
|
|
||||||
# Use kotlin-dsl project to verify caching of generated jars and compiled scripts
|
|
||||||
# At this stage there is no automated verification of this caching: eyeball the build scan to verify
|
|
||||||
seed-kotlin-dsl-build:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout sources
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Build kotlin-dsl project
|
|
||||||
uses: ./
|
|
||||||
with:
|
|
||||||
build-root-directory: __tests__/samples/kotlin-dsl
|
|
||||||
arguments: test
|
|
||||||
|
|
||||||
verify-kotlin-dsl-build:
|
|
||||||
needs: seed-kotlin-dsl-build
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout sources
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Build kotlin-dsl project
|
|
||||||
uses: ./
|
|
||||||
with:
|
|
||||||
build-root-directory: __tests__/samples/kotlin-dsl
|
|
||||||
arguments: test
|
|
||||||
gradle-cache-enabled: read-only
|
|
||||||
|
|
||||||
# These build invocations are informational only, and are expected to fail
|
|
||||||
failures:
|
|
||||||
needs: seed-build
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout sources
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Test wrapper missing
|
|
||||||
uses: ./
|
|
||||||
continue-on-error: true
|
|
||||||
with:
|
|
||||||
build-root-directory: __tests__/samples/no-wrapper
|
|
||||||
arguments: help
|
|
||||||
- name: Test bad config value
|
|
||||||
uses: ./
|
|
||||||
continue-on-error: true
|
|
||||||
with:
|
|
||||||
build-root-directory: __tests__/samples/no-wrapper
|
|
||||||
arguments: help
|
|
||||||
gradle-cache-enabled: no
|
|
Loading…
Reference in a new issue