mirror of
https://github.com/gradle/gradle-build-action.git
synced 2024-11-22 08:11:07 -05: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
|
||||
name: prod
|
||||
# Verify the functionality works as expected
|
||||
name: integration-testing
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
|
@ -119,50 +119,3 @@ jobs:
|
|||
build-root-directory: __tests__/samples/basic
|
||||
arguments: test --configuration-cache
|
||||
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