From d591cdce9d2852181c339cd2e2ed08ed55a14c92 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 01:10:28 +0100 Subject: [PATCH 01/29] test mac build --- .github/workflows/build.yml | 62 ------------ .github/workflows/kotlin-multiplatform.yml | 105 +++++++++++++++++++++ 2 files changed, 105 insertions(+), 62 deletions(-) delete mode 100644 .github/workflows/build.yml create mode 100644 .github/workflows/kotlin-multiplatform.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index e7296d61..00000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,62 +0,0 @@ -name: "Build" -on: - push: - branches: - - main - - release/** - pull_request: - -jobs: - build: - name: Build Job ${{ matrix.os }} - runs-on: ${{ matrix.os }} - - strategy: - fail-fast: false - matrix: - os: [macos-latest] - java: ["11"] - - steps: - - name: Git checkout - uses: actions/checkout@v3 - - - name: "Set up Java: ${{ matrix.java }}" - uses: actions/setup-java@v3 - with: - java-version: ${{ matrix.java }} - distribution: "adopt" - - - name: Cache Gradle packages - uses: actions/cache@v2 - with: - path: | - ~/.gradle/caches - ~/.gradle/wrapper - key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} - restore-keys: | - ${{ runner.os }}-gradle- - - # Clean, build - - name: Make all - run: make all - env: - SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} - - # We stop gradle at the end to make sure the cache folders - # don't contain any lock files and are free to be cached. - - name: Make stop - run: make stop - - - name: Archive packages - uses: actions/upload-artifact@v3 - with: - name: ${{ github.sha }} - if-no-files-found: error - path: | - ./*/build/distributions/*.zip - - - name: Upload coverage to Codecov - uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@v3 - with: - name: sentry-kotlin-multiplatform diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml new file mode 100644 index 00000000..72d3f749 --- /dev/null +++ b/.github/workflows/kotlin-multiplatform.yml @@ -0,0 +1,105 @@ +name: "sentry-kotlin-multiplatform" +on: + push: + branches: + - main + - release/** + pull_request: + paths-ignore: + - "**/*.md" + +jobs: + cancel-previous-workflow: + runs-on: ubuntu-latest + steps: + - name: Cancel Previous Runs + uses: styfle/cancel-workflow-action@01ce38bf961b4e243a6342cbade0dbc8ba3f0432 # pin@0.12.0 + with: + access_token: ${{ github.token }} + + build-macos: + runs-on: macos-latest + + steps: + - uses: actions/checkout@v3 + + - name: JDK setup + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: corretto + + - name: Mac build + run: | + ./gradlew macosX64Test iosX64Test watchosX64Test tvosX64Test \ + publishKotlinMultiplatformPublicationToMavenLocal \ + publishIosArm64PublicationToMavenLocal \ + publishIosSimulatorArm64PublicationToMavenLocal \ + publishIosX64PublicationToMavenLocal \ + publishMacosX64PublicationToMavenLocal \ + publishMacosArm64PublicationToMavenLocal \ + publishWatchosArm32PublicationToMavenLocal \ + publishWatchosArm64PublicationToMavenLocal \ + publishWatchosDeviceArm64PublicationToMavenLocal \ + publishWatchosSimulatorArm64PublicationToMavenLocal \ + publishWatchosX64PublicationToMavenLocal \ + publishTvosArm64PublicationToMavenLocal \ + publishTvosSimulatorArm64PublicationToMavenLocal \ + publishTvosX64PublicationToMavenLocal \ + --no-daemon --stacktrace + env: + SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} + +# build: +# name: Build Job ${{ matrix.os }} +# runs-on: ${{ matrix.os }} +# +# strategy: +# fail-fast: false +# matrix: +# os: [ macos-latest ] +# java: [ "11" ] +# +# steps: +# - name: Git checkout +# uses: actions/checkout@v3 +# +# - name: "Set up Java: ${{ matrix.java }}" +# uses: actions/setup-java@v3 +# with: +# java-version: ${{ matrix.java }} +# distribution: "adopt" +# +# - name: Cache Gradle packages +# uses: actions/cache@v2 +# with: +# path: | +# ~/.gradle/caches +# ~/.gradle/wrapper +# key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} +# restore-keys: | +# ${{ runner.os }}-gradle- +# +# # Clean, build +# - name: Make all +# run: make all +# env: +# SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} +# +# # We stop gradle at the end to make sure the cache folders +# # don't contain any lock files and are free to be cached. +# - name: Make stop +# run: make stop +# +# - name: Archive packages +# uses: actions/upload-artifact@v3 +# with: +# name: ${{ github.sha }} +# if-no-files-found: error +# path: | +# ./*/build/distributions/*.zip +# +# - name: Upload coverage to Codecov +# uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@v3 +# with: +# name: sentry-kotlin-multiplatform From c93712c1ff19d4607fa8e1a05bdd8de37788e9c2 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 11:06:45 +0100 Subject: [PATCH 02/29] improve --- .github/workflows/kotlin-multiplatform.yml | 46 ++++++++++++++++++++-- 1 file changed, 43 insertions(+), 3 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 72d3f749..89ce2f3e 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -17,7 +17,7 @@ jobs: with: access_token: ${{ github.token }} - build-macos: + build-apple: runs-on: macos-latest steps: @@ -29,7 +29,7 @@ jobs: java-version: 17 distribution: corretto - - name: Mac build + - name: Apple build run: | ./gradlew macosX64Test iosX64Test watchosX64Test tvosX64Test \ publishKotlinMultiplatformPublicationToMavenLocal \ @@ -40,7 +40,6 @@ jobs: publishMacosArm64PublicationToMavenLocal \ publishWatchosArm32PublicationToMavenLocal \ publishWatchosArm64PublicationToMavenLocal \ - publishWatchosDeviceArm64PublicationToMavenLocal \ publishWatchosSimulatorArm64PublicationToMavenLocal \ publishWatchosX64PublicationToMavenLocal \ publishTvosArm64PublicationToMavenLocal \ @@ -50,6 +49,47 @@ jobs: env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} + build-jvm: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + + - name: JDK setup + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: corretto + + - name: Mac build + run: | + ./gradlew build publishToMavenLocal --no-daemon --stacktrace + env: + SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} + GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" + + archive-distribution: + runs-on: macos-latest + - uses: actions/checkout@v3 + + - name: JDK setup + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: corretto + + - name: DistZip + run: | + ./gradlew distZip --no-daemon --stacktrace + + - name: Archive packages + uses: actions/upload-artifact@v3 + with: + name: ${{ github.sha }} + if-no-files-found: error + path: | + ./*/build/distributions/*.zip + # build: # name: Build Job ${{ matrix.os }} # runs-on: ${{ matrix.os }} From e611934b181bf7503a894798b5590c6397bda5ab Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 11:09:12 +0100 Subject: [PATCH 03/29] test --- .github/workflows/kotlin-multiplatform.yml | 100 +++++---------------- 1 file changed, 23 insertions(+), 77 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 89ce2f3e..363db8a5 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -49,87 +49,38 @@ jobs: env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} - build-jvm: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 - - - name: JDK setup - uses: actions/setup-java@v3 - with: - java-version: 17 - distribution: corretto - - - name: Mac build - run: | - ./gradlew build publishToMavenLocal --no-daemon --stacktrace - env: - SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" - - archive-distribution: - runs-on: macos-latest - - uses: actions/checkout@v3 - - - name: JDK setup - uses: actions/setup-java@v3 - with: - java-version: 17 - distribution: corretto - - - name: DistZip - run: | - ./gradlew distZip --no-daemon --stacktrace - - - name: Archive packages - uses: actions/upload-artifact@v3 - with: - name: ${{ github.sha }} - if-no-files-found: error - path: | - ./*/build/distributions/*.zip - -# build: -# name: Build Job ${{ matrix.os }} -# runs-on: ${{ matrix.os }} -# -# strategy: -# fail-fast: false -# matrix: -# os: [ macos-latest ] -# java: [ "11" ] +# build-jvm: +# runs-on: ubuntu-latest # # steps: -# - name: Git checkout -# uses: actions/checkout@v3 +# - uses: actions/checkout@v3 # -# - name: "Set up Java: ${{ matrix.java }}" +# - name: JDK setup # uses: actions/setup-java@v3 # with: -# java-version: ${{ matrix.java }} -# distribution: "adopt" +# java-version: 17 +# distribution: corretto # -# - name: Cache Gradle packages -# uses: actions/cache@v2 -# with: -# path: | -# ~/.gradle/caches -# ~/.gradle/wrapper -# key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} -# restore-keys: | -# ${{ runner.os }}-gradle- -# -# # Clean, build -# - name: Make all -# run: make all +# - name: Mac build +# run: | +# ./gradlew build publishToMavenLocal --no-daemon --stacktrace # env: # SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} +# GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" +# +# archive-distribution: +# runs-on: macos-latest +# - uses: actions/checkout@v3 # -# # We stop gradle at the end to make sure the cache folders -# # don't contain any lock files and are free to be cached. -# - name: Make stop -# run: make stop +# - name: JDK setup +# uses: actions/setup-java@v3 +# with: +# java-version: 17 +# distribution: corretto +# +# - name: DistZip +# run: | +# ./gradlew distZip --no-daemon --stacktrace # # - name: Archive packages # uses: actions/upload-artifact@v3 @@ -138,8 +89,3 @@ jobs: # if-no-files-found: error # path: | # ./*/build/distributions/*.zip -# -# - name: Upload coverage to Codecov -# uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@v3 -# with: -# name: sentry-kotlin-multiplatform From 08eb575c031a65847c702698515b50205dc75715 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 11:28:29 +0100 Subject: [PATCH 04/29] add jvm test --- .github/workflows/kotlin-multiplatform.yml | 50 ++++++++-------------- 1 file changed, 19 insertions(+), 31 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 363db8a5..8400a5ab 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -32,41 +32,29 @@ jobs: - name: Apple build run: | ./gradlew macosX64Test iosX64Test watchosX64Test tvosX64Test \ - publishKotlinMultiplatformPublicationToMavenLocal \ - publishIosArm64PublicationToMavenLocal \ - publishIosSimulatorArm64PublicationToMavenLocal \ - publishIosX64PublicationToMavenLocal \ - publishMacosX64PublicationToMavenLocal \ - publishMacosArm64PublicationToMavenLocal \ - publishWatchosArm32PublicationToMavenLocal \ - publishWatchosArm64PublicationToMavenLocal \ - publishWatchosSimulatorArm64PublicationToMavenLocal \ - publishWatchosX64PublicationToMavenLocal \ - publishTvosArm64PublicationToMavenLocal \ - publishTvosSimulatorArm64PublicationToMavenLocal \ - publishTvosX64PublicationToMavenLocal \ + publishToMavenLocal \ --no-daemon --stacktrace env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} -# build-jvm: -# runs-on: ubuntu-latest -# -# steps: -# - uses: actions/checkout@v3 -# -# - name: JDK setup -# uses: actions/setup-java@v3 -# with: -# java-version: 17 -# distribution: corretto -# -# - name: Mac build -# run: | -# ./gradlew build publishToMavenLocal --no-daemon --stacktrace -# env: -# SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} -# GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" + build-jvm: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + + - name: JDK setup + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: corretto + + - name: JVM build + run: | + ./gradlew build publishToMavenLocal --no-daemon --stacktrace + env: + SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} + GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" # # archive-distribution: # runs-on: macos-latest From 410b9f64ee3a293dd1bec7d0985d30f2f9b44a21 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 11:29:46 +0100 Subject: [PATCH 05/29] add distzip job --- .github/workflows/kotlin-multiplatform.yml | 44 +++++++++++----------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 8400a5ab..30179f8e 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -55,25 +55,25 @@ jobs: env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" -# -# archive-distribution: -# runs-on: macos-latest -# - uses: actions/checkout@v3 -# -# - name: JDK setup -# uses: actions/setup-java@v3 -# with: -# java-version: 17 -# distribution: corretto -# -# - name: DistZip -# run: | -# ./gradlew distZip --no-daemon --stacktrace -# -# - name: Archive packages -# uses: actions/upload-artifact@v3 -# with: -# name: ${{ github.sha }} -# if-no-files-found: error -# path: | -# ./*/build/distributions/*.zip + + archive-distribution: + runs-on: macos-latest + - uses: actions/checkout@v3 + + - name: JDK setup + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: corretto + + - name: DistZip + run: | + ./gradlew distZip --no-daemon --stacktrace + + - name: Archive packages + uses: actions/upload-artifact@v3 + with: + name: ${{ github.sha }} + if-no-files-found: error + path: | + ./*/build/distributions/*.zip From 83a5d9a481d0797346abd2743544ed44ea143349 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 11:30:55 +0100 Subject: [PATCH 06/29] fix file --- .github/workflows/kotlin-multiplatform.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 30179f8e..d232b81f 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -58,13 +58,15 @@ jobs: archive-distribution: runs-on: macos-latest - - uses: actions/checkout@v3 - - name: JDK setup - uses: actions/setup-java@v3 - with: - java-version: 17 - distribution: corretto + steps: + - uses: actions/checkout@v3 + + - name: JDK setup + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: corretto - name: DistZip run: | From 3919e38896943b683d86c16067facb8a4a350962 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 11:41:44 +0100 Subject: [PATCH 07/29] Coverage --- .github/workflows/kotlin-multiplatform.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index d232b81f..23ac066c 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -56,6 +56,12 @@ jobs: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" + # Kover coverage currently only works for JVM + - name: Upload coverage to Codecov + uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@v3 + with: + name: sentry-kotlin-multiplatform + archive-distribution: runs-on: macos-latest From d121793fc6a4d941d025896def7bb9fb5c5dfc8d Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 12:31:46 +0100 Subject: [PATCH 08/29] update --- .github/workflows/analyze.yml | 33 ++++++++++++++ .github/workflows/kotlin-multiplatform.yml | 51 +++++++++++++++++++--- 2 files changed, 77 insertions(+), 7 deletions(-) create mode 100644 .github/workflows/analyze.yml diff --git a/.github/workflows/analyze.yml b/.github/workflows/analyze.yml new file mode 100644 index 00000000..31fdf3cd --- /dev/null +++ b/.github/workflows/analyze.yml @@ -0,0 +1,33 @@ +name: "analyze" +on: + push: + branches: + - main + - release/** + pull_request: + paths-ignore: + - "**/*.md" + +jobs: + cancel-previous-workflow: + runs-on: ubuntu-latest + steps: + - name: Cancel Previous Runs + uses: styfle/cancel-workflow-action@01ce38bf961b4e243a6342cbade0dbc8ba3f0432 # pin@0.12.0 + with: + access_token: ${{ github.token }} + + analyze: + runs-on: macos-latest + + steps: + - uses: actions/checkout@v4 + + - name: JDK setup + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: corretto + + - name: Analyze + run: ./gradlew analyze detekt \ No newline at end of file diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 23ac066c..58ea47ba 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -21,7 +21,7 @@ jobs: runs-on: macos-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: JDK setup uses: actions/setup-java@v3 @@ -31,17 +31,48 @@ jobs: - name: Apple build run: | - ./gradlew macosX64Test iosX64Test watchosX64Test tvosX64Test \ - publishToMavenLocal \ + ./gradlew :sentry-kotlin-multiplatform:macosX64Test \ + :sentry-kotlin-multiplatform:iosX64Test \ + :sentry-kotlin-multiplatform:watchosX64Test \ + :sentry-kotlin-multiplatform:tvosX64Test \ + :sentry-kotlin-multiplatform:publishKotlinMultiplatformPublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishIosArm64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishIosSimulatorArm64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishIosX64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishMacosX64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishMacosArm64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishWatchosArm32PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishWatchosArm64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishWatchosDeviceArm64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishWatchosSimulatorArm64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishWatchosX64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishTvosArm64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishTvosSimulatorArm64PublicationToMavenLocal \ + :sentry-kotlin-multiplatform:publishTvosX64PublicationToMavenLocal \ --no-daemon --stacktrace env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} + build-apple-samples: + runs-on: macos-latest + + steps: + - uses: actions/checkout@v4 + + - name: JDK setup + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: corretto + + - name: Xcode simulator build + run: make buildAppleSamples + build-jvm: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: JDK setup uses: actions/setup-java@v3 @@ -51,11 +82,17 @@ jobs: - name: JVM build run: | - ./gradlew build publishToMavenLocal --no-daemon --stacktrace + ./gradlew :sentry-kotlin-multiplatform:testDebugUnitTest \ + :sentry-kotlin-multiplatform:testReleaseUnitTest + :sentry-kotlin-multiplatform:publishToMavenLocal \ + --no-daemon --stacktrace env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" + - name: Create coverage + run: make createCoverageReports + # Kover coverage currently only works for JVM - name: Upload coverage to Codecov uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@v3 @@ -66,7 +103,7 @@ jobs: runs-on: macos-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: JDK setup uses: actions/setup-java@v3 @@ -76,7 +113,7 @@ jobs: - name: DistZip run: | - ./gradlew distZip --no-daemon --stacktrace + ./gradlew :sentry-kotlin-multiplatform:distZip --no-daemon --stacktrace - name: Archive packages uses: actions/upload-artifact@v3 From 10d1befec6b9cf052d3a732d760ba81b4e2048e0 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 12:36:50 +0100 Subject: [PATCH 09/29] fix --- .github/workflows/kotlin-multiplatform.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 58ea47ba..b6178403 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -82,8 +82,8 @@ jobs: - name: JVM build run: | - ./gradlew :sentry-kotlin-multiplatform:testDebugUnitTest \ - :sentry-kotlin-multiplatform:testReleaseUnitTest + ./gradlew :sentry-kotlin-multiplatform:testDebugUnitTest \ + :sentry-kotlin-multiplatform:testReleaseUnitTest \ :sentry-kotlin-multiplatform:publishToMavenLocal \ --no-daemon --stacktrace env: From 86103de3b3a85cff00e198c5e37e8b07b17e8af4 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 12:38:56 +0100 Subject: [PATCH 10/29] fix --- .github/workflows/analyze.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/analyze.yml b/.github/workflows/analyze.yml index 31fdf3cd..7f1e716f 100644 --- a/.github/workflows/analyze.yml +++ b/.github/workflows/analyze.yml @@ -30,4 +30,4 @@ jobs: distribution: corretto - name: Analyze - run: ./gradlew analyze detekt \ No newline at end of file + run: ./gradlew apiCheck detekt \ No newline at end of file From 00072b0487b9fe9704e0b1e8b1975e445b88a346 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 12:40:08 +0100 Subject: [PATCH 11/29] rename --- .github/workflows/kotlin-multiplatform.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index b6178403..0c81cc73 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -1,4 +1,4 @@ -name: "sentry-kotlin-multiplatform" +name: "Lib: sentry-kotlin-multiplatform" on: push: branches: From 38a0f95bbf111b1267a0b6c447980a2bb86dce60 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 12:40:44 +0100 Subject: [PATCH 12/29] rename --- .github/workflows/analyze.yml | 2 +- sentry-samples/kmp-app-cocoapods/iosApp/Podfile.lock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/analyze.yml b/.github/workflows/analyze.yml index 7f1e716f..49e063ec 100644 --- a/.github/workflows/analyze.yml +++ b/.github/workflows/analyze.yml @@ -1,4 +1,4 @@ -name: "analyze" +name: "Analyze" on: push: branches: diff --git a/sentry-samples/kmp-app-cocoapods/iosApp/Podfile.lock b/sentry-samples/kmp-app-cocoapods/iosApp/Podfile.lock index c32432f8..ac971868 100644 --- a/sentry-samples/kmp-app-cocoapods/iosApp/Podfile.lock +++ b/sentry-samples/kmp-app-cocoapods/iosApp/Podfile.lock @@ -27,4 +27,4 @@ SPEC CHECKSUMS: PODFILE CHECKSUM: f282da88f39e69507b0a255187c8a6b644477756 -COCOAPODS: 1.12.0 +COCOAPODS: 1.13.0 From 5e206bae6e6a22476ba3873bbbf9d73e3d7df445 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 12:58:01 +0100 Subject: [PATCH 13/29] fix --- .github/workflows/kotlin-multiplatform.yml | 27 +++------------------- scripts/build-apple.sh | 27 ++++++++++++++++++++++ scripts/build-distribution.sh | 9 ++++++++ scripts/build-jvm.sh | 15 ++++++++++++ 4 files changed, 54 insertions(+), 24 deletions(-) create mode 100755 scripts/build-apple.sh create mode 100755 scripts/build-distribution.sh create mode 100755 scripts/build-jvm.sh diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 0c81cc73..9aa4e13a 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -31,25 +31,7 @@ jobs: - name: Apple build run: | - ./gradlew :sentry-kotlin-multiplatform:macosX64Test \ - :sentry-kotlin-multiplatform:iosX64Test \ - :sentry-kotlin-multiplatform:watchosX64Test \ - :sentry-kotlin-multiplatform:tvosX64Test \ - :sentry-kotlin-multiplatform:publishKotlinMultiplatformPublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishIosArm64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishIosSimulatorArm64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishIosX64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishMacosX64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishMacosArm64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishWatchosArm32PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishWatchosArm64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishWatchosDeviceArm64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishWatchosSimulatorArm64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishWatchosX64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishTvosArm64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishTvosSimulatorArm64PublicationToMavenLocal \ - :sentry-kotlin-multiplatform:publishTvosX64PublicationToMavenLocal \ - --no-daemon --stacktrace + ./scripts/build-apple.sh sentry-kotlin-multiplatform env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} @@ -82,10 +64,7 @@ jobs: - name: JVM build run: | - ./gradlew :sentry-kotlin-multiplatform:testDebugUnitTest \ - :sentry-kotlin-multiplatform:testReleaseUnitTest \ - :sentry-kotlin-multiplatform:publishToMavenLocal \ - --no-daemon --stacktrace + ./scripts/build-jvm.sh sentry-kotlin-multiplatform env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" @@ -113,7 +92,7 @@ jobs: - name: DistZip run: | - ./gradlew :sentry-kotlin-multiplatform:distZip --no-daemon --stacktrace + ./scripts/build-distribution.sh sentry-kotlin-multiplatform - name: Archive packages uses: actions/upload-artifact@v3 diff --git a/scripts/build-apple.sh b/scripts/build-apple.sh new file mode 100755 index 00000000..deddf415 --- /dev/null +++ b/scripts/build-apple.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +if [ -z "$1" ]; then + echo "Please provide a gradle project name." + exit 1 +fi + +PROJECT_NAME="$1" + +./gradlew ":${PROJECT_NAME}:macosX64Test" \ + ":${PROJECT_NAME}:iosX64Test" \ + ":${PROJECT_NAME}:watchosX64Test" \ + ":${PROJECT_NAME}:tvosX64Test" \ + ":${PROJECT_NAME}:publishKotlinMultiplatformPublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishIosArm64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishIosSimulatorArm64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishIosX64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishMacosX64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishMacosArm64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishWatchosArm32PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishWatchosArm64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishWatchosSimulatorArm64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishWatchosX64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishTvosArm64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishTvosSimulatorArm64PublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishTvosX64PublicationToMavenLocal" \ + --no-daemon --stacktrace diff --git a/scripts/build-distribution.sh b/scripts/build-distribution.sh new file mode 100755 index 00000000..35a20775 --- /dev/null +++ b/scripts/build-distribution.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +if [ -z "$1" ]; then + echo "Please provide a gradle project name." + exit 1 +fi + +PROJECT_NAME="$1" +./gradlew ":${PROJECT_NAME}:distzip" --no-daemon --stacktrace \ No newline at end of file diff --git a/scripts/build-jvm.sh b/scripts/build-jvm.sh new file mode 100755 index 00000000..34ff3b10 --- /dev/null +++ b/scripts/build-jvm.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ -z "$1" ]; then + echo "Please provide a gradle project name." + exit 1 +fi + +PROJECT_NAME="$1" +./gr +./gradlew ":${PROJECT_NAME}:testDebugUnitTest" \ + ":${PROJECT_NAME}:testReleaseUnitTest" \ + ":${PROJECT_NAME}:publishAndroidReleasePublicationToMavenLocal" \ + ":${PROJECT_NAME}:publishJvmPublicationToMavenLocal " \ + ":${PROJECT_NAME}:publishKotlinMultiplatformPublicationToMavenLocal" \ + --no-daemon --stacktrace \ No newline at end of file From dfa149204038316d749cacc8ab2b69004c9d350c Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 13:03:33 +0100 Subject: [PATCH 14/29] update --- scripts/build-apple.sh | 36 +++++++++++++++++------------------ scripts/build-distribution.sh | 2 +- scripts/build-jvm.sh | 12 ++++++------ 3 files changed, 25 insertions(+), 25 deletions(-) diff --git a/scripts/build-apple.sh b/scripts/build-apple.sh index deddf415..852754ba 100755 --- a/scripts/build-apple.sh +++ b/scripts/build-apple.sh @@ -7,21 +7,21 @@ fi PROJECT_NAME="$1" -./gradlew ":${PROJECT_NAME}:macosX64Test" \ - ":${PROJECT_NAME}:iosX64Test" \ - ":${PROJECT_NAME}:watchosX64Test" \ - ":${PROJECT_NAME}:tvosX64Test" \ - ":${PROJECT_NAME}:publishKotlinMultiplatformPublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishIosArm64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishIosSimulatorArm64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishIosX64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishMacosX64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishMacosArm64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishWatchosArm32PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishWatchosArm64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishWatchosSimulatorArm64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishWatchosX64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishTvosArm64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishTvosSimulatorArm64PublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishTvosX64PublicationToMavenLocal" \ - --no-daemon --stacktrace +./gradlew "macosX64Test" \ + "iosX64Test" \ + "watchosX64Test" \ + "tvosX64Test" \ + "publishKotlinMultiplatformPublicationToMavenLocal" \ + "publishIosArm64PublicationToMavenLocal" \ + "publishIosSimulatorArm64PublicationToMavenLocal" \ + "publishIosX64PublicationToMavenLocal" \ + "publishMacosX64PublicationToMavenLocal" \ + "publishMacosArm64PublicationToMavenLocal" \ + "publishWatchosArm32PublicationToMavenLocal" \ + "publishWatchosArm64PublicationToMavenLocal" \ + "publishWatchosSimulatorArm64PublicationToMavenLocal" \ + "publishWatchosX64PublicationToMavenLocal" \ + "publishTvosArm64PublicationToMavenLocal" \ + "publishTvosSimulatorArm64PublicationToMavenLocal" \ + "publishTvosX64PublicationToMavenLocal" \ + -p "${PROJECT_NAME}" --no-daemon --stacktrace diff --git a/scripts/build-distribution.sh b/scripts/build-distribution.sh index 35a20775..b8a940d5 100755 --- a/scripts/build-distribution.sh +++ b/scripts/build-distribution.sh @@ -6,4 +6,4 @@ if [ -z "$1" ]; then fi PROJECT_NAME="$1" -./gradlew ":${PROJECT_NAME}:distzip" --no-daemon --stacktrace \ No newline at end of file +./gradlew "distzip" -p "${PROJECT_NAME}" --no-daemon --stacktrace \ No newline at end of file diff --git a/scripts/build-jvm.sh b/scripts/build-jvm.sh index 34ff3b10..ac3ea5dc 100755 --- a/scripts/build-jvm.sh +++ b/scripts/build-jvm.sh @@ -7,9 +7,9 @@ fi PROJECT_NAME="$1" ./gr -./gradlew ":${PROJECT_NAME}:testDebugUnitTest" \ - ":${PROJECT_NAME}:testReleaseUnitTest" \ - ":${PROJECT_NAME}:publishAndroidReleasePublicationToMavenLocal" \ - ":${PROJECT_NAME}:publishJvmPublicationToMavenLocal " \ - ":${PROJECT_NAME}:publishKotlinMultiplatformPublicationToMavenLocal" \ - --no-daemon --stacktrace \ No newline at end of file +./gradlew "testDebugUnitTest" \ + "testReleaseUnitTest" \ + "publishAndroidReleasePublicationToMavenLocal" \ + "publishJvmPublicationToMavenLocal " \ + "publishKotlinMultiplatformPublicationToMavenLocal" \ + -p "${PROJECT_NAME}" --no-daemon --stacktrace \ No newline at end of file From d0cae3ff6da0ae11a6c851fa80d5a826943e2314 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 13:15:49 +0100 Subject: [PATCH 15/29] fix --- scripts/build-jvm.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/build-jvm.sh b/scripts/build-jvm.sh index ac3ea5dc..9339253d 100755 --- a/scripts/build-jvm.sh +++ b/scripts/build-jvm.sh @@ -10,6 +10,6 @@ PROJECT_NAME="$1" ./gradlew "testDebugUnitTest" \ "testReleaseUnitTest" \ "publishAndroidReleasePublicationToMavenLocal" \ - "publishJvmPublicationToMavenLocal " \ + "publishJvmPublicationToMavenLocal" \ "publishKotlinMultiplatformPublicationToMavenLocal" \ -p "${PROJECT_NAME}" --no-daemon --stacktrace \ No newline at end of file From beaf92a2288993f3f84918c8828045727492b74d Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 13:25:20 +0100 Subject: [PATCH 16/29] coverage --- .github/workflows/kotlin-multiplatform.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 9aa4e13a..61c5ab7e 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -65,13 +65,11 @@ jobs: - name: JVM build run: | ./scripts/build-jvm.sh sentry-kotlin-multiplatform + make createCoverageReports env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g" - - name: Create coverage - run: make createCoverageReports - # Kover coverage currently only works for JVM - name: Upload coverage to Codecov uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@v3 From 1a42123bd11194a1159e39977a1e2bef3fc2ca3d Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 13:26:08 +0100 Subject: [PATCH 17/29] fix --- .github/workflows/kotlin-multiplatform.yml | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 61c5ab7e..8773439d 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -32,24 +32,10 @@ jobs: - name: Apple build run: | ./scripts/build-apple.sh sentry-kotlin-multiplatform + make buildAppleSamples env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} - build-apple-samples: - runs-on: macos-latest - - steps: - - uses: actions/checkout@v4 - - - name: JDK setup - uses: actions/setup-java@v3 - with: - java-version: 17 - distribution: corretto - - - name: Xcode simulator build - run: make buildAppleSamples - build-jvm: runs-on: ubuntu-latest From 64f9c6a4c739534c19b704bd62e66e4a35874a9b Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 13:27:20 +0100 Subject: [PATCH 18/29] dont disable daemon --- scripts/build-apple.sh | 2 +- scripts/build-distribution.sh | 2 +- scripts/build-jvm.sh | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/build-apple.sh b/scripts/build-apple.sh index 852754ba..fb1c37c5 100755 --- a/scripts/build-apple.sh +++ b/scripts/build-apple.sh @@ -24,4 +24,4 @@ PROJECT_NAME="$1" "publishTvosArm64PublicationToMavenLocal" \ "publishTvosSimulatorArm64PublicationToMavenLocal" \ "publishTvosX64PublicationToMavenLocal" \ - -p "${PROJECT_NAME}" --no-daemon --stacktrace + -p "${PROJECT_NAME}" diff --git a/scripts/build-distribution.sh b/scripts/build-distribution.sh index b8a940d5..261c084d 100755 --- a/scripts/build-distribution.sh +++ b/scripts/build-distribution.sh @@ -6,4 +6,4 @@ if [ -z "$1" ]; then fi PROJECT_NAME="$1" -./gradlew "distzip" -p "${PROJECT_NAME}" --no-daemon --stacktrace \ No newline at end of file +./gradlew "distzip" -p "${PROJECT_NAME}" \ No newline at end of file diff --git a/scripts/build-jvm.sh b/scripts/build-jvm.sh index 9339253d..31ec07a0 100755 --- a/scripts/build-jvm.sh +++ b/scripts/build-jvm.sh @@ -12,4 +12,4 @@ PROJECT_NAME="$1" "publishAndroidReleasePublicationToMavenLocal" \ "publishJvmPublicationToMavenLocal" \ "publishKotlinMultiplatformPublicationToMavenLocal" \ - -p "${PROJECT_NAME}" --no-daemon --stacktrace \ No newline at end of file + -p "${PROJECT_NAME}" \ No newline at end of file From eb5d50d59283404928c82d2793970934412d962f Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 13:31:50 +0100 Subject: [PATCH 19/29] add gradle cache: --- .github/workflows/kotlin-multiplatform.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 8773439d..8d761c91 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -28,6 +28,7 @@ jobs: with: java-version: 17 distribution: corretto + cache: gradle - name: Apple build run: | @@ -47,6 +48,7 @@ jobs: with: java-version: 17 distribution: corretto + cache: gradle - name: JVM build run: | @@ -73,6 +75,7 @@ jobs: with: java-version: 17 distribution: corretto + cache: gradle - name: DistZip run: | From 528b84066b889b5c14f7a496a20d0433cd1cfb97 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 13:41:28 +0100 Subject: [PATCH 20/29] fix --- .github/workflows/kotlin-multiplatform.yml | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 8d761c91..100ec80c 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -27,8 +27,10 @@ jobs: uses: actions/setup-java@v3 with: java-version: 17 - distribution: corretto - cache: gradle + distribution: temurin + + - name: Setup Gradle + uses: gradle/gradle-build-action@v2 - name: Apple build run: | @@ -47,8 +49,10 @@ jobs: uses: actions/setup-java@v3 with: java-version: 17 - distribution: corretto - cache: gradle + distribution: temurin + + - name: Setup Gradle + uses: gradle/gradle-build-action@v2 - name: JVM build run: | @@ -74,8 +78,10 @@ jobs: uses: actions/setup-java@v3 with: java-version: 17 - distribution: corretto - cache: gradle + distribution: temurin + + - name: Setup Gradle + uses: gradle/gradle-build-action@v2 - name: DistZip run: | From f5ec6f19de5e033e19a0a9fe63af354a86b394ed Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 14:02:29 +0100 Subject: [PATCH 21/29] pin version --- .github/workflows/kotlin-multiplatform.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 100ec80c..efbb6865 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -30,7 +30,7 @@ jobs: distribution: temurin - name: Setup Gradle - uses: gradle/gradle-build-action@v2 + uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a # pin@v2 - name: Apple build run: | @@ -52,7 +52,7 @@ jobs: distribution: temurin - name: Setup Gradle - uses: gradle/gradle-build-action@v2 + uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a # pin@v2 - name: JVM build run: | @@ -81,7 +81,7 @@ jobs: distribution: temurin - name: Setup Gradle - uses: gradle/gradle-build-action@v2 + uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a # pin@v2 - name: DistZip run: | From ccc784ef668f47832500150fd9c910f68e5589d1 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 14:11:17 +0100 Subject: [PATCH 22/29] cache gradle --- .github/workflows/kotlin-multiplatform.yml | 33 ++++++++++++++++++---- 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index efbb6865..a36fba18 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -29,8 +29,15 @@ jobs: java-version: 17 distribution: temurin - - name: Setup Gradle - uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a # pin@v2 + - name: Cache Gradle packages + uses: actions/cache@v2 + with: + path: | + ~/.gradle/caches + ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} + restore-keys: | + ${{ runner.os }}-gradle- - name: Apple build run: | @@ -51,8 +58,15 @@ jobs: java-version: 17 distribution: temurin - - name: Setup Gradle - uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a # pin@v2 + - name: Cache Gradle packages + uses: actions/cache@v2 + with: + path: | + ~/.gradle/caches + ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} + restore-keys: | + ${{ runner.os }}-gradle- - name: JVM build run: | @@ -80,8 +94,15 @@ jobs: java-version: 17 distribution: temurin - - name: Setup Gradle - uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a # pin@v2 + - name: Cache Gradle packages + uses: actions/cache@v2 + with: + path: | + ~/.gradle/caches + ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} + restore-keys: | + ${{ runner.os }}-gradle- - name: DistZip run: | From 73fce175b8847cec937d49fbce4ede4985f2cd10 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Fri, 10 Nov 2023 15:23:34 +0100 Subject: [PATCH 23/29] build apple samples --- .github/workflows/kotlin-multiplatform.yml | 27 +++++++++++++++++++++- Makefile | 1 + 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index a36fba18..88cd51b9 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -42,10 +42,35 @@ jobs: - name: Apple build run: | ./scripts/build-apple.sh sentry-kotlin-multiplatform - make buildAppleSamples env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} + build-apple-samples: + runs-on: macos-latest + + steps: + - uses: actions/checkout@v4 + + - name: JDK setup + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: temurin + + - name: Cache Gradle packages + uses: actions/cache@v2 + with: + path: | + ~/.gradle/caches + ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} + restore-keys: | + ${{ runner.os }}-gradle- + + - name: Apple build + run: | + make buildAppleSamples + build-jvm: runs-on: ubuntu-latest diff --git a/Makefile b/Makefile index e3398fd4..24324985 100644 --- a/Makefile +++ b/Makefile @@ -37,6 +37,7 @@ buildProject: # Build Apple Samples buildAppleSamples: + ./gradlew build -p sentry-samples cd ./sentry-samples/kmp-app-cocoapods/iosApp/iosApp && touch iosApp.xcconfig cd ./sentry-samples/kmp-app-spm/iosApp && touch iosApp.xcconfig cd ./sentry-samples/kmp-app-mvvm-di/iosApp && touch iosApp.xcconfig From eb63c735c918ef26af6358581fadb629e426348d Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Mon, 13 Nov 2023 10:21:23 +0100 Subject: [PATCH 24/29] don't build all samples --- Makefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/Makefile b/Makefile index 24324985..cad92b41 100644 --- a/Makefile +++ b/Makefile @@ -39,12 +39,10 @@ buildProject: buildAppleSamples: ./gradlew build -p sentry-samples cd ./sentry-samples/kmp-app-cocoapods/iosApp/iosApp && touch iosApp.xcconfig - cd ./sentry-samples/kmp-app-spm/iosApp && touch iosApp.xcconfig cd ./sentry-samples/kmp-app-mvvm-di/iosApp && touch iosApp.xcconfig sudo xcode-select --switch /Applications/Xcode.app && /usr/bin/xcodebuild -version cd ./sentry-samples/kmp-app-cocoapods/iosApp; pod install xcodebuild -workspace ./sentry-samples/kmp-app-cocoapods/iosApp/iosApp.xcworkspace -scheme iosApp -configuration Debug -sdk iphonesimulator -arch arm64 - xcodebuild -project ./sentry-samples/kmp-app-spm/iosApp.xcodeproj -scheme iosApp -configuration Debug -sdk iphonesimulator -arch arm64 xcodebuild -project ./sentry-samples/kmp-app-mvvm-di/iosApp.xcodeproj -scheme iosApp -configuration Debug -sdk iphonesimulator -arch arm64 From 7714e4cb0ca84ed7536743842944ddce278041a9 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Tue, 14 Nov 2023 00:24:59 +0100 Subject: [PATCH 25/29] Add konan cache --- .github/workflows/kotlin-multiplatform.yml | 59 ++++++++++------------ 1 file changed, 26 insertions(+), 33 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 88cd51b9..c9f4772e 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -29,15 +29,15 @@ jobs: java-version: 17 distribution: temurin - - name: Cache Gradle packages - uses: actions/cache@v2 + - name: Cached Konan + uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 #v3 with: - path: | - ~/.gradle/caches - ~/.gradle/wrapper - key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} - restore-keys: | - ${{ runner.os }}-gradle- + path: ~/.konan + key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} + restore-keys: ${{ runner.os }}-konan- + + - name: Cached Gradle + uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a - name: Apple build run: | @@ -57,15 +57,15 @@ jobs: java-version: 17 distribution: temurin - - name: Cache Gradle packages - uses: actions/cache@v2 + - name: Cached Konan + uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 #v3 with: - path: | - ~/.gradle/caches - ~/.gradle/wrapper - key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} - restore-keys: | - ${{ runner.os }}-gradle- + path: ~/.konan + key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} + restore-keys: ${{ runner.os }}-konan- + + - name: Cached Gradle + uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a - name: Apple build run: | @@ -83,15 +83,8 @@ jobs: java-version: 17 distribution: temurin - - name: Cache Gradle packages - uses: actions/cache@v2 - with: - path: | - ~/.gradle/caches - ~/.gradle/wrapper - key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} - restore-keys: | - ${{ runner.os }}-gradle- + - name: Cached Gradle + uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a - name: JVM build run: | @@ -119,15 +112,15 @@ jobs: java-version: 17 distribution: temurin - - name: Cache Gradle packages - uses: actions/cache@v2 + - name: Cached Konan + uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 #v3 with: - path: | - ~/.gradle/caches - ~/.gradle/wrapper - key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} - restore-keys: | - ${{ runner.os }}-gradle- + path: ~/.konan + key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} + restore-keys: ${{ runner.os }}-konan- + + - name: Cached Gradle + uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a - name: DistZip run: | From f944301b9d309fa04b05ae9f7d61d0777b590414 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Tue, 14 Nov 2023 00:25:21 +0100 Subject: [PATCH 26/29] Add konan cache --- .github/workflows/kotlin-multiplatform.yml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index c9f4772e..13be2013 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -112,13 +112,6 @@ jobs: java-version: 17 distribution: temurin - - name: Cached Konan - uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 #v3 - with: - path: ~/.konan - key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} - restore-keys: ${{ runner.os }}-konan- - - name: Cached Gradle uses: gradle/gradle-build-action@842c587ad8aa4c68eeba24c396e15af4c2e9f30a From 6a63accf4874105e1386b9c0d753c70043712b26 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Wed, 15 Nov 2023 13:15:08 +0100 Subject: [PATCH 27/29] try m1 runner --- .github/workflows/kotlin-multiplatform.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index 13be2013..b38fc8f5 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -18,7 +18,7 @@ jobs: access_token: ${{ github.token }} build-apple: - runs-on: macos-latest + runs-on: macos-latest-xlarge steps: - uses: actions/checkout@v4 @@ -46,7 +46,7 @@ jobs: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} build-apple-samples: - runs-on: macos-latest + runs-on: macos-latest-xlarge steps: - uses: actions/checkout@v4 @@ -101,7 +101,7 @@ jobs: name: sentry-kotlin-multiplatform archive-distribution: - runs-on: macos-latest + runs-on: macos-latest-xlarge steps: - uses: actions/checkout@v4 From 9a3d3f7b8ed3598a58f2a5f363f7fddb28f81901 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Wed, 15 Nov 2023 13:22:48 +0100 Subject: [PATCH 28/29] xlarge doesn't have android yet --- .github/workflows/kotlin-multiplatform.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index b38fc8f5..e95d088d 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -18,7 +18,7 @@ jobs: access_token: ${{ github.token }} build-apple: - runs-on: macos-latest-xlarge + runs-on: macos-latest-large steps: - uses: actions/checkout@v4 @@ -46,7 +46,7 @@ jobs: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} build-apple-samples: - runs-on: macos-latest-xlarge + runs-on: macos-latest-large steps: - uses: actions/checkout@v4 @@ -101,7 +101,7 @@ jobs: name: sentry-kotlin-multiplatform archive-distribution: - runs-on: macos-latest-xlarge + runs-on: macos-latest-large steps: - uses: actions/checkout@v4 From 2a54a8c702107a76b94dd6d490a5a360c14c91e2 Mon Sep 17 00:00:00 2001 From: GIancarlo Buenaflor Date: Thu, 30 Nov 2023 17:39:00 +0100 Subject: [PATCH 29/29] Update improvements --- .github/workflows/analyze.yml | 16 ++++++---------- .github/workflows/kotlin-multiplatform.yml | 12 ++++-------- 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/.github/workflows/analyze.yml b/.github/workflows/analyze.yml index 49e063ec..ee498dd0 100644 --- a/.github/workflows/analyze.yml +++ b/.github/workflows/analyze.yml @@ -7,18 +7,14 @@ on: pull_request: paths-ignore: - "**/*.md" + - +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: - cancel-previous-workflow: - runs-on: ubuntu-latest - steps: - - name: Cancel Previous Runs - uses: styfle/cancel-workflow-action@01ce38bf961b4e243a6342cbade0dbc8ba3f0432 # pin@0.12.0 - with: - access_token: ${{ github.token }} - analyze: - runs-on: macos-latest + runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -27,7 +23,7 @@ jobs: uses: actions/setup-java@v3 with: java-version: 17 - distribution: corretto + distribution: temurin - name: Analyze run: ./gradlew apiCheck detekt \ No newline at end of file diff --git a/.github/workflows/kotlin-multiplatform.yml b/.github/workflows/kotlin-multiplatform.yml index e95d088d..24b84a57 100644 --- a/.github/workflows/kotlin-multiplatform.yml +++ b/.github/workflows/kotlin-multiplatform.yml @@ -8,15 +8,11 @@ on: paths-ignore: - "**/*.md" -jobs: - cancel-previous-workflow: - runs-on: ubuntu-latest - steps: - - name: Cancel Previous Runs - uses: styfle/cancel-workflow-action@01ce38bf961b4e243a6342cbade0dbc8ba3f0432 # pin@0.12.0 - with: - access_token: ${{ github.token }} +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true +jobs: build-apple: runs-on: macos-latest-large