Skip to content

Commit 558dc39

Browse files
nqmgamingclaude
andcommitted
ci: keep GitHub release when Play Store upload fails; attach AAB
- Mark the fastlane step continue-on-error so a Play policy rejection (e.g. scoped storage declaration) no longer blocks publishing the signed APK + AAB to the GitHub release. - Attach the release AAB alongside the APK. - Override R8 to 8.13.19 so Kotlin 2.3 metadata parses cleanly under AGP 8.11.2. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent d03076f commit 558dc39

2 files changed

Lines changed: 21 additions & 2 deletions

File tree

.github/workflows/publish-release.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,12 @@ jobs:
6666
- name: Grant execute permission
6767
run: chmod +x gradlew
6868

69+
# Play Store upload is allowed to fail (e.g. metadata/changelog/permission policy
70+
# rejection) without blocking the GitHub release — we still want the signed artifacts
71+
# published so users on side-load tracks can grab them.
6972
- name: Deploy to internal track
73+
id: play_store
74+
continue-on-error: true
7075
run: bundle exec fastlane internal
7176

7277
- name: Build release APK
@@ -82,13 +87,16 @@ jobs:
8287
app/build/outputs/apk/release/app-release.apk
8388
retention-days: 30
8489

85-
# Upload assets to existing GitHub Release (or create if missing)
90+
# Upload assets to existing GitHub Release (or create if missing). Both APK and AAB
91+
# are attached so users can grab the bundle for manual testing / sideload.
8692
- name: Create GitHub Release
8793
id: create_release
8894
uses: softprops/action-gh-release@v1
8995
with:
9096
name: ${{ env.VERSION_NAME }}
9197
draft: false
9298
prerelease: false
93-
files: app/build/outputs/apk/release/app-release.apk
99+
files: |
100+
app/build/outputs/apk/release/app-release.apk
101+
app/build/outputs/bundle/release/app-release.aab
94102
token: ${{ secrets.GITHUB_TOKEN }}

build.gradle.kts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,15 @@
11
// Top-level build file where you can add configuration options common to all sub-projects/modules.
2+
3+
// AGP 8.11.2 ships with an older R8 that doesn't recognize Kotlin 2.3 metadata. Override
4+
// to R8 8.13.19 (minimum version supporting Kotlin 2.3 per
5+
// https://developer.android.com/studio/build/kotlin-d8-r8-versions). Drop this block when we
6+
// upgrade AGP to a version whose bundled R8 already supports the Kotlin in use.
7+
buildscript {
8+
dependencies {
9+
classpath("com.android.tools:r8:8.13.19")
10+
}
11+
}
12+
213
plugins {
314
alias(libs.plugins.android.application) apply false
415
alias(libs.plugins.kotlin.android) apply false

0 commit comments

Comments
 (0)