ci(android): make APK attach failures visible (debug v2026.06.01 missing asset) #63

Merged
bvandeusen merged 1 commits from dev into main 2026-06-01 18:13:43 -04:00
Owner

Diagnosing why v2026.06.01 shipped without the APK on the release.

Run 118's Attach APK to release step reported success but the release object ended up with zero assets — i.e. the curl exit code was being swallowed and the actual HTTP response was never logged. With ~0.5s total runtime, the upload almost certainly never landed.

This adds set -euxo pipefail, captures the upload HTTP code with curl -w '%{http_code}', and writes the response body to a temp file that gets printed. After merge I'll force-move v2026.06.01 to the new HEAD; the next android.yml run will either succeed visibly OR fail loudly with whatever the upload endpoint actually returned.

Diagnosing why `v2026.06.01` shipped without the APK on the release. Run 118's `Attach APK to release` step reported success but the release object ended up with zero assets — i.e. the curl exit code was being swallowed and the actual HTTP response was never logged. With ~0.5s total runtime, the upload almost certainly never landed. This adds `set -euxo pipefail`, captures the upload HTTP code with `curl -w '%{http_code}'`, and writes the response body to a temp file that gets printed. After merge I'll force-move `v2026.06.01` to the new HEAD; the next android.yml run will either succeed visibly OR fail loudly with whatever the upload endpoint actually returned.
bvandeusen added 1 commit 2026-06-01 18:13:38 -04:00
ci(android): make APK attach failures visible (set -euxo + HTTP code)
android / Build + lint + test (push) Successful in 5m0s
android / Build signed release APK (push) Has been skipped
734275f05b
The previous version of the Attach APK to release step ran without
set -x and without capturing the upload's HTTP response. Run 118
(v2026.06.01 tag-build) shows the step reporting success but the
release ended up with zero assets — i.e. the upload silently failed
without surfacing a non-zero exit.

New version:
- set -euxo pipefail so every command is echoed and any failure
  surfaces.
- ls -lh the APK before upload so we can see if Gradle even produced
  it at the expected path.
- curl -w '%{http_code}' captures the actual HTTP status into a var
  and writes the response body to a temp file; both are printed.
- Explicit if check on the HTTP code (200-299 = success) bails
  loudly when it isn't.

No behavioral change in success path; on failure the cause is
visible in the log instead of being eaten.
bvandeusen merged commit 8847b43d9e into main 2026-06-01 18:13:43 -04:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bvandeusen/minstrel#63