Repository navigation
Conversation
|
Subscribed to pull request
Generated by CodeMention Warning: The preamble and epilogue options in commentConfiguration are deprecated. Use template instead. |
76cf758 to
ba607d3
Compare
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #4538 +/- ##
==========================================
+ Coverage 73.71% 73.77% +0.06%
==========================================
Files 998 1003 +5
Lines 48781 48934 +153
Branches 10544 10588 +44
==========================================
+ Hits 35956 36098 +142
- Misses 11831 11842 +11
Partials 994 994 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
✅ Thank you for adding the changelog entry! |
byronkarlen
left a comment
There was a problem hiding this comment.
Couple small notes/questions. Also would be nice to have a disconnect variant like we do for some of the others.
|
|
||
| static override examples = [ | ||
| '<%= config.bin %> <%= command.id %> --repo owner/repo', | ||
| '<%= config.bin %> <%= command.id %> --repo owner/repo --non-interactive --json', |
There was a problem hiding this comment.
Is there a need to include --non-interactive here?
| throw new EasCommandError( | ||
| `${app.fullName} is already connected to ${linkedRepo}. Disconnect it in the EAS dashboard before connecting another repository: ${projectGitHubSettingsUrl}` | ||
| ); |
There was a problem hiding this comment.
Should this happen before we get prompted (in interactive case) to specify a repo. Not a big issue but feels weird to specify a repo only to then have it fail.
| installation.metadata.githubAccountName?.toLowerCase() === owner.toLowerCase() && | ||
| installation.metadata.installationStatus === GitHubAppInstallationStatus.Active && | ||
| (!installation.registration || | ||
| installation.registration.origin === 'https://github.com') |
There was a problem hiding this comment.
what is this origin === https://github.com line for? Is it to not handle expo app installations on github enterprise servers? It looks like we're soon extending support to github enterprise servers (GitHubAppRegistrationEntity).
| } | ||
| } | ||
| `, | ||
| { registrationId: DEFAULT_GITHUB_APP_REGISTRATION_ID, installationIdentifier, after }, |
There was a problem hiding this comment.
will this break with github enterprise server registrations?
|
eas-cli now uses changesets for changelogs (#4580). The required "Check for a changeset" check fails on PRs that edit To update this PR:
The release adds the PR link and the author to the entry. If this PR needs no changelog entry, revert the |
Why
Currently there's no way to connect GH repo to an EAS project via CLI.
How
Add
eas integrations:github:connect --repo owner/repoandeas integrations:github:status.Using the same API as the website, this resolves owner's active Expo GH app installation and finds repository via paginated API (works with private repos too).
Initial GitHub authorization, Expo app installation, and linking the installation to the project's Expo account remain dashboard setup steps.
Expo app can be configured with multiple GH accounts. Since the command requires
owner/repo,ownerwill be matched to the correct account.Agent use
I asked Opus 5.5 to generate the code, questioned it about implementation and edge cases. Then I proceeded to manually test the local build on my account.
Test Plan
Added new tests and verified locally:
when Expo had permission to connect to all repositories:
when Expo did not have permission for that particular repository:
when Expo app is not installed on GH account: