[No QA] Fix Rock Android staging deploy artifact detection#83282
[No QA] Fix Rock Android staging deploy artifact detection#83282roryabraham merged 2 commits intomainfrom
Conversation
…ection Rock's "Find Build Artifact" step searches $ANDROID_SOURCE_DIR/$APP_NAME/build/outputs for the APK. Without appName set, APP_NAME is empty, causing Rock to search Mobile-Expensify/Android//build/outputs/ instead of Mobile-Expensify/Android/app/build/outputs/ where Gradle actually places the APK. Co-authored-by: Cursor <cursoragent@cursor.com>
|
@codex review |
|
@mjasikowski Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
|
🚧 @roryabraham has triggered a test Expensify/App build. You can view the workflow run here. |
|
Codex Review: Didn't find any major issues. Keep it up! ℹ️ About Codex in GitHubCodex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback". |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safari |
|
🚧 @roryabraham has triggered a test Expensify/App build. You can view the workflow run here. |
This comment has been minimized.
This comment has been minimized.
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
[No QA] Fix Rock Android staging deploy artifact detection (cherry picked from commit 4478ecd) (cherry-picked to staging by roryabraham)
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
🚀 Cherry-picked to staging by https://github.com/roryabraham in version: 9.3.25-2 🚀
|
|
🚀 Cherry-picked to staging by https://github.com/roryabraham in version: 9.3.25-10 🚀
|
|
🚀 Deployed to production by https://github.com/puneetlath in version: 9.3.25-13 🚀
|
|
🚀 Cherry-picked to staging by https://github.com/roryabraham in version: 9.3.26-0 🚀
|
|
🚀 Deployed to production by https://github.com/puneetlath in version: 9.3.26-8 🚀
|
Explanation of Change
Rock's Android composite action has a "Find Build Artifact" step that searches
$ANDROID_SOURCE_DIR/$APP_NAME/build/outputsfor the built APK/AAB. WithoutappNameconfigured inrock.config.mjs, theAPP_NAMEvariable is empty, causing Rock to searchMobile-Expensify/Android//build/outputs/— which doesn't exist. The APK is actually atMobile-Expensify/Android/app/build/outputs/(the standard Gradleappmodule output directory).This was exposed when staging deploys moved from Fastlane to Rock in #83244. AdHoc builds weren't affected because they use cached artifacts from S3, but staging/production builds need to find the locally-built binary to upload it.
The fix adds
appName: 'app'to theplatformAndroid()config inrock.config.mjs, which is the standard Android app module name for both standalone and HybridApp builds.Fixed Issues
N/A - CI/CD infrastructure fix
Tests
Offline tests
N/A - CI/CD change only
QA Steps
N/A - CI/CD change only, no user-facing changes
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
N/A - CI/CD change only
Android: mWeb Chrome
N/A - CI/CD change only
iOS: Native
N/A - CI/CD change only
iOS: mWeb Safari
N/A - CI/CD change only
MacOS: Chrome / Safari
N/A - CI/CD change only
Made with Cursor