-
Notifications
You must be signed in to change notification settings - Fork 1
YPE-1178 Add IOS CI build test #34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
YPE-1178 Add IOS CI build test #34
Conversation
|
@jhampton, adding you as a reviewer here for context. This failure is legit; it is the failure I fixed in my other PR. Once that one gets merged, we will be able to update this pr and should see the test pass here. |
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
Greptile OverviewGreptile SummaryAdded new GitHub Actions workflow to test iOS example app builds on pull requests to main branch
Confidence Score: 4/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant PR as Pull Request
participant GHA as GitHub Actions
participant Node as Node.js Setup
participant Expo as Expo Prebuild
participant Ruby as Ruby/Bundler
participant Xcode as Xcode Build
PR->>GHA: Trigger on PR to main
GHA->>GHA: Checkout repository
GHA->>Xcode: Select latest-stable Xcode
GHA->>Node: Setup Node 20 with npm cache
Node->>GHA: Install root dependencies (npm ci)
Node->>GHA: Install example dependencies (npm ci)
GHA->>Expo: Run expo prebuild --clean --platform ios
Expo->>GHA: Generate ios/ directory with native code
GHA->>Ruby: Setup Ruby 3.2 with bundler cache
Ruby->>GHA: Install CocoaPods (pod install)
GHA->>Xcode: Build iOS app (npm run ios --no-install)
Xcode->>GHA: Build result
GHA->>PR: Report success/failure
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
1 file reviewed, 3 comments
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> Signed-off-by: Cameron Llewellyn <cameron.b.llewellyn@gmail.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> Signed-off-by: Cameron Llewellyn <cameron.b.llewellyn@gmail.com>
jhampton
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Small suggestion on the comment for future improvement, otherwise LGTM once it runs successfully. https://github.com/youversion/platform-sdk-reactnative/actions/runs/21490549279 shows an error about missing "jobs", suggestion below.
| - name: Checkout repository | ||
| uses: actions/checkout@v4 | ||
|
|
||
| # Use latest stable Xcode; consider pinning to specific version (e.g. '16.2') if team needs consistency |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree, and perhaps our model is:
- Run pinned version -1
- Run pinned verstion
- Run latest
This gives us consistency and an early warning signal around new failures with some regression confidence as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are you thinking run a test on each version so we have a heads up on breaking changes on specific versions?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jhampton is my understanding of the above correct? I like the thought, I just have not seen a setup like this before.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's correct - sorry for the delay.
Co-authored-by: Jeff Hampton <jhampton@gmail.com> Signed-off-by: Cameron Llewellyn <cameron.b.llewellyn@gmail.com>
|
@jhampton how about we go ahead and merge this and we can track somewhere the possible improvements. |
jhampton
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🚀
Description
We had gotten the repo in a state where the IOS example app build was failing. This puts in place a CI test to make sure it passes on PR's
Type of Change
feat:New feature (non-breaking change which adds functionality)fix:Bug fix (non-breaking change which fixes an issue)docs:Documentation updaterefactor:Code refactoring (no functional changes)perf:Performance improvementtest:Test additions or updatesbuild:Build system or dependency changesci:CI configuration changeschore:Other changes (maintenance, etc.)Checklist