From d099f72398c8f70fcb1f40202e4e2dee0ed73874 Mon Sep 17 00:00:00 2001 From: Gerwin Kuijntjes Date: Thu, 2 Apr 2026 13:39:40 +0200 Subject: [PATCH] Fix Play Store workflow YAML syntax, extract version script Co-Authored-By: Claude Sonnet 4.6 --- .github/scripts/get_version_code.py | 17 +++++++++++++++++ .github/workflows/deploy-playstore.yml | 21 +-------------------- 2 files changed, 18 insertions(+), 20 deletions(-) create mode 100644 .github/scripts/get_version_code.py diff --git a/.github/scripts/get_version_code.py b/.github/scripts/get_version_code.py new file mode 100644 index 0000000..7aff29f --- /dev/null +++ b/.github/scripts/get_version_code.py @@ -0,0 +1,17 @@ +import json, os +from googleapiclient.discovery import build +from google.oauth2 import service_account + +creds = service_account.Credentials.from_service_account_info( + json.loads(os.environ['PLAY_SERVICE_ACCOUNT_JSON']), + scopes=['https://www.googleapis.com/auth/androidpublisher'] +) +service = build('androidpublisher', 'v3', credentials=creds) +edit = service.edits().insert(packageName='nl.resoftware.pocketgraph', body={}).execute() +bundles = service.edits().bundles().list( + packageName='nl.resoftware.pocketgraph', + editId=edit['id'] +).execute() +service.edits().delete(packageName='nl.resoftware.pocketgraph', editId=edit['id']).execute() +max_code = max([b['versionCode'] for b in bundles.get('bundles', [])], default=0) +print(max_code + 1) diff --git a/.github/workflows/deploy-playstore.yml b/.github/workflows/deploy-playstore.yml index eb8752b..2776647 100644 --- a/.github/workflows/deploy-playstore.yml +++ b/.github/workflows/deploy-playstore.yml @@ -42,26 +42,7 @@ jobs: PLAY_SERVICE_ACCOUNT_JSON: ${{ secrets.PLAY_SERVICE_ACCOUNT_JSON }} run: | pip install google-api-python-client google-auth --quiet - VERSION_CODE=$(python3 - <<'EOF' -import json, os -from googleapiclient.discovery import build -from google.oauth2 import service_account - -creds = service_account.Credentials.from_service_account_info( - json.loads(os.environ['PLAY_SERVICE_ACCOUNT_JSON']), - scopes=['https://www.googleapis.com/auth/androidpublisher'] -) -service = build('androidpublisher', 'v3', credentials=creds) -edit = service.edits().insert(packageName='nl.resoftware.pocketgraph', body={}).execute() -bundles = service.edits().bundles().list( - packageName='nl.resoftware.pocketgraph', - editId=edit['id'] -).execute() -service.edits().delete(packageName='nl.resoftware.pocketgraph', editId=edit['id']).execute() -max_code = max([b['versionCode'] for b in bundles.get('bundles', [])], default=0) -print(max_code + 1) -EOF - ) + VERSION_CODE=$(python3 .github/scripts/get_version_code.py) sed -i "s/android:versionCode=\"[^\"]*\"/android:versionCode=\"$VERSION_CODE\"/" \ Xamarin.Neo4j/Xamarin.Neo4j/Xamarin.Neo4j.Android/Properties/AndroidManifest.xml echo "version_code=$VERSION_CODE" >> $GITHUB_OUTPUT