[eas-cli] add support for non-interactive update:rollback#3825
Open
quinlanj wants to merge 2 commits into
Open
[eas-cli] add support for non-interactive update:rollback#3825quinlanj wants to merge 2 commits into
quinlanj wants to merge 2 commits into
Conversation
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
✅ Thank you for adding the changelog entry! |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #3825 +/- ##
==========================================
+ Coverage 58.04% 58.08% +0.05%
==========================================
Files 917 917
Lines 39767 39812 +45
Branches 8329 8342 +13
==========================================
+ Hits 23079 23122 +43
- Misses 15237 15238 +1
- Partials 1451 1452 +1 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
Subscribed to pull request
Generated by CodeMention |
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.
Why
Slack context: https://exponent-internal.slack.com/archives/C083Q88U4M8/p1780603389422949
eas update:rollbackused to be interactive only: it prompts whether to republish a previous update or roll back to the embedded bundle, then delegates toeas update:republish/eas update:roll-back-to-embedded. Teams building rollback pipelines (e.g. with access controls around who can change prod) want a single non-interactive command that "just rolls back the specified update" without having to know which of the two underlying commands to run. Motivated by a customer request.Manual testing
Published regular update (
eas update --branch main)Rollback with only 1 update group published for runtime/branch pair
Rollback when update group is not latest for runtime/branch pair
Rollback with multiple update groups published for runtime/branch pair
Rollback with invalid group id
How
Adds an optional positional
GROUP_IDargument toeas update:rollback:eas update:republish/eas update:roll-back-to-embeddedcommands, reusing all of their validation and publish logic.--message(with sensible defaults),--platform,--private-key-path, and--jsonare forwarded.With no
GROUP_ID, the existing interactive behavior is unchanged; in--non-interactivemode the argument is required.The latest/previous lookup uses the modern
updateGroupsPaginatedRelay connection (UpdatesFilterV2), fetching just the top two groups for the runtime version.Test Plan
rollback.test.ts(7 cases): republish previous group, roll back to embedded when there is no previous group, not-latest → error, missing group ID in--non-interactive→ error, and--message/--platform/--private-key-path/--jsonforwarding on both delegated paths.yarn test src/commands/update— all update-command suites pass.yarn typecheck,yarn lint, andyarn fmt:checkare clean.yarn verify-graphql-codeconfirms the generated GraphQL is in sync.