1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- name: Reusable - Test latest deps
- on:
- workflow_call:
- inputs:
- cache-read-only:
- type: boolean
- required: false
- no-build-cache:
- type: boolean
- required: false
- secrets:
- GRADLE_ENTERPRISE_ACCESS_KEY:
- required: false
- GE_CACHE_USERNAME:
- required: false
- GE_CACHE_PASSWORD:
- required: false
- permissions:
- contents: read
- jobs:
- test-latest-deps:
- name: testLatestDeps${{ matrix.test-partition }}
- runs-on: ubuntu-latest
- strategy:
- matrix:
- test-partition:
- - 0
- - 1
- - 2
- - 3
- fail-fast: false
- steps:
- - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- - name: Free disk space
- run: .github/scripts/gha-free-disk-space.sh
- - name: Set up JDK for running Gradle
- uses: actions/setup-java@9704b39bf258b59bc04b50fa2dd55e9ed76b47a8 # v4.1.0
- with:
- distribution: temurin
- java-version: 17.0.6
- - name: Increase gradle daemon heap size
- run: |
- sed -i "s/org.gradle.jvmargs=/org.gradle.jvmargs=-Xmx3g /" gradle.properties
- # vaadin tests use pnpm
- - name: Cache pnpm modules
- uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
- with:
- path: ~/.pnpm-store
- key: ${{ runner.os }}-test-latest-cache-pnpm-modules
- - name: List tests
- env:
- GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }}
- GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }}
- uses: gradle/gradle-build-action@29c0906b64b8fc82467890bfb7a0a7ef34bda89e # v3.1.0
- with:
- arguments: >
- check -x spotlessCheck
- listTestsInPartition
- -PtestPartition=${{ matrix.test-partition }}
- -PtestLatestDeps=true
- cache-read-only: true
- - name: Set test tasks
- run: |
- echo "test-tasks=$(cat test-tasks.txt | xargs echo | sed 's/\n/ /g')" >> $GITHUB_ENV
- - name: Test
- uses: gradle/gradle-build-action@29c0906b64b8fc82467890bfb7a0a7ef34bda89e # v3.1.0
- env:
- GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }}
- GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }}
- with:
- arguments: >
- ${{ env.test-tasks }}
- -PtestLatestDeps=true
- ${{ inputs.no-build-cache && ' --no-build-cache' || '' }}
- cache-read-only: ${{ inputs.cache-read-only }}
- # gradle enterprise is used for the build cache
- gradle-home-cache-excludes: caches/build-cache-1
|