From 3e505dcce9a1aba893c2cd4cd04cc5e16d96c682 Mon Sep 17 00:00:00 2001 From: Alejandro Serrano Date: Thu, 9 Feb 2023 09:28:17 +0100 Subject: [PATCH 1/3] Update Kotlin/Native targets --- .github/workflows/pull_request.yml | 183 +++++++++++++++++++++-------- gradle/libs.versions.toml | 2 +- 2 files changed, 134 insertions(+), 51 deletions(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index e0ebc4e9e4b..9f737286e7a 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -6,8 +6,34 @@ env: GRADLE_OPTS: -Dorg.gradle.daemon=false -Dorg.gradle.jvmargs="-Xmx5g -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParallelGC -XX:MaxMetaspaceSize=1g -Dfile.encoding=UTF-8" jobs: - ios_watchos: - runs-on: macos-latest + update_api: + runs-on: ubuntu-latest + timeout-minutes: 60 + + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Java + uses: actions/setup-java@v3 + with: + distribution: 'zulu' + java-version: 11 + + - name: apiDump + uses: gradle/gradle-build-action@v2 + with: + arguments: apiDump + + - name: "Commit new API files" + uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: Update API files + file_pattern: arrow-libs/**/api/*.api + + check: + runs-on: ubuntu-latest timeout-minutes: 60 steps: @@ -21,20 +47,20 @@ jobs: distribution: 'zulu' java-version: 11 - - name: ios and watchos tests + - name: Knit and API check uses: gradle/gradle-build-action@v2 with: - arguments: iosSimulatorArm64Test iosX64Test watchosSimulatorArm64Test watchosX64Test watchosX86Test --parallel --scan + arguments: knitCheck apiCheck --scan - name: Upload reports if: failure() uses: actions/upload-artifact@v3 with: - name: 'reports-ios_watchos' + name: 'reports-check' path: '**/build/reports/**' - macos_tvos: - runs-on: macos-latest + jvm: + runs-on: ubuntu-latest timeout-minutes: 60 steps: @@ -48,20 +74,36 @@ jobs: distribution: 'zulu' java-version: 11 - - name: macos and tvos tests + - name: JVM test + uses: gradle/gradle-build-action@v2 + with: + arguments: jvmTest --scan + + - name: Create code coverage report + if: "! github.event.pull_request.head.repo.fork " uses: gradle/gradle-build-action@v2 with: - arguments: macosArm64Test macosX64Test tvosSimulatorArm64Test tvosX64Test --parallel --scan + arguments: koverMergedReport + + - name: Add coverage report to PR + if: "! github.event.pull_request.head.repo.fork " + id: kover + uses: mi-kas/kover-report@v1 + with: + path: build/reports/kover/merged/xml/report.xml + token: ${{ secrets.GITHUB_TOKEN }} + title: Kover Report + update-comment: true - name: Upload reports if: failure() uses: actions/upload-artifact@v3 with: - name: 'reports-macos_tvos' + name: 'reports-jvmTest' path: '**/build/reports/**' - windows: - runs-on: windows-latest + js: + runs-on: ubuntu-latest timeout-minutes: 60 steps: @@ -75,20 +117,20 @@ jobs: distribution: 'zulu' java-version: 11 - - name: mingwX64Test + - name: JS tests uses: gradle/gradle-build-action@v2 with: - arguments: mingwX64Test --scan + arguments: jsTest --scan - name: Upload reports if: failure() uses: actions/upload-artifact@v3 with: - name: 'reports-windows' + name: 'reports-js' path: '**/build/reports/**' - check: - runs-on: ubuntu-latest + ios: + runs-on: macos-latest timeout-minutes: 60 steps: @@ -102,20 +144,20 @@ jobs: distribution: 'zulu' java-version: 11 - - name: check + - name: iOS tests uses: gradle/gradle-build-action@v2 with: - arguments: knitCheck apiCheck --scan + arguments: iosSimulatorArm64Test iosX64Test --parallel --scan - name: Upload reports if: failure() uses: actions/upload-artifact@v3 with: - name: 'reports-check' + name: 'reports-ios' path: '**/build/reports/**' - jvmTest: - runs-on: ubuntu-latest + macos: + runs-on: macos-latest timeout-minutes: 60 steps: @@ -129,36 +171,76 @@ jobs: distribution: 'zulu' java-version: 11 - - name: jvmTest + - name: macOS tests uses: gradle/gradle-build-action@v2 with: - arguments: jvmTest --scan + arguments: macosX64Test --scan - - name: Create code coverage report - if: "! github.event.pull_request.head.repo.fork " + - name: Upload reports + if: failure() + uses: actions/upload-artifact@v3 + with: + name: 'reports-macos' + path: '**/build/reports/**' + + tvos: + runs-on: macos-latest + timeout-minutes: 60 + continue-on-error: true + + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Java + uses: actions/setup-java@v3 + with: + distribution: 'zulu' + java-version: 11 + + - name: tvOS tests uses: gradle/gradle-build-action@v2 with: - arguments: koverMergedReport + arguments: tvosSimulatorArm64Test tvosX64Test --parallel --scan - - name: Add coverage report to PR - if: "! github.event.pull_request.head.repo.fork " - id: kover - uses: mi-kas/kover-report@v1 + - name: Upload reports + if: failure() + uses: actions/upload-artifact@v3 with: - path: build/reports/kover/merged/xml/report.xml - token: ${{ secrets.GITHUB_TOKEN }} - title: Kover Report - update-comment: true + name: 'reports-tvos' + path: '**/build/reports/**' + + watchos: + runs-on: macos-latest + timeout-minutes: 60 + continue-on-error: true + + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Java + uses: actions/setup-java@v3 + with: + distribution: 'zulu' + java-version: 11 + + - name: watchOS tests + uses: gradle/gradle-build-action@v2 + with: + arguments: watchosSimulatorArm64Test watchosX64Test --parallel --scan - name: Upload reports if: failure() uses: actions/upload-artifact@v3 with: - name: 'reports-jvmTest' + name: 'reports-watchos' path: '**/build/reports/**' - js: - runs-on: ubuntu-latest + windows: + runs-on: windows-latest timeout-minutes: 60 steps: @@ -172,16 +254,16 @@ jobs: distribution: 'zulu' java-version: 11 - - name: jsTest + - name: Windows (MinGW) tests uses: gradle/gradle-build-action@v2 with: - arguments: jsTest --scan + arguments: mingwX64Test --scan - name: Upload reports if: failure() uses: actions/upload-artifact@v3 with: - name: 'reports-js' + name: 'reports-windows' path: '**/build/reports/**' linux: @@ -199,10 +281,10 @@ jobs: distribution: 'zulu' java-version: 11 - - name: linuxX64Test + - name: Linux tests uses: gradle/gradle-build-action@v2 with: - arguments: linuxX64Test --scan + arguments: linuxX64Test --scan - name: Upload reports if: failure() @@ -211,7 +293,7 @@ jobs: name: 'reports-linux' path: '**/build/reports/**' - update_api: + android: runs-on: ubuntu-latest timeout-minutes: 60 @@ -226,13 +308,14 @@ jobs: distribution: 'zulu' java-version: 11 - - name: apiDump + - name: Android tests uses: gradle/gradle-build-action@v2 with: - arguments: apiDump + arguments: androidNativeX64Test --scan - - name: "Commit new API files" - uses: stefanzweifel/git-auto-commit-action@v4 + - name: Upload reports + if: failure() + uses: actions/upload-artifact@v3 with: - commit_message: Update API files - file_pattern: arrow-libs/**/api/*.api + name: 'reports-android' + path: '**/build/reports/**' diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 6f53ba83379..ae9912315b8 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,6 +1,6 @@ [versions] animalSniffer = "1.6.0" -arrowGradleConfig = "0.11.0-alpha.1" +arrowGradleConfig = "0.12.0-rc.1" assertj = "3.23.1" coroutines = "1.6.4" classgraph = "4.8.151" From f7d67b712e9608eca5eff5b55fc52a73a11154ca Mon Sep 17 00:00:00 2001 From: Alejandro Serrano Date: Thu, 9 Feb 2023 09:32:24 +0100 Subject: [PATCH 2/3] Set up Android in the corresponding action --- .github/workflows/pull_request.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 9f737286e7a..c56a0e42b9d 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -308,6 +308,9 @@ jobs: distribution: 'zulu' java-version: 11 + - name: Set up Android SDK + uses: android-actions/setup-android@v2 + - name: Android tests uses: gradle/gradle-build-action@v2 with: From 095b2c8c1c40dc93d52cfdd6ee62936fe8b04299 Mon Sep 17 00:00:00 2001 From: Alejandro Serrano Date: Thu, 9 Feb 2023 10:03:14 +0100 Subject: [PATCH 3/3] Remove Android tests --- .github/workflows/pull_request.yml | 30 ------------------------------ 1 file changed, 30 deletions(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index c56a0e42b9d..cae33bca946 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -292,33 +292,3 @@ jobs: with: name: 'reports-linux' path: '**/build/reports/**' - - android: - runs-on: ubuntu-latest - timeout-minutes: 60 - - steps: - - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - - name: Set up Java - uses: actions/setup-java@v3 - with: - distribution: 'zulu' - java-version: 11 - - - name: Set up Android SDK - uses: android-actions/setup-android@v2 - - - name: Android tests - uses: gradle/gradle-build-action@v2 - with: - arguments: androidNativeX64Test --scan - - - name: Upload reports - if: failure() - uses: actions/upload-artifact@v3 - with: - name: 'reports-android' - path: '**/build/reports/**'