ECO-444: Add remove subcommand for integrations command#12291
ECO-444: Add remove subcommand for integrations command#12291kodiakhq[bot] merged 34 commits intomainfrom
Conversation
🦋 Changeset detectedLatest commit: fb7dce0 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
trek
left a comment
There was a problem hiding this comment.
I meant to request changes in the previous review.
| ['install', 'install'], | ||
| ['integration', 'integration'], | ||
| ['integration-resource', 'integration-resource'], | ||
| ['ir', 'integration-resource'], |
There was a problem hiding this comment.
note (non-blocking): Calling out that we'd be adding these to the command list:
integration-resourceir
There was a problem hiding this comment.
suggestion (blocking): move integration/resource to integration-resource as a sibling to integration
Can we keep the command consistency so that it's obvious where command logic is when we go looking for it?
There was a problem hiding this comment.
suggestion (blocking): rename this directory to integration-resource
EndangeredMassa
left a comment
There was a problem hiding this comment.
meant to request changes
EndangeredMassa
left a comment
There was a problem hiding this comment.
Thanks for all the work on this!
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## [email protected] ### Minor Changes - Strongly type `TelemetryClient` subclasses against command specification ([#12426](#12426)) - Adds `vercel integration remove` to uninstall Marketplace integrations from the current team ([#12291](#12291)) Adds `vercel integration-resource disconnect` to disconnect Marketplace integration resources from projects Adds `vercel integration-resource remove` to delete Marketplace integration resources ### Patch Changes - [cli] Make all metrics tracking methods on the store require arguments ([#12422](#12422)) - Support allowHeader from Next.js for filtering request headers during revalidation ([#12420](#12420)) - [cli] don't track unreachable condition ([#12419](#12419)) - Updated dependencies \[[`5a6605bbd99c3b4c3f06fc315dd3978fe7801d00`](5a6605b)]: - @vercel/[email protected] - @vercel/[email protected] - @vercel/[email protected] - @vercel/[email protected] ## @vercel/functions@1.5.0 ### Minor Changes - ipAddress: accept headers as input ([#12429](#12429)) ## @vercel/[email protected] ### Patch Changes - Support allowHeader from Next.js for filtering request headers during revalidation ([#12420](#12420)) ## @vercel/[email protected] ### Patch Changes - Updated dependencies \[[`5a6605bbd99c3b4c3f06fc315dd3978fe7801d00`](5a6605b)]: - @vercel/[email protected] ## @vercel/[email protected] ### Patch Changes - Updated dependencies \[[`5a6605bbd99c3b4c3f06fc315dd3978fe7801d00`](5a6605b)]: - @vercel/[email protected] ## @vercel/[email protected] ### Patch Changes - Support allowHeader from Next.js for filtering request headers during revalidation ([#12420](#12420)) ## @vercel/[email protected] ### Patch Changes - Updated dependencies \[[`5a6605bbd99c3b4c3f06fc315dd3978fe7801d00`](5a6605b)]: - @vercel/[email protected] ## @vercel/[email protected] ### Patch Changes - Updated dependencies \[]: - @vercel/[email protected] ## @vercel-internals/[email protected] ### Patch Changes - Updated dependencies \[[`5a6605bbd99c3b4c3f06fc315dd3978fe7801d00`](5a6605b)]: - @vercel/[email protected] Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## [email protected] ### Minor Changes - Strongly type `TelemetryClient` subclasses against command specification ([#12426](vercel/vercel#12426)) - Adds `vercel integration remove` to uninstall Marketplace integrations from the current team ([#12291](vercel/vercel#12291)) Adds `vercel integration-resource disconnect` to disconnect Marketplace integration resources from projects Adds `vercel integration-resource remove` to delete Marketplace integration resources ### Patch Changes - [cli] Make all metrics tracking methods on the store require arguments ([#12422](vercel/vercel#12422)) - Support allowHeader from Next.js for filtering request headers during revalidation ([#12420](vercel/vercel#12420)) - [cli] don't track unreachable condition ([#12419](vercel/vercel#12419)) - Updated dependencies \[[`ea72a9f85d9fba806e382ef1a7e52b73f78132d9`](vercel/vercel@ea72a9f)]: - @vercel/[email protected] - @vercel/[email protected] - @vercel/[email protected] - @vercel/[email protected] ## @vercel/[email protected] ### Minor Changes - ipAddress: accept headers as input ([#12429](vercel/vercel#12429)) ## @vercel/[email protected] ### Patch Changes - Support allowHeader from Next.js for filtering request headers during revalidation ([#12420](vercel/vercel#12420)) ## @vercel/[email protected] ### Patch Changes - Updated dependencies \[[`ea72a9f85d9fba806e382ef1a7e52b73f78132d9`](vercel/vercel@ea72a9f)]: - @vercel/[email protected] ## @vercel/[email protected] ### Patch Changes - Updated dependencies \[[`ea72a9f85d9fba806e382ef1a7e52b73f78132d9`](vercel/vercel@ea72a9f)]: - @vercel/[email protected] ## @vercel/[email protected] ### Patch Changes - Support allowHeader from Next.js for filtering request headers during revalidation ([#12420](vercel/vercel#12420)) ## @vercel/[email protected] ### Patch Changes - Updated dependencies \[[`ea72a9f85d9fba806e382ef1a7e52b73f78132d9`](vercel/vercel@ea72a9f)]: - @vercel/[email protected] ## @vercel/[email protected] ### Patch Changes - Updated dependencies \[]: - @vercel/[email protected] ## @vercel-internals/[email protected] ### Patch Changes - Updated dependencies \[[`ea72a9f85d9fba806e382ef1a7e52b73f78132d9`](vercel/vercel@ea72a9f)]: - @vercel/[email protected] Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Summary
This PR adds a new sub-command to integration:
remove(also available asrm) which allows a user to uninstall a marketplace integration from the current team. This PR also adds a new commandvc integration-resourcewith sub-commandsdisconnectandremove(also available asrm), which allows a user to unlink a project from a (marketplace integration) resource and to delete a (marketplace integration) resource.Background
This change is related to #12233 and #12251. As we continue to try and improve the developer experience of interacting with the marketplace via the CLI, it's important that we offer the basic general CRUD activities seen in CLI tools of
add,list, andremove(as well asopenfor how users perform update actions on the resources day-to-day). This PR adds theremovefunctionality to finish off the set of the basic CRUD operations.Original designs for the CRUD commands lacked detail on a
removecommand. This PR introduces the idea of removing an integration from a team, removing a resource from a team, and removing resources from projects. Since this is a lot of different destructive actions, we thought it best to break apart into multiple commands instead of overloading a singleremovecommand (as this PR originally proposed). This way the commands have clear, singular uses, and it's more difficult to accidentally make unintended destructive changes.How to test
Build and run locally (or use
pnpm devinstead ofvcwhen in thepackages/clifolder). You'll also need marketplace integrations installed on a team, and resources for said integrations.