W-22857717: Fix Android CI workflow#468
Open
wmathurin wants to merge 23 commits into
Open
Conversation
- nightly checkout: github.head_ref → github.ref_name (head_ref is empty on scheduled runs)
- results-bucket: dynamic cloud-test-${REPO_OWNER} → hardcoded cloud-test-forcedotcom (fork PRs don't have the bucket)
- add --no-auto-google-login and --no-performance-metrics (aligns with Android native, suppresses Error:1 triggers)
…aligns with Android native)
… for gcloud firebase to start)
… bucket (matches Android native)
…ice account has access there)
…PI 34 can't grant it); use MediumPhone.arm API 34
…36 limit; revert API 34 manifest change
…pace after comma)
…uires one class per flag)
- Nightly checkout: github.head_ref → github.ref_name (head_ref empty on scheduled runs)
- gcloud: firebase → --quiet beta firebase (non-beta exits silently; --quiet auto-installs firebase component)
- Results bucket: dynamic cloud-test-${REPO_OWNER} (correct for forcedotcom and forks)
- gsutil copy bucket: same dynamic value (was inconsistent)
- Add --no-auto-google-login --no-performance-metrics (align with Android native)
- Remove --environment-variables clearPackageData=true (causes SecurityException on API 34)
- Restore ios-nightly (was temporarily disabled during debugging)
|
||||||||||||||
|
||||||||||||||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes 5 bugs in
.github/workflows/reusable-android-workflow.yamlthat were causing Android CI to always fail, plus restoresios-nightlyinnightly.yaml(was temporarily disabled during debugging).Changes
github.head_ref→github.ref_name—head_refis empty on scheduled runs, causing unpredictable checkout behaviorgcloud firebase→gcloud --quiet beta firebase— non-beta exits silently with code 1 in this project;--quietsuppresses the interactive "install firebase component?" prompt on fresh CI runnerscloud-test-${REPO_OWNER}with consistent gsutil copy — this correctly resolves tocloud-test-forcedotcomon upstream andcloud-test-<fork>on forks--no-auto-google-loginand--no-performance-metricsto align withSalesforceMobileSDK-AndroidworkflowclearPackageData--environment-variables clearPackageData=trueremoved — causesSecurityException: Error granting runtime permissionon API 34Testing
Validated on
wmathurin/SalesforceMobileSDK-ReactNativefork viaworkflow_dispatch(20+ iterations).What was confirmed working:
gcloud --quiet beta firebasecorrectly installs the firebase component non-interactively, uploads APK, and starts the test runReactHarnessTest2/2 ✅ passed on FirebaseMediumPhone.armAPI 36 (run 27658837103) — proves the workflow is correct end-to-endKnown remaining issue (pre-existing, not introduced by this PR):
The full 35-test suite hits
Error:1(Firebase infrastructure error) after ~12-20 minutes onMediumPhone.armAPI 36. This is a pre-existing Firebase Test Lab infrastructure instability — all 5 most recent nightly runs onforcedotcomwere already failing withError:1before this PR, and the Android native repo nightly has also been failing recently for the same reason. The fix here is to switch to thetest-lab-*project-default bucket (requires granting the ReactNative service account access to that bucket — a GCP admin action separate from this PR).