feat: Add the expo flask pipeline#15792
Conversation
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
|
I have read the CLA Document and I hereby sign the CLA |
2655520 to
6065345
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #15792 +/- ##
==========================================
+ Coverage 69.58% 69.97% +0.38%
==========================================
Files 2473 2530 +57
Lines 53007 54023 +1016
Branches 8063 8309 +246
==========================================
+ Hits 36886 37800 +914
- Misses 13752 13784 +32
- Partials 2369 2439 +70 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
09c285c to
52c28d6
Compare
52c28d6 to
6595493
Compare
|
Cal-L
left a comment
There was a problem hiding this comment.
Added comments for context
|
|
E2E passed already, just resolved conflict from main |
There was a problem hiding this comment.
Bug: Android Build Script Issues
The scripts/build.sh script introduces two issues in Android builds:
- The
buildAndroidDevBuildfunction no longer sources environment variables from.android.envwhenPRE_RELEASEis true, as the sourcing logic inprebuild_androidis now conditional onPRE_RELEASEbeing false. This can lead to build failures. - Both
buildAndroidDevBuildand the newly addedbuildAndroidFlaskLocalfunctions are missing the-DtestBuildType=debugparameter when building their respective AndroidTest APKs (assembleProdDebugAndroidTestandassembleFlaskDebugAndroidTest). This omission breaks consistency with other test builds and may cause build or test failures.
scripts/build.sh#L286-L299
metamask-mobile/scripts/build.sh
Lines 286 to 299 in 5ba996b
Bug: Build Function Directory Inconsistency
The buildIosFlaskLocal function changes to the ios directory but does not return, which is inconsistent with other build functions and can cause subsequent operations to run from the wrong directory. Additionally, the remapFlaskEnvVariables call was removed from buildIosFlaskRelease to rely on a new global call for Flask modes. This creates an inconsistency where Android Flask release builds may still have a redundant remapFlaskEnvVariables call, leading to it being executed twice for Android but only once for iOS, potentially causing unexpected environment variable behavior.
scripts/build.sh#L460-L471
metamask-mobile/scripts/build.sh
Lines 460 to 471 in 5ba996b
Was this report helpful? Give feedback by reacting with 👍 or 👎
|
|
All cursor comments are expected. The Expo prebuild configuration is most up-to-date. Other configurations will be updated in follow up PRs |



Description
This creates a Bitrise pipeline for creating flask builds.
Changes made:
build:ios:flask:localandbuild:android:flask:localis used by Bitrise for generating Flask Expo prebuild in CIgenerateIosBinaryselects the correct plistRelated issues
Fixes: #15563
Manual testing steps
Flasktarget is installedFlasktarget is installedyarn watchand run the appFor reference here's the latest bitrise build of this pipeline:
https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/be69d047-60ea-400d-8a39-4153f0d85f84
Screenshots/Recordings
After
Installing .ipa and .apk
flask-installs.mov
Pre-merge author checklist
Pre-merge reviewer checklist