Refactor concurrency #3152
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: PR-Test | |
on: | |
pull_request: | |
paths-ignore: | |
- 'doc/**' | |
- 'documentation/**' | |
- '*.md' | |
- '*.yml' | |
permissions: | |
contents: read | |
jobs: | |
api_check: | |
runs-on: ubuntu-latest | |
if: github.repository == 'kotest/kotest' | |
steps: | |
- name: Checkout the repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
ref: ${{ github.event.inputs.branch }} | |
- name: Setup JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: "17" | |
- uses: gradle/gradle-build-action@v2 | |
- name: Run api check | |
run: ./gradlew apiCheck | |
test_linux: | |
needs: api_check | |
runs-on: ubuntu-latest | |
if: github.repository == 'kotest/kotest' | |
strategy: | |
matrix: | |
target: | |
- jvmTest | |
- jsTest | |
- linuxX64Test linuxArm64TestKlibrary | |
- :kotest-framework:kotest-framework-multiplatform-plugin-gradle:test | |
steps: | |
- name: Checkout the repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
ref: ${{ github.event.inputs.branch }} | |
- name: Setup JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: "17" | |
- uses: gradle/gradle-build-action@v2 | |
- name: Run tests | |
run: ./gradlew ${{ matrix.target }} --scan | |
- name: Bundle the build report | |
if: failure() | |
run: find . -type d -name 'reports' | zip -@ -r build-reports.zip | |
- name: Upload the build report | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: error-report | |
path: build-reports.zip | |
test_mac: | |
needs: test_linux | |
runs-on: macos-latest | |
if: github.repository == 'kotest/kotest' | |
strategy: | |
fail-fast: true | |
matrix: | |
target: | |
- macosX64Test macosArm64Test | |
- iosX64Test iosSimulatorArm64Test iosArm64TestKlibrary iosArm32TestKlibrary | |
- tvosX64Test tvosArm64TestKlibrary | |
- watchosArm32TestKlibrary watchosArm64TestKlibrary watchosX86Test watchosX64Test | |
steps: | |
- name: Checkout the repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
ref: ${{ github.event.inputs.branch }} | |
- name: Setup JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: "17" | |
- uses: gradle/gradle-build-action@v2 | |
- name: Run tests | |
run: ./gradlew ${{ matrix.target }} --scan | |
- name: Bundle the build report | |
if: failure() | |
run: find . -type d -name 'reports' | zip -@ -r build-reports.zip | |
- name: Upload the build report | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: error-report | |
path: build-reports.zip | |
test_windows: | |
needs: api_check | |
runs-on: windows-latest | |
if: github.repository == 'kotest/kotest' | |
strategy: | |
fail-fast: true | |
matrix: | |
target: | |
- mingwX64Test | |
steps: | |
- name: Checkout the repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
ref: ${{ github.event.inputs.branch }} | |
- name: Setup JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: "17" | |
- uses: gradle/gradle-build-action@v2 | |
- name: Run tests | |
run: ./gradlew ${{ matrix.target }} --scan | |
- name: Bundle the build report | |
if: failure() | |
run: find . -type d -name 'reports' | zip -@ -r build-reports.zip | |
- name: Upload the build report | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: error-report | |
path: build-reports.zip | |
env: | |
GRADLE_OPTS: -Dorg.gradle.configureondemand=false -Dorg.gradle.parallel=false -Dkotlin.incremental=false -Dorg.gradle.jvmargs="-Xmx3g -XX:MaxMetaspaceSize=756m -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8" |