feat: improve plugin installation UX#617
feat: improve plugin installation UX#617duffney wants to merge 17 commits intonotaryproject:mainfrom
Conversation
6c1865f to
2618709
Compare
|
@priteshbandi @shizhMSFT @FeynmanZhou I suggest we also put this new subcommand |
| } | ||
|
|
||
| func pluginInstallCommand() *cobra.Command { | ||
| var force bool |
There was a problem hiding this comment.
Should we make a struct instead of a single variable?
There was a problem hiding this comment.
Are there any other config settings we'd like to add to the struct? If so, it might be worthwhile to look into adding viper for configuration.
|
@priteshbandi I'd like to see if |
Codecov Report
❗ Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more. @@ Coverage Diff @@
## main #617 +/- ##
==========================================
- Coverage 63.77% 60.86% -2.92%
==========================================
Files 40 40
Lines 2228 2379 +151
==========================================
+ Hits 1421 1448 +27
- Misses 686 808 +122
- Partials 121 123 +2
... and 1 file with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
Is there anything I need to do to mark it as experimental? |
@duffney Sorry. Please ignore my comments for now. |
|
My apologies to everyone for the delay in replying to these comments. I'm actively re-reviewing all the comments and working to resolve them. Thank you for your patience. :) |
Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Co-authored-by: Pritesh Bandi <priteshbandi@gmail.com> Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Co-authored-by: Pritesh Bandi <priteshbandi@gmail.com> Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Co-authored-by: Pritesh Bandi <priteshbandi@gmail.com> Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Co-authored-by: Shiwei Zhang <shizh@microsoft.com> Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Co-authored-by: Shiwei Zhang <shizh@microsoft.com> Signed-off-by: Josh Duffney <jduffney@microsoft.com> Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
b56f772 to
7f9d96f
Compare
Signed-off-by: Josh Duffney <jduffney@microsoft.com>
Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
…com/Duffney/notation into feat-improve-plugin-installation-ux
Signed-off-by: Joshua Duffney <jduffney@microsoft.com>
I agree. Users will expect the subcommand to handle archives because that's how they're downloaded. If it's not added to this PR, it might be worth adding error handling for people who pass in a .zip or .tar.gz to throw and error saying it needs to be extracted. |
|
Closed as plugin installation was covered by a different PR #827 |
Adds an
installandremovesubcommand to thenotation plugincommand. The install command takes a plugin binary and copies it to the plugin directory. If the plugin directory doesn't exist, it is created, and the plugin copied. If an exist plugin exists, the version is compared and copied when the current version is less than the version of the plugin binary provided as an argument. A--forceflag is available to overwrite this logic and copy the plugin binary regardless of the existing plugin version. The remove command removes the plugin specific directory and its contents.