From 35de66cb95898d4e8f4661a60fa0f6115e478936 Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 17 Jan 2024 14:53:47 -0500 Subject: [PATCH 01/36] match minSdk from sdk --- build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 8f268a7c..8cce2813 100644 --- a/build.gradle +++ b/build.gradle @@ -5,8 +5,8 @@ import org.jmailen.gradle.kotlinter.tasks.FormatTask buildscript { ext.modules = [ "sdkVersionCode" : 10000, - "sdkVersionName" : "1.0.0-alpha.00-SNAPSHOT", - "androidMinSdkVersion": 23, + "sdkVersionName" : "1.0.0-alpha.00", + "androidMinSdkVersion": 21, "androidTargetVersion": 34 ] } From 394fefbe3c179adf4ce011eee841dd3c9ffb3420 Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 17 Jan 2024 15:29:35 -0500 Subject: [PATCH 02/36] coverage report doesnt work on dispatch --- .github/workflows/release.yml | 2 +- .github/workflows/test-release.yml | 68 ++++++++++++++++++++++++++++++ 2 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/test-release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a683d14c..1c23ec26 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -9,7 +9,7 @@ jobs: uses: ./.github/workflows/lint.yml test: - uses: ./.github/workflows/test.yml + uses: ./.github/workflows/test-release.yml build: uses: ./.github/workflows/build.yml diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml new file mode 100644 index 00000000..27f1a832 --- /dev/null +++ b/.github/workflows/test-release.yml @@ -0,0 +1,68 @@ +name: Test +on: [pull_request, workflow_dispatch, workflow_call] + +concurrency: + group: test-${{ github.event.number }} + cancel-in-progress: true + +jobs: + test_unit: + name: Unit Tests + runs-on: ubuntu-latest + + steps: + - name: Checkout repo + uses: actions/checkout@v3 + + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'microsoft' + cache: gradle + + - name: Run Unit Tests + run: ./gradlew testReleaseUnitTest + continue-on-error: false + + test_unit_coverage: + name: Unit Tests Coverage + runs-on: ubuntu-latest + + steps: + - name: Checkout repo + uses: actions/checkout@v3 + + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + cache: gradle + + - name: Run Unit Tests Coverage + run: ./gradlew koverXmlReportDebug + + test_instrumentation: + name: Instrumentation Tests + runs-on: macos-latest + + steps: + - name: Checkout repo + uses: actions/checkout@v3 + + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + cache: gradle + + - name: Run Instrumentation Tests + uses: ReactiveCircus/android-emulator-runner@v2 + with: + api-level: 23 + target: google_apis + arch: x86_64 + script: ./gradlew connectedCheck --info + continue-on-error: true From b7865585c4572987074e31aba544e90927c2264f Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 17 Jan 2024 15:31:47 -0500 Subject: [PATCH 03/36] update name and on --- .github/workflows/test-release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml index 27f1a832..22bc8370 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/test-release.yml @@ -1,5 +1,5 @@ -name: Test -on: [pull_request, workflow_dispatch, workflow_call] +name: Test Release +on: [workflow_dispatch, workflow_call] concurrency: group: test-${{ github.event.number }} From b2b6316c5dee4c504ade0fd6076beda0da1d6981 Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 17 Jan 2024 15:51:35 -0500 Subject: [PATCH 04/36] comment out for now --- .github/workflows/release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1c23ec26..3965c2a7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -44,8 +44,8 @@ jobs: signing_key_file: ${{ secrets.SIGNING_KEY_FILE }} signing_file_path: ${{ env.SIGNING_KEY_FILE_PATH }} - - name: Install Semantic Release Dependencies - run: npm install + # - name: Install Semantic Release Dependencies + # run: npm install # TODO: update .releaserc.json with appropriate prepareCmd, successCmd, and assets # TODO: enable semantic-release once fixed From 8e14aaf613e99c64578a56d5740088dbc9fcc4a9 Mon Sep 17 00:00:00 2001 From: grablack Date: Mon, 12 Feb 2024 11:33:53 -0500 Subject: [PATCH 05/36] update distribution --- .github/workflows/test-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml index 22bc8370..8f0f2d1c 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/test-release.yml @@ -55,7 +55,7 @@ jobs: uses: actions/setup-java@v3 with: java-version: '17' - distribution: 'temurin' + distribution: 'microsoft' cache: gradle - name: Run Instrumentation Tests From f3118ba3b5e7fd9e1035009cc7ddb46b378989a1 Mon Sep 17 00:00:00 2001 From: grablack Date: Thu, 15 Feb 2024 15:27:01 -0500 Subject: [PATCH 06/36] restore sdkversion --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 8cce2813..a75f2764 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { ext.modules = [ "sdkVersionCode" : 10000, "sdkVersionName" : "1.0.0-alpha.00", - "androidMinSdkVersion": 21, + "androidMinSdkVersion": 23, "androidTargetVersion": 34 ] } From 2865222f449ca7909ac5a914b08a616c9bbbdcbd Mon Sep 17 00:00:00 2001 From: grablack Date: Thu, 22 Feb 2024 10:52:41 -0500 Subject: [PATCH 07/36] update version to snapshot on env var --- .github/workflows/release-snapshot.yml | 68 ++++++++++++++++++++++++++ build.gradle | 17 ++++++- 2 files changed, 83 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/release-snapshot.yml diff --git a/.github/workflows/release-snapshot.yml b/.github/workflows/release-snapshot.yml new file mode 100644 index 00000000..c69f6407 --- /dev/null +++ b/.github/workflows/release-snapshot.yml @@ -0,0 +1,68 @@ +name: Snapshot Release +on: + workflow_dispatch: {} +env: + SIGNING_KEY_FILE_PATH: /home/runner/secretKey.gpg + +jobs: + lint: + uses: ./.github/workflows/lint.yml + + test: + uses: ./.github/workflows/test-release.yml + + build: + uses: ./.github/workflows/build.yml + secrets: + SIGNING_KEY_FILE: ${{ secrets.SIGNING_KEY_FILE }} + SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }} + SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }} + + # after build and unit tests are finished, publish all modules at once + # to help reduce the probability of failure when interacting with sonatype servers + release: + name: Snapshot Release + needs: [lint, test, build] + runs-on: ubuntu-latest + steps: + - name: Checkout Repository + uses: actions/checkout@v3 + with: + # pulls all commits (needed for semantic release to correctly version) + fetch-depth: '0' + persist-credentials: false + + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'microsoft' + + - name: Decode Signing Key + uses: ./.github/actions/decode_signing_key_action + with: + signing_key_file: ${{ secrets.SIGNING_KEY_FILE }} + signing_file_path: ${{ env.SIGNING_KEY_FILE_PATH }} + + # - name: Install Semantic Release Dependencies + # run: npm install + + # TODO: update .releaserc.json with appropriate prepareCmd, successCmd, and assets + # TODO: enable semantic-release once fixed + # - name: GitHub Release + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # run: npx semantic-release@21 + + - name: Set Snapshot variable + id: set_var + run: echo "UPDATE_VERSION_SNAPSHOT=true" >> $GITHUB_ENV + + # - name: Publish to Maven + # uses: ./.github/actions/publish_all_modules + # with: + # sonatype_user: ${{ secrets.SONATYPE_SDKS_NEXUS_USERNAME }} + # sonatype_password: ${{ secrets.SONATYPE_SDKS_NEXUS_PASSWORD }} + # signing_key_id: ${{ secrets.SIGNING_KEY_ID }} + # signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} + # signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} diff --git a/build.gradle b/build.gradle index a75f2764..064d4f5d 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,6 @@ import org.jmailen.gradle.kotlinter.tasks.FormatTask buildscript { ext.modules = [ - "sdkVersionCode" : 10000, "sdkVersionName" : "1.0.0-alpha.00", "androidMinSdkVersion": 23, "androidTargetVersion": 34 @@ -34,7 +33,7 @@ tasks.register('ktFormat', FormatTask) { report = file('build/reports/ktlint/format-report.txt') } -version modules.sdkVersionName +// version modules.sdkVersionName nexusPublishing { repositories { @@ -54,3 +53,17 @@ nexusPublishing { subprojects { group = "com.paypal.messages" } + +// Additional configuration based on the GitHub Actions environment variable +val updateVariable = System.getenv("UPDATE_VERSION_SNAPSHOT") + +if (updateVariable != null && updateVariable.equals("true", ignoreCase = true)) { + android { + defaultConfig { + // Assume modules.sdkVersionName is a String variable + modules.sdkVersionName += "-SNAPSHOT" + } + } + + println(modules.sdkVersionName) +} \ No newline at end of file From 2a36833a19d7a107e135b68c389e4fe1ec30ca7f Mon Sep 17 00:00:00 2001 From: grablack Date: Thu, 22 Feb 2024 10:56:01 -0500 Subject: [PATCH 08/36] reorder --- build.gradle | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/build.gradle b/build.gradle index 064d4f5d..aaa5af48 100644 --- a/build.gradle +++ b/build.gradle @@ -54,16 +54,17 @@ subprojects { group = "com.paypal.messages" } -// Additional configuration based on the GitHub Actions environment variable -val updateVariable = System.getenv("UPDATE_VERSION_SNAPSHOT") -if (updateVariable != null && updateVariable.equals("true", ignoreCase = true)) { - android { - defaultConfig { +android { + defaultConfig { + // Additional configuration based on the GitHub Actions environment variable + val updateVariable = System.getenv("UPDATE_VERSION_SNAPSHOT") + + if (updateVariable != null && updateVariable.equals("true", ignoreCase = true)) { // Assume modules.sdkVersionName is a String variable modules.sdkVersionName += "-SNAPSHOT" + println(modules.sdkVersionName) } } - println(modules.sdkVersionName) } \ No newline at end of file From a59b211fae7e3e7d7bfba1c919dbfad70ffd9047 Mon Sep 17 00:00:00 2001 From: grablack Date: Thu, 22 Feb 2024 11:51:06 -0500 Subject: [PATCH 09/36] remove val --- build.gradle | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/build.gradle b/build.gradle index aaa5af48..2585e9c0 100644 --- a/build.gradle +++ b/build.gradle @@ -8,6 +8,15 @@ buildscript { "androidMinSdkVersion": 23, "androidTargetVersion": 34 ] + + // Additional configuration based on the GitHub Actions environment variable + + if (System.getenv("UPDATE_VERSION_SNAPSHOT") != null && System.getenv("UPDATE_VERSION_SNAPSHOT").equals("true", ignoreCase = true)) { + // Assume modules.sdkVersionName is a String variable + modules.sdkVersionName += "-SNAPSHOT" + } + println(modules.sdkVersionName) + } plugins { @@ -53,18 +62,3 @@ nexusPublishing { subprojects { group = "com.paypal.messages" } - - -android { - defaultConfig { - // Additional configuration based on the GitHub Actions environment variable - val updateVariable = System.getenv("UPDATE_VERSION_SNAPSHOT") - - if (updateVariable != null && updateVariable.equals("true", ignoreCase = true)) { - // Assume modules.sdkVersionName is a String variable - modules.sdkVersionName += "-SNAPSHOT" - println(modules.sdkVersionName) - } - } - -} \ No newline at end of file From 7788bee6142e6a873cb292448d6e68e0c4ab4b01 Mon Sep 17 00:00:00 2001 From: grablack Date: Fri, 23 Feb 2024 10:26:07 -0500 Subject: [PATCH 10/36] make snapshot main for now --- ...{release-snapshot.yml => release-full.yml} | 24 ++++++++----------- .github/workflows/release.yml | 24 +++++++++++-------- 2 files changed, 24 insertions(+), 24 deletions(-) rename .github/workflows/{release-snapshot.yml => release-full.yml} (72%) diff --git a/.github/workflows/release-snapshot.yml b/.github/workflows/release-full.yml similarity index 72% rename from .github/workflows/release-snapshot.yml rename to .github/workflows/release-full.yml index c69f6407..3965c2a7 100644 --- a/.github/workflows/release-snapshot.yml +++ b/.github/workflows/release-full.yml @@ -1,4 +1,4 @@ -name: Snapshot Release +name: Release on: workflow_dispatch: {} env: @@ -21,7 +21,7 @@ jobs: # after build and unit tests are finished, publish all modules at once # to help reduce the probability of failure when interacting with sonatype servers release: - name: Snapshot Release + name: Release needs: [lint, test, build] runs-on: ubuntu-latest steps: @@ -54,15 +54,11 @@ jobs: # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # run: npx semantic-release@21 - - name: Set Snapshot variable - id: set_var - run: echo "UPDATE_VERSION_SNAPSHOT=true" >> $GITHUB_ENV - - # - name: Publish to Maven - # uses: ./.github/actions/publish_all_modules - # with: - # sonatype_user: ${{ secrets.SONATYPE_SDKS_NEXUS_USERNAME }} - # sonatype_password: ${{ secrets.SONATYPE_SDKS_NEXUS_PASSWORD }} - # signing_key_id: ${{ secrets.SIGNING_KEY_ID }} - # signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} - # signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} + - name: Publish to Maven + uses: ./.github/actions/publish_all_modules + with: + sonatype_user: ${{ secrets.SONATYPE_NEXUS_USERNAME }} + sonatype_password: ${{ secrets.SONATYPE_NEXUS_PASSWORD }} + signing_key_id: ${{ secrets.SIGNING_KEY_ID }} + signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} + signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3965c2a7..c69f6407 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,4 +1,4 @@ -name: Release +name: Snapshot Release on: workflow_dispatch: {} env: @@ -21,7 +21,7 @@ jobs: # after build and unit tests are finished, publish all modules at once # to help reduce the probability of failure when interacting with sonatype servers release: - name: Release + name: Snapshot Release needs: [lint, test, build] runs-on: ubuntu-latest steps: @@ -54,11 +54,15 @@ jobs: # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # run: npx semantic-release@21 - - name: Publish to Maven - uses: ./.github/actions/publish_all_modules - with: - sonatype_user: ${{ secrets.SONATYPE_NEXUS_USERNAME }} - sonatype_password: ${{ secrets.SONATYPE_NEXUS_PASSWORD }} - signing_key_id: ${{ secrets.SIGNING_KEY_ID }} - signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} - signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} + - name: Set Snapshot variable + id: set_var + run: echo "UPDATE_VERSION_SNAPSHOT=true" >> $GITHUB_ENV + + # - name: Publish to Maven + # uses: ./.github/actions/publish_all_modules + # with: + # sonatype_user: ${{ secrets.SONATYPE_SDKS_NEXUS_USERNAME }} + # sonatype_password: ${{ secrets.SONATYPE_SDKS_NEXUS_PASSWORD }} + # signing_key_id: ${{ secrets.SIGNING_KEY_ID }} + # signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} + # signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} From 11df0805d3bc5cbf7ff433085005f0d709d2fe99 Mon Sep 17 00:00:00 2001 From: grablack Date: Fri, 23 Feb 2024 14:06:07 -0500 Subject: [PATCH 11/36] update to see if snapshot added --- build.gradle | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/build.gradle b/build.gradle index 2585e9c0..dfb77c29 100644 --- a/build.gradle +++ b/build.gradle @@ -15,6 +15,7 @@ buildscript { // Assume modules.sdkVersionName is a String variable modules.sdkVersionName += "-SNAPSHOT" } + println(modules.sdkVersionName) } @@ -62,3 +63,18 @@ nexusPublishing { subprojects { group = "com.paypal.messages" } + +tasks.register("echoVersion") { + group = "github" + description = "Echoes version used" + + doLast { + project.file(".github/workflows/release.yml").append( + """ + - name: Echo version + id: echo_version + run: echo ${modules.sdkVersionName} + """ + ) + } +} From 6c610b02a8deb182a78bcf3a12090e03b7870354 Mon Sep 17 00:00:00 2001 From: grablack Date: Fri, 1 Mar 2024 15:05:42 -0500 Subject: [PATCH 12/36] echo version --- ...release-full.yml => release-snapshots.yml} | 24 +++++++++++-------- .github/workflows/release.yml | 17 +++++++------ library/build.gradle | 5 ++-- 3 files changed, 26 insertions(+), 20 deletions(-) rename .github/workflows/{release-full.yml => release-snapshots.yml} (72%) diff --git a/.github/workflows/release-full.yml b/.github/workflows/release-snapshots.yml similarity index 72% rename from .github/workflows/release-full.yml rename to .github/workflows/release-snapshots.yml index 3965c2a7..c69f6407 100644 --- a/.github/workflows/release-full.yml +++ b/.github/workflows/release-snapshots.yml @@ -1,4 +1,4 @@ -name: Release +name: Snapshot Release on: workflow_dispatch: {} env: @@ -21,7 +21,7 @@ jobs: # after build and unit tests are finished, publish all modules at once # to help reduce the probability of failure when interacting with sonatype servers release: - name: Release + name: Snapshot Release needs: [lint, test, build] runs-on: ubuntu-latest steps: @@ -54,11 +54,15 @@ jobs: # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # run: npx semantic-release@21 - - name: Publish to Maven - uses: ./.github/actions/publish_all_modules - with: - sonatype_user: ${{ secrets.SONATYPE_NEXUS_USERNAME }} - sonatype_password: ${{ secrets.SONATYPE_NEXUS_PASSWORD }} - signing_key_id: ${{ secrets.SIGNING_KEY_ID }} - signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} - signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} + - name: Set Snapshot variable + id: set_var + run: echo "UPDATE_VERSION_SNAPSHOT=true" >> $GITHUB_ENV + + # - name: Publish to Maven + # uses: ./.github/actions/publish_all_modules + # with: + # sonatype_user: ${{ secrets.SONATYPE_SDKS_NEXUS_USERNAME }} + # sonatype_password: ${{ secrets.SONATYPE_SDKS_NEXUS_PASSWORD }} + # signing_key_id: ${{ secrets.SIGNING_KEY_ID }} + # signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} + # signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c69f6407..697bb305 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,4 +1,4 @@ -name: Snapshot Release +name: Release on: workflow_dispatch: {} env: @@ -21,7 +21,7 @@ jobs: # after build and unit tests are finished, publish all modules at once # to help reduce the probability of failure when interacting with sonatype servers release: - name: Snapshot Release + name: Release needs: [lint, test, build] runs-on: ubuntu-latest steps: @@ -54,15 +54,18 @@ jobs: # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # run: npx semantic-release@21 - - name: Set Snapshot variable - id: set_var - run: echo "UPDATE_VERSION_SNAPSHOT=true" >> $GITHUB_ENV + - name: Set env + run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV + - name: Test + run: | + echo $RELEASE_VERSION + echo ${{ env.RELEASE_VERSION }} # - name: Publish to Maven # uses: ./.github/actions/publish_all_modules # with: - # sonatype_user: ${{ secrets.SONATYPE_SDKS_NEXUS_USERNAME }} - # sonatype_password: ${{ secrets.SONATYPE_SDKS_NEXUS_PASSWORD }} + # sonatype_user: ${{ secrets.SONATYPE_NEXUS_USERNAME }} + # sonatype_password: ${{ secrets.SONATYPE_NEXUS_PASSWORD }} # signing_key_id: ${{ secrets.SIGNING_KEY_ID }} # signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} # signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} diff --git a/library/build.gradle b/library/build.gradle index b2460ce0..0b760392 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -14,8 +14,7 @@ android { minSdkVersion modules.androidMinSdkVersion targetSdkVersion modules.androidTargetVersion - versionCode modules.sdkVersionCode - versionName modules.sdkVersionName + versionName modules.sdkVersionName testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' testInstrumentationRunnerArguments clearPackageData: 'true' consumerProguardFiles 'consumer-rules.pro' @@ -130,7 +129,7 @@ dependencies { } project.ext.name = "paypal-messages" -project.ext.version = modules.sdkVersionName +project.ext.version = modules.sdkVersionName project.ext.pom_name = "PayPal Messages" project.ext.pom_desc = "The PayPal Android SDK Messages Module: Promote offers to your customers such as Pay Later and PayPal Credit." From d52b93c467429906ef8b3e6d7a20915a9c31df17 Mon Sep 17 00:00:00 2001 From: grablack Date: Fri, 1 Mar 2024 15:40:35 -0500 Subject: [PATCH 13/36] try get release version --- .github/workflows/release.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 697bb305..a03bf072 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -54,12 +54,14 @@ jobs: # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # run: npx semantic-release@21 - - name: Set env - run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV - - name: Test + - name: Get latest release + id: get_release run: | - echo $RELEASE_VERSION - echo ${{ env.RELEASE_VERSION }} + echo "::set-output name=release::${GITHUB_REF#refs/tags/}" + + - name: Echo Semantic Release Version + run: | + echo "Semantic Release Version: ${{ steps.get_release.outputs.release }}" # - name: Publish to Maven # uses: ./.github/actions/publish_all_modules From a39e20143dc439919012bdb2b0b19cde6a7c0e9b Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 6 Mar 2024 10:27:57 -0500 Subject: [PATCH 14/36] test semantic release integration --- .github/workflows/release-snapshots.yml | 39 ++++++++++++------------- .github/workflows/release.yml | 29 +++++++----------- build.gradle | 2 +- 3 files changed, 30 insertions(+), 40 deletions(-) diff --git a/.github/workflows/release-snapshots.yml b/.github/workflows/release-snapshots.yml index c69f6407..933f7195 100644 --- a/.github/workflows/release-snapshots.yml +++ b/.github/workflows/release-snapshots.yml @@ -44,25 +44,24 @@ jobs: signing_key_file: ${{ secrets.SIGNING_KEY_FILE }} signing_file_path: ${{ env.SIGNING_KEY_FILE_PATH }} - # - name: Install Semantic Release Dependencies - # run: npm install + - name: Install Semantic Release Dependencies + run: npm install - # TODO: update .releaserc.json with appropriate prepareCmd, successCmd, and assets - # TODO: enable semantic-release once fixed - # - name: GitHub Release - # env: - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # run: npx semantic-release@21 + - name: GitHub Release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SONATYPE_NEXUS_USERNAME: ${{ secrets.SONATYPE_NEXUS_USERNAME }} + SONATYPE_NEXUS_PASSWORD: ${{ secrets.SONATYPE_NEXUS_PASSWORD }} + SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }} + SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }} + SIGNING_KEY_FILE: ${{ env.SIGNING_KEY_FILE_PATH }} + run: npx semantic-release@21 - - name: Set Snapshot variable - id: set_var - run: echo "UPDATE_VERSION_SNAPSHOT=true" >> $GITHUB_ENV - - # - name: Publish to Maven - # uses: ./.github/actions/publish_all_modules - # with: - # sonatype_user: ${{ secrets.SONATYPE_SDKS_NEXUS_USERNAME }} - # sonatype_password: ${{ secrets.SONATYPE_SDKS_NEXUS_PASSWORD }} - # signing_key_id: ${{ secrets.SIGNING_KEY_ID }} - # signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} - # signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} + - name: Publish to Maven + uses: ./.github/actions/publish_all_modules + with: + sonatype_user: ${{ secrets.SONATYPE_SDKS_NEXUS_USERNAME }} + sonatype_password: ${{ secrets.SONATYPE_SDKS_NEXUS_PASSWORD }} + signing_key_id: ${{ secrets.SIGNING_KEY_ID }} + signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} + signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0aa4b8ef..8bd53442 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -44,8 +44,8 @@ jobs: signing_key_file: ${{ secrets.SIGNING_KEY_FILE }} signing_file_path: ${{ env.SIGNING_KEY_FILE_PATH }} - # - name: Install Semantic Release Dependencies - # run: npm install + - name: Install Semantic Release Dependencies + run: npm install - name: GitHub Release env: @@ -57,20 +57,11 @@ jobs: SIGNING_KEY_FILE: ${{ env.SIGNING_KEY_FILE_PATH }} run: npx semantic-release@21 - - name: Get latest release - id: get_release - run: | - echo "::set-output name=release::${GITHUB_REF#refs/tags/}" - - - name: Echo Semantic Release Version - run: | - echo "Semantic Release Version: ${{ steps.get_release.outputs.release }}" - - # - name: Publish to Maven - # uses: ./.github/actions/publish_all_modules - # with: - # sonatype_user: ${{ secrets.SONATYPE_NEXUS_USERNAME }} - # sonatype_password: ${{ secrets.SONATYPE_NEXUS_PASSWORD }} - # signing_key_id: ${{ secrets.SIGNING_KEY_ID }} - # signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} - # signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} + - name: Publish to Maven + uses: ./.github/actions/publish_all_modules + with: + sonatype_user: ${{ secrets.SONATYPE_NEXUS_USERNAME }} + sonatype_password: ${{ secrets.SONATYPE_NEXUS_PASSWORD }} + signing_key_id: ${{ secrets.SIGNING_KEY_ID }} + signing_key_password: ${{ secrets.SIGNING_KEY_PASSWORD }} + signing_key_file: ${{ env.SIGNING_KEY_FILE_PATH }} diff --git a/build.gradle b/build.gradle index 32c6acd9..bbe4011e 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ import org.jmailen.gradle.kotlinter.tasks.FormatTask buildscript { ext.modules = [ - "sdkVersionName" : "1.0.0-alpha.00", + "sdkVersionName" : "1.0.0-alpha.01-SNAPSHOT", "androidMinSdkVersion": 23, "androidTargetVersion": 34 ] From b7e827ca7ac793b1d44a823921a02dd3db3b65a7 Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 6 Mar 2024 11:25:34 -0500 Subject: [PATCH 15/36] snapshot param --- .github/workflows/release-snapshots.yml | 4 +++- .github/workflows/release.yml | 4 +++- build.gradle | 14 ++------------ 3 files changed, 8 insertions(+), 14 deletions(-) diff --git a/.github/workflows/release-snapshots.yml b/.github/workflows/release-snapshots.yml index 933f7195..0ee40aac 100644 --- a/.github/workflows/release-snapshots.yml +++ b/.github/workflows/release-snapshots.yml @@ -55,7 +55,9 @@ jobs: SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }} SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }} SIGNING_KEY_FILE: ${{ env.SIGNING_KEY_FILE_PATH }} - run: npx semantic-release@21 + run: | + npx semantic-release@21 + ./gradlew -PversionParam=0.0.1 -PsnapshotParam=-SNAPSHOT changeReleaseVersion - name: Publish to Maven uses: ./.github/actions/publish_all_modules diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 8bd53442..acf764e7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -55,7 +55,9 @@ jobs: SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }} SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }} SIGNING_KEY_FILE: ${{ env.SIGNING_KEY_FILE_PATH }} - run: npx semantic-release@21 + run: | + npx semantic-release@21 + ./gradlew -PversionParam=1.0.0-alpha.001 -PsnapshotParam=-SNAPSHOT changeReleaseVersion - name: Publish to Maven uses: ./.github/actions/publish_all_modules diff --git a/build.gradle b/build.gradle index bbe4011e..fdbf8cc4 100644 --- a/build.gradle +++ b/build.gradle @@ -8,16 +8,6 @@ buildscript { "androidMinSdkVersion": 23, "androidTargetVersion": 34 ] - - // Additional configuration based on the GitHub Actions environment variable - - if (System.getenv("UPDATE_VERSION_SNAPSHOT") != null && System.getenv("UPDATE_VERSION_SNAPSHOT").equals("true", ignoreCase = true)) { - // Assume modules.sdkVersionName is a String variable - modules.sdkVersionName += "-SNAPSHOT" - } - - println(modules.sdkVersionName) - } plugins { @@ -64,13 +54,13 @@ subprojects { group = "com.paypal.messages" } -//./gradlew -PversionParam=0.0.1 changeReleaseVersion +//./gradlew -PversionParam=0.0.1 -PsnapshotParam=-SNAPSHOT changeReleaseVersion tasks.register('changeReleaseVersion') { doLast { def topLevelGradleFile = file('./build.gradle') def topLevelGradleFileText = topLevelGradleFile.getText('UTF-8') def updatedScript = - topLevelGradleFileText.replaceFirst(/("sdkVersionName"\s*: )".*",/, '$1"' + versionParam + '",') + topLevelGradleFileText.replaceFirst(/("sdkVersionName"\s*: )".*",/, '$1"' + versionParam + snapshotParam + '",') topLevelGradleFile.write(updatedScript, 'UTF-8') } } From 8b012517ac1c17e81aec3df418af214fcc66e87a Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 6 Mar 2024 16:26:26 -0500 Subject: [PATCH 16/36] remove url --- gradle/gradle-publish.gradle | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index fbcb840c..6b4e4654 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -41,11 +41,11 @@ afterEvaluate { } } } - repositories { - maven { - url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") - } - } + // repositories { + // maven { + // url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") + // } + // } } signing { From 028306b4e7f520145e662c80769e40592a7ead3b Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 6 Mar 2024 16:44:53 -0500 Subject: [PATCH 17/36] update url based on version --- gradle/gradle-publish.gradle | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 6b4e4654..8431ed5a 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -41,11 +41,13 @@ afterEvaluate { } } } - // repositories { - // maven { - // url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") - // } - // } + repositories { + maven { + def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' + def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' + url = project.ext.version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + } + } } signing { From daabbcabe705efa577f4caf565814e12a05d8b09 Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 2 Apr 2024 13:37:24 -0400 Subject: [PATCH 18/36] doesn't have to end with snapshots --- gradle/gradle-publish.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 8431ed5a..1a423325 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -45,7 +45,7 @@ afterEvaluate { maven { def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' - url = project.ext.version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl } } } From b135cebbd2653514315f2fcf8fd020a9a1581110 Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 2 Apr 2024 14:02:56 -0400 Subject: [PATCH 19/36] try forcing snapshot url --- gradle/gradle-publish.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 1a423325..8cbebd75 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -45,7 +45,7 @@ afterEvaluate { maven { def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' - url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + url = snapshotsRepoUrl//project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl } } } From 6af18063d54d19dade6a4d93805cd22f664d4153 Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 2 Apr 2024 14:28:25 -0400 Subject: [PATCH 20/36] use uri --- gradle/gradle-publish.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 8cbebd75..08b10ca3 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -45,7 +45,7 @@ afterEvaluate { maven { def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' - url = snapshotsRepoUrl//project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + url = uri(snapshotsRepoUrl)//project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl } } } From 9184e21743d485a03a2389441e47ccddf128230e Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 2 Apr 2024 15:44:44 -0400 Subject: [PATCH 21/36] add version back --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index fdbf8cc4..c2b0940d 100644 --- a/build.gradle +++ b/build.gradle @@ -33,7 +33,7 @@ tasks.register('ktFormat', FormatTask) { report = file('build/reports/ktlint/format-report.txt') } -// version modules.sdkVersionName +version modules.sdkVersionName nexusPublishing { repositories { From 0185cd4ac76c026a2765e0850c50ca2cb50e25ea Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 2 Apr 2024 16:44:43 -0400 Subject: [PATCH 22/36] add input to append snapshot string --- .github/actions/publish_all_modules/action.yml | 1 + .github/workflows/release-snapshots.yml | 7 +++---- .github/workflows/{test-release.yml => release-test.yml} | 2 +- .github/workflows/release.yml | 6 ++---- build.gradle | 4 ++-- gradle/gradle-publish.gradle | 6 +++++- 6 files changed, 14 insertions(+), 12 deletions(-) rename .github/workflows/{test-release.yml => release-test.yml} (97%) diff --git a/.github/actions/publish_all_modules/action.yml b/.github/actions/publish_all_modules/action.yml index 453e917d..8cb5c4c1 100644 --- a/.github/actions/publish_all_modules/action.yml +++ b/.github/actions/publish_all_modules/action.yml @@ -28,6 +28,7 @@ runs: ./gradlew --stacktrace clean publishToSonatype closeAndReleaseSonatypeStagingRepository shell: bash env: + RELEASE_SNAPSHOT: ${{ inputs.release_snapshot }} SONATYPE_NEXUS_USERNAME: ${{ inputs.sonatype_user }} SONATYPE_NEXUS_PASSWORD: ${{ inputs.sonatype_password }} SIGNING_KEY_ID: ${{ inputs.signing_key_id }} diff --git a/.github/workflows/release-snapshots.yml b/.github/workflows/release-snapshots.yml index 0ee40aac..8c770bb0 100644 --- a/.github/workflows/release-snapshots.yml +++ b/.github/workflows/release-snapshots.yml @@ -9,7 +9,7 @@ jobs: uses: ./.github/workflows/lint.yml test: - uses: ./.github/workflows/test-release.yml + uses: ./.github/workflows/release-test.yml build: uses: ./.github/workflows/build.yml @@ -55,13 +55,12 @@ jobs: SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }} SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }} SIGNING_KEY_FILE: ${{ env.SIGNING_KEY_FILE_PATH }} - run: | - npx semantic-release@21 - ./gradlew -PversionParam=0.0.1 -PsnapshotParam=-SNAPSHOT changeReleaseVersion + run: npx semantic-release@21 - name: Publish to Maven uses: ./.github/actions/publish_all_modules with: + release_snapshot: "true" sonatype_user: ${{ secrets.SONATYPE_SDKS_NEXUS_USERNAME }} sonatype_password: ${{ secrets.SONATYPE_SDKS_NEXUS_PASSWORD }} signing_key_id: ${{ secrets.SIGNING_KEY_ID }} diff --git a/.github/workflows/test-release.yml b/.github/workflows/release-test.yml similarity index 97% rename from .github/workflows/test-release.yml rename to .github/workflows/release-test.yml index 8f0f2d1c..aef9004e 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/release-test.yml @@ -37,7 +37,7 @@ jobs: uses: actions/setup-java@v3 with: java-version: '17' - distribution: 'temurin' + distribution: 'microsoft' cache: gradle - name: Run Unit Tests Coverage diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index acf764e7..d02cc07e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -9,7 +9,7 @@ jobs: uses: ./.github/workflows/lint.yml test: - uses: ./.github/workflows/test-release.yml + uses: ./.github/workflows/release-test.yml build: uses: ./.github/workflows/build.yml @@ -55,9 +55,7 @@ jobs: SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }} SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }} SIGNING_KEY_FILE: ${{ env.SIGNING_KEY_FILE_PATH }} - run: | - npx semantic-release@21 - ./gradlew -PversionParam=1.0.0-alpha.001 -PsnapshotParam=-SNAPSHOT changeReleaseVersion + run: npx semantic-release@21 - name: Publish to Maven uses: ./.github/actions/publish_all_modules diff --git a/build.gradle b/build.gradle index c2b0940d..e849fecd 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ import org.jmailen.gradle.kotlinter.tasks.FormatTask buildscript { ext.modules = [ - "sdkVersionName" : "1.0.0-alpha.01-SNAPSHOT", + "sdkVersionName" : "1.0.0-alpha.01", "androidMinSdkVersion": 23, "androidTargetVersion": 34 ] @@ -60,7 +60,7 @@ tasks.register('changeReleaseVersion') { def topLevelGradleFile = file('./build.gradle') def topLevelGradleFileText = topLevelGradleFile.getText('UTF-8') def updatedScript = - topLevelGradleFileText.replaceFirst(/("sdkVersionName"\s*: )".*",/, '$1"' + versionParam + snapshotParam + '",') + topLevelGradleFileText.replaceFirst(/("sdkVersionName"\s*: )".*",/, '$1"' + versionParam + '",') topLevelGradleFile.write(updatedScript, 'UTF-8') } } diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 08b10ca3..e8522d17 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -6,6 +6,10 @@ ext["signing.keyId"] = System.getenv('SIGNING_KEY_ID') ?: '' ext["signing.password"] = System.getenv('SIGNING_KEY_PASSWORD') ?: '' ext["signing.secretKeyRingFile"] = System.getenv('SIGNING_KEY_FILE') ?: '' +if (System.getenv('RELEASE_SNAPSHOT') == "true") { + project.ext.version = project.ext.version + "-SNAPSHOT" +} + afterEvaluate { publishing { publications { @@ -45,7 +49,7 @@ afterEvaluate { maven { def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' - url = uri(snapshotsRepoUrl)//project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl } } } From 8145f0eca5d7c7a4e99af42a81afc64453f34e2f Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 2 Apr 2024 16:47:30 -0400 Subject: [PATCH 23/36] remove unused param --- build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index e849fecd..aa30ecf3 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ import org.jmailen.gradle.kotlinter.tasks.FormatTask buildscript { ext.modules = [ - "sdkVersionName" : "1.0.0-alpha.01", + "sdkVersionName" : "1.0.0-alpha.02", "androidMinSdkVersion": 23, "androidTargetVersion": 34 ] @@ -54,7 +54,7 @@ subprojects { group = "com.paypal.messages" } -//./gradlew -PversionParam=0.0.1 -PsnapshotParam=-SNAPSHOT changeReleaseVersion +//./gradlew -PversionParam=0.0.1 changeReleaseVersion tasks.register('changeReleaseVersion') { doLast { def topLevelGradleFile = file('./build.gradle') From 0eb4f4c27148f4afe6177fd2f85ba6eaa0fb9152 Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 2 Apr 2024 16:50:58 -0400 Subject: [PATCH 24/36] use release workflow for testing --- .github/workflows/release.yml | 1 + gradle/gradle-publish.gradle | 14 +++++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d02cc07e..e4dfca72 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -60,6 +60,7 @@ jobs: - name: Publish to Maven uses: ./.github/actions/publish_all_modules with: + release_snapshot: "true" sonatype_user: ${{ secrets.SONATYPE_NEXUS_USERNAME }} sonatype_password: ${{ secrets.SONATYPE_NEXUS_PASSWORD }} signing_key_id: ${{ secrets.SIGNING_KEY_ID }} diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index e8522d17..dbe5442d 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -45,13 +45,13 @@ afterEvaluate { } } } - repositories { - maven { - def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' - def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' - url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl - } - } + // repositories { + // maven { + // def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' + // def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' + // url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + // } + // } } signing { From 829e1a0b2b040b58099b3ea515daead8de5eb40e Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 2 Apr 2024 17:06:15 -0400 Subject: [PATCH 25/36] pass just 1 url --- gradle/gradle-publish.gradle | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index dbe5442d..12019ca6 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -45,13 +45,14 @@ afterEvaluate { } } } - // repositories { - // maven { + repositories { + maven { // def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' // def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' // url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl - // } - // } + url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") + } + } } signing { From 28c4deb8764fe007e94dd780997f8767a03649fc Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 3 Apr 2024 09:12:18 -0400 Subject: [PATCH 26/36] add urls back --- gradle/gradle-publish.gradle | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 12019ca6..4cfd702c 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -46,12 +46,11 @@ afterEvaluate { } } repositories { - maven { - // def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' - // def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' - // url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl - url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") - } + maven { + def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' + def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' + url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + } } } From 31392a79c8f4112af069af5eb18507a78e70f40b Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 3 Apr 2024 09:51:26 -0400 Subject: [PATCH 27/36] add to expected input --- .github/actions/publish_all_modules/action.yml | 4 ++++ gradle/gradle-publish.gradle | 11 ++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/actions/publish_all_modules/action.yml b/.github/actions/publish_all_modules/action.yml index 8cb5c4c1..fb4a1947 100644 --- a/.github/actions/publish_all_modules/action.yml +++ b/.github/actions/publish_all_modules/action.yml @@ -1,6 +1,10 @@ name: 'Publish All Modules' description: 'Publishes all modules' inputs: + release_snapshot: + description: 'Append Snapshot to version' + required: false + default: '' sonatype_user: description: 'Sonatype user' required: true diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 4cfd702c..12019ca6 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -46,11 +46,12 @@ afterEvaluate { } } repositories { - maven { - def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' - def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' - url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl - } + maven { + // def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' + // def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' + // url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") + } } } From d01ff1051a749b350aae3ee557c7f1856d94b58b Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 3 Apr 2024 10:13:41 -0400 Subject: [PATCH 28/36] force url --- gradle/gradle-publish.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 12019ca6..78529151 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -48,9 +48,9 @@ afterEvaluate { repositories { maven { // def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' - // def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' + def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' // url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl - url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") + url = uri(snapshotsRepoUrl) } } } From 2647457215c35ee3b0029a3c453c5b9e3fb86afa Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 3 Apr 2024 11:18:52 -0400 Subject: [PATCH 29/36] add variable and update task --- .github/actions/publish_all_modules/action.yml | 5 ----- .github/workflows/release-snapshots.yml | 4 +++- .github/workflows/release.yml | 4 +++- .releaserc.json | 3 ++- build.gradle | 5 ++++- gradle/gradle-publish.gradle | 11 ++++------- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/actions/publish_all_modules/action.yml b/.github/actions/publish_all_modules/action.yml index fb4a1947..453e917d 100644 --- a/.github/actions/publish_all_modules/action.yml +++ b/.github/actions/publish_all_modules/action.yml @@ -1,10 +1,6 @@ name: 'Publish All Modules' description: 'Publishes all modules' inputs: - release_snapshot: - description: 'Append Snapshot to version' - required: false - default: '' sonatype_user: description: 'Sonatype user' required: true @@ -32,7 +28,6 @@ runs: ./gradlew --stacktrace clean publishToSonatype closeAndReleaseSonatypeStagingRepository shell: bash env: - RELEASE_SNAPSHOT: ${{ inputs.release_snapshot }} SONATYPE_NEXUS_USERNAME: ${{ inputs.sonatype_user }} SONATYPE_NEXUS_PASSWORD: ${{ inputs.sonatype_password }} SIGNING_KEY_ID: ${{ inputs.signing_key_id }} diff --git a/.github/workflows/release-snapshots.yml b/.github/workflows/release-snapshots.yml index 8c770bb0..482ddd3f 100644 --- a/.github/workflows/release-snapshots.yml +++ b/.github/workflows/release-snapshots.yml @@ -44,6 +44,9 @@ jobs: signing_key_file: ${{ secrets.SIGNING_KEY_FILE }} signing_file_path: ${{ env.SIGNING_KEY_FILE_PATH }} + - name: Set snapshot environment variable + run: echo "USE_SNAPSHOT=true" >> $GITHUB_ENV + - name: Install Semantic Release Dependencies run: npm install @@ -60,7 +63,6 @@ jobs: - name: Publish to Maven uses: ./.github/actions/publish_all_modules with: - release_snapshot: "true" sonatype_user: ${{ secrets.SONATYPE_SDKS_NEXUS_USERNAME }} sonatype_password: ${{ secrets.SONATYPE_SDKS_NEXUS_PASSWORD }} signing_key_id: ${{ secrets.SIGNING_KEY_ID }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e4dfca72..1194246b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -44,6 +44,9 @@ jobs: signing_key_file: ${{ secrets.SIGNING_KEY_FILE }} signing_file_path: ${{ env.SIGNING_KEY_FILE_PATH }} + - name: Set snapshot environment variable + run: echo "USE_SNAPSHOT=true" >> $GITHUB_ENV + - name: Install Semantic Release Dependencies run: npm install @@ -60,7 +63,6 @@ jobs: - name: Publish to Maven uses: ./.github/actions/publish_all_modules with: - release_snapshot: "true" sonatype_user: ${{ secrets.SONATYPE_NEXUS_USERNAME }} sonatype_password: ${{ secrets.SONATYPE_NEXUS_PASSWORD }} signing_key_id: ${{ secrets.SIGNING_KEY_ID }} diff --git a/.releaserc.json b/.releaserc.json index a9fa37ec..a758cb48 100644 --- a/.releaserc.json +++ b/.releaserc.json @@ -2,7 +2,8 @@ "branches": [ "release", {"name": "develop", "prerelease": true}, - {"name": "prerelease", "prerelease": true} + {"name": "prerelease", "prerelease": true}, + {"name": "minSdkMatch", "prerelease": true} ], "tagFormat": "${version}", "plugins": [ diff --git a/build.gradle b/build.gradle index aa30ecf3..1ffb1b05 100644 --- a/build.gradle +++ b/build.gradle @@ -59,8 +59,11 @@ tasks.register('changeReleaseVersion') { doLast { def topLevelGradleFile = file('./build.gradle') def topLevelGradleFileText = topLevelGradleFile.getText('UTF-8') + def useSnapshot = System.getenv('USE_SNAPSHOT') + def snapshotParam = useSnapshot == 'true' ? "-SNAPSHOT" : "" + def updatedScript = - topLevelGradleFileText.replaceFirst(/("sdkVersionName"\s*: )".*",/, '$1"' + versionParam + '",') + topLevelGradleFileText.replaceFirst(/("sdkVersionName"\s*: )".*",/, '$1"' + versionParam + snapshotParam + '",') topLevelGradleFile.write(updatedScript, 'UTF-8') } } diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 78529151..d59a4d86 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -6,9 +6,6 @@ ext["signing.keyId"] = System.getenv('SIGNING_KEY_ID') ?: '' ext["signing.password"] = System.getenv('SIGNING_KEY_PASSWORD') ?: '' ext["signing.secretKeyRingFile"] = System.getenv('SIGNING_KEY_FILE') ?: '' -if (System.getenv('RELEASE_SNAPSHOT') == "true") { - project.ext.version = project.ext.version + "-SNAPSHOT" -} afterEvaluate { publishing { @@ -47,10 +44,10 @@ afterEvaluate { } repositories { maven { - // def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' - def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' - // url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl - url = uri(snapshotsRepoUrl) + // def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' + // def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' + // url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") } } } From 3a2d051f2898734f30f4a19ec958c47796db6f70 Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 3 Apr 2024 11:46:51 -0400 Subject: [PATCH 30/36] remove commented out code --- .releaserc.json | 3 +-- gradle/gradle-publish.gradle | 7 ++----- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/.releaserc.json b/.releaserc.json index a758cb48..a9fa37ec 100644 --- a/.releaserc.json +++ b/.releaserc.json @@ -2,8 +2,7 @@ "branches": [ "release", {"name": "develop", "prerelease": true}, - {"name": "prerelease", "prerelease": true}, - {"name": "minSdkMatch", "prerelease": true} + {"name": "prerelease", "prerelease": true} ], "tagFormat": "${version}", "plugins": [ diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index d59a4d86..008e37c1 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -43,12 +43,9 @@ afterEvaluate { } } repositories { - maven { - // def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/' - // def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots/' - // url = project.ext.version.contains('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl + maven { url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") - } + } } } From 5338f478c05693062711429a4d952a63ed60cac0 Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 3 Apr 2024 11:51:11 -0400 Subject: [PATCH 31/36] remove change --- gradle/gradle-publish.gradle | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 008e37c1..03e1e9ba 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -1,7 +1,6 @@ apply plugin: 'maven-publish' apply plugin: 'signing' - ext["signing.keyId"] = System.getenv('SIGNING_KEY_ID') ?: '' ext["signing.password"] = System.getenv('SIGNING_KEY_PASSWORD') ?: '' ext["signing.secretKeyRingFile"] = System.getenv('SIGNING_KEY_FILE') ?: '' @@ -43,9 +42,9 @@ afterEvaluate { } } repositories { - maven { - url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") - } + maven { + url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") + } } } From c7acf1c5e9b7cb6836d842f6e583810208fd998e Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 3 Apr 2024 13:44:33 -0400 Subject: [PATCH 32/36] should check for a boolean instead --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 1ffb1b05..8fd985ce 100644 --- a/build.gradle +++ b/build.gradle @@ -60,7 +60,7 @@ tasks.register('changeReleaseVersion') { def topLevelGradleFile = file('./build.gradle') def topLevelGradleFileText = topLevelGradleFile.getText('UTF-8') def useSnapshot = System.getenv('USE_SNAPSHOT') - def snapshotParam = useSnapshot == 'true' ? "-SNAPSHOT" : "" + def snapshotParam = useSnapshot == true ? "-SNAPSHOT" : "" def updatedScript = topLevelGradleFileText.replaceFirst(/("sdkVersionName"\s*: )".*",/, '$1"' + versionParam + snapshotParam + '",') From 92f7bae2477c160fd9f4d2f5b20b0bd04449cdf9 Mon Sep 17 00:00:00 2001 From: grablack Date: Wed, 3 Apr 2024 14:29:45 -0400 Subject: [PATCH 33/36] check boolean and string --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 8fd985ce..f8cfc8e6 100644 --- a/build.gradle +++ b/build.gradle @@ -60,7 +60,7 @@ tasks.register('changeReleaseVersion') { def topLevelGradleFile = file('./build.gradle') def topLevelGradleFileText = topLevelGradleFile.getText('UTF-8') def useSnapshot = System.getenv('USE_SNAPSHOT') - def snapshotParam = useSnapshot == true ? "-SNAPSHOT" : "" + def snapshotParam = useSnapshot == "true" || useSnapshot == true ? "-SNAPSHOT" : "" def updatedScript = topLevelGradleFileText.replaceFirst(/("sdkVersionName"\s*: )".*",/, '$1"' + versionParam + snapshotParam + '",') From cd2f10e21a162146afb200c6c62028bad6e300ef Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 9 Apr 2024 15:19:57 -0400 Subject: [PATCH 34/36] try different version --- .github/workflows/release.yml | 2 +- build.gradle | 2 +- gradle/gradle-publish.gradle | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1194246b..e0b2f325 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -45,7 +45,7 @@ jobs: signing_file_path: ${{ env.SIGNING_KEY_FILE_PATH }} - name: Set snapshot environment variable - run: echo "USE_SNAPSHOT=true" >> $GITHUB_ENV + run: echo "USE_SNAPSHOT=false" >> $GITHUB_ENV - name: Install Semantic Release Dependencies run: npm install diff --git a/build.gradle b/build.gradle index f8cfc8e6..225a84a7 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ import org.jmailen.gradle.kotlinter.tasks.FormatTask buildscript { ext.modules = [ - "sdkVersionName" : "1.0.0-alpha.02", + "sdkVersionName" : "1.0.0-alpha.03", "androidMinSdkVersion": 23, "androidTargetVersion": 34 ] diff --git a/gradle/gradle-publish.gradle b/gradle/gradle-publish.gradle index 03e1e9ba..b16b78f4 100644 --- a/gradle/gradle-publish.gradle +++ b/gradle/gradle-publish.gradle @@ -1,11 +1,11 @@ apply plugin: 'maven-publish' apply plugin: 'signing' + ext["signing.keyId"] = System.getenv('SIGNING_KEY_ID') ?: '' ext["signing.password"] = System.getenv('SIGNING_KEY_PASSWORD') ?: '' ext["signing.secretKeyRingFile"] = System.getenv('SIGNING_KEY_FILE') ?: '' - afterEvaluate { publishing { publications { @@ -42,9 +42,9 @@ afterEvaluate { } } repositories { - maven { - url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") - } + maven { + url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") + } } } From 1ca7b8ab6c97d5919c178c48c10f5ccd1b5ffc41 Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 9 Apr 2024 15:22:36 -0400 Subject: [PATCH 35/36] keep using snapshots --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e0b2f325..1194246b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -45,7 +45,7 @@ jobs: signing_file_path: ${{ env.SIGNING_KEY_FILE_PATH }} - name: Set snapshot environment variable - run: echo "USE_SNAPSHOT=false" >> $GITHUB_ENV + run: echo "USE_SNAPSHOT=true" >> $GITHUB_ENV - name: Install Semantic Release Dependencies run: npm install From 37161c8b86e7fb3019723280c89824ce0d784049 Mon Sep 17 00:00:00 2001 From: grablack Date: Tue, 9 Apr 2024 15:40:10 -0400 Subject: [PATCH 36/36] make release false again --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1194246b..e0b2f325 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -45,7 +45,7 @@ jobs: signing_file_path: ${{ env.SIGNING_KEY_FILE_PATH }} - name: Set snapshot environment variable - run: echo "USE_SNAPSHOT=true" >> $GITHUB_ENV + run: echo "USE_SNAPSHOT=false" >> $GITHUB_ENV - name: Install Semantic Release Dependencies run: npm install