Skip to content

Signed release APK and Google Play internal track upload - #108

Merged
diegurrio merged 1 commit into
mainfrom
feature/android-play-upload
Aug 16, 2026
Merged

Signed release APK and Google Play internal track upload#108
diegurrio merged 1 commit into
mainfrom
feature/android-play-upload

Conversation

@diegurrio

@diegurrio diegurrio commented Aug 16, 2026

Copy link
Copy Markdown
Collaborator

Second half of #106, stacked on #107 (needs to be merged first; its base is that branch, so this diff shows only its own changes).

Changes to release.yml:

  • The android-apk job becomes android and now decodes the upload keystore from ANDROID_UPLOAD_KEYSTORE_BASE64, builds assembleRelease bundleRelease, and verifies both artifacts.
  • The GitHub release asset becomes hawkeye-<version>-android.apk, verified with --signed. A fork without secrets still builds and publishes hawkeye-<version>-android-unsigned.apk, today's exact behavior.
  • A final step uploads the AAB to the Google Play internal test track with r0adkll/upload-google-play, pinned to the v1.1.5 commit. It runs only when PLAY_SERVICE_ACCOUNT_JSON is present, so the workflow is safe to merge before the Play Console setup finishes. Prerelease tags upload too; rc builds are what the internal track is for. The AAB is not attached to the GitHub release.

Docs updated to match: releasing.md (asset name, new version code table, Play section, removal of the stale rc warning), installation.md (APK installs as downloaded, Play testing channel), troubleshooting.md (downgrade and certificate mismatch causes, including the one time uninstall for self-signed builds from v0.3.0 and earlier), README.md, android/README.md (release signing section, version code formula, CI table), and the setup action description.

Part of #106; the issue stays open until the manual console steps are done and a release tag has been validated end to end.

@diegurrio
diegurrio force-pushed the feature/android-play-upload branch 2 times, most recently from 6353a40 to baee142 Compare August 16, 2026 03:51
@mrpollo

mrpollo commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

@diegurrio please use stacked PRs it's a new GitHub feature and it's enabled in this repo.

@diegurrio

Copy link
Copy Markdown
Collaborator Author

@diegurrio please use stacked PRs it's a new GitHub feature and it's enabled in this repo.

You got it.

@diegurrio
diegurrio changed the base branch from main to feature/android-release-signing August 16, 2026 12:32
@diegurrio
diegurrio force-pushed the feature/android-play-upload branch from baee142 to 571f4a4 Compare August 16, 2026 12:46
Base automatically changed from feature/android-release-signing to main August 16, 2026 14:57
@diegurrio
diegurrio force-pushed the feature/android-play-upload branch from 571f4a4 to 6e16cfa Compare August 16, 2026 14:57
The release workflow's android job now signs the APK with the upload
keystore secrets, builds the AAB, verifies both, publishes
hawkeye-<version>-android.apk to the GitHub release, and uploads the AAB
to the Google Play internal test track through a service account. Every
Play-facing step is guarded on its secret, so forks keep producing the
unsigned artifact and skip Play. Docs updated for the signed asset name,
the new version code derivation, the Play testing channel, and the one
time uninstall for users of self-signed pre-signing builds.
@diegurrio
diegurrio force-pushed the feature/android-play-upload branch from 6e16cfa to 1be6a96 Compare August 16, 2026 14:58
@diegurrio
diegurrio marked this pull request as ready for review August 16, 2026 18:05
@diegurrio
diegurrio merged commit 7e7de37 into main Aug 16, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants