diff --git a/.github/workflows/netcetera-update.yml b/.github/workflows/netcetera-update.yml new file mode 100644 index 000000000..01ee0c82f --- /dev/null +++ b/.github/workflows/netcetera-update.yml @@ -0,0 +1,44 @@ +name: Netcetera Update - Create Pull Request +on: + workflow_dispatch: + inputs: + url: + description: 'AAR URL' + required: true + type: string + version: + description: 'Version' + required: true + type: string + +permissions: + contents: read + +jobs: + netcetera-update: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Download & Unpack + run: | + chmod +x ./netcetera-3ds-core/scripts/download-and-unpack.sh + ./netcetera-3ds-core/scripts/download-and-unpack.sh "${{ inputs.url }}" + + - name: Update Version + run: | + source netcetera-3ds-core/scripts/update-version.sh "${{ inputs.version }}" + echo "UPDATED_VERSION=$(cat netcetera-3ds-core/version.resolved)" >> $GITHUB_ENV + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v5.0.0 + with: + token: ${{ secrets.PO_GITHUB_TOKEN }} + add-paths: | + version.resolved + commit-message: Update Netcetera + branch: chore/netcetera-update-${{ env.UPDATED_VERSION }} + delete-branch: true + title: 'chore: Update Netcetera to ${{ env.UPDATED_VERSION }}' + assignees: ${{ github.actor }} diff --git a/build.gradle b/build.gradle index 88d1be586..b4327ebbf 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ import org.jetbrains.kotlin.gradle.dsl.KotlinAndroidProjectExtension buildscript { ext { - androidGradlePluginVersion = '8.13.0' + androidGradlePluginVersion = '8.13.1' kotlinVersion = '2.1.20' kspVersion = '2.1.20-1.0.32' dokkaVersion = '1.9.20' diff --git a/netcetera-3ds-core/build.gradle b/netcetera-3ds-core/build.gradle index 27d85fdea..b8a9a1a63 100644 --- a/netcetera-3ds-core/build.gradle +++ b/netcetera-3ds-core/build.gradle @@ -9,7 +9,7 @@ plugins { ext { publishArtifactId = 'processout-android-netcetera-3ds-core' - publishVersion = rootProject.ext.netcetera3dsSdkVersion + publishVersion = file('version.resolved').getText().trim() publishDescription = 'ProcessOut Android SDK - Netcetera 3DS Core' } diff --git a/netcetera-3ds-core/scripts/download-and-unpack.sh b/netcetera-3ds-core/scripts/download-and-unpack.sh new file mode 100755 index 000000000..f977a9752 --- /dev/null +++ b/netcetera-3ds-core/scripts/download-and-unpack.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +if [ -z "$1" ]; then + echo "Usage: $0 " + exit 1 +fi + +URL="$1" +FILENAME=$(basename "$URL") +FOLDER="${FILENAME%.*}" + +if curl -L "$URL" -o "$FILENAME"; then + echo "Downloaded $FILENAME successfully." +else + echo "Failed to download: $URL" + exit 1 +fi + +unzip "$FILENAME" -d "$FOLDER" + +echo "------ root" +ls -1 +echo "------ sdk" +ls -1 "$FOLDER" diff --git a/netcetera-3ds-core/scripts/update-version.sh b/netcetera-3ds-core/scripts/update-version.sh new file mode 100755 index 000000000..55528f487 --- /dev/null +++ b/netcetera-3ds-core/scripts/update-version.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +if [ -z "$1" ]; then + echo "Usage: $0 " + exit 1 +fi + +echo -n "$1" > netcetera-3ds-core/version.resolved diff --git a/netcetera-3ds-core/version.resolved b/netcetera-3ds-core/version.resolved new file mode 100644 index 000000000..df3c0e4e7 --- /dev/null +++ b/netcetera-3ds-core/version.resolved @@ -0,0 +1 @@ +2.5.3.1 \ No newline at end of file