-
Notifications
You must be signed in to change notification settings - Fork 25
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
Proposal to support subctl installation via krew #195
Conversation
🤖 Created branch: z_pr195/Jaanki/subctl-krew |
b871ca3
to
4ecda83
Compare
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.
Sorry, I mis-clicked, there are some changes to make still.
Epic: submariner-io/enhancements#195 Depends on submariner-io/enhancements#195 Signed-off-by: Janki Chhatbar <[email protected]>
|
||
Once this is done, users would be able to install subctl using krew: | ||
|
||
kubectl krew install subm |
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.
Can you also include an example on how to install a specific version of subctl?
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.
Krew (the package manager for kubectl plugins) does not have built-in support for installing specific versions of a plugin. Krew is designed to fetch and install the latest available version of a plugin from the configured plugin index. However, we can provide multiple versions of their plugins in the plugin index, allowing users to choose which version to install. This facility will not be provided at the moment but can be enhanced in the future.
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.
Just curious, how would this work with changes proposed in #197 Would we have multiple krew plugins for each build version?
|
||
## Summary | ||
|
||
krew is a kubectl plugin that makes lifecycle management of kubectl plugins easy. The idea is to have `subctl` as a kubectl plugin and be |
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.
nitpick: Shouldn't krew be krew
?
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.
It should be Krew (see the website).
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.
It should be Krew (see the website).
Since one of the goals of this is to use it with oc
, would it cause confusion for downstream users?
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.
updated at other relevant places too.
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.
It should be Krew (see the website).
Since one of the goals of this is to use it with
oc
, would it cause confusion for downstream users?
Plugins installed using Krew work with both kubectl
and oc
:
$ oc subm
An installer for Submariner
...
(My kubectl-subm
is old.)
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.
yes, that's also one of the golas: to make subctl (built with build constraints) available downstream via oc as part of OpenShift CLI manager.
and use `subctl` as `kubectl-subm` or `kubectl subm`. | ||
|
||
$ kubectl subm | ||
An installer for Submariner |
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.
Since subctl provides much more than installation, this should be changed to reflect that. Maybe something like:
A utility tool for Submariner
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.
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.
nit: I guess Vishal wanted the text to be updated accordingly.
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.
Yes, this text should also be change to make it clear that subctl is more than just an installer.
EDIT: Since text is already changed in subctl output, approving.
We’d publish one, full-featured plugin corresponding to upstream |
Closes: submariner-io#182 Signed-off-by: Janki Chhatbar <[email protected]>
Epic: submariner-io/enhancements#195 Depends on submariner-io/enhancements#195 Signed-off-by: Janki Chhatbar <[email protected]>
and use `subctl` as `kubectl-subm` or `kubectl subm`. | ||
|
||
$ kubectl subm | ||
An installer for Submariner |
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.
nit: I guess Vishal wanted the text to be updated accordingly.
and use `subctl` as `kubectl-subm` or `kubectl subm`. | ||
|
||
$ kubectl subm | ||
An installer for Submariner |
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.
Yes, this text should also be change to make it clear that subctl is more than just an installer.
EDIT: Since text is already changed in subctl output, approving.
🤖 Closed branches: [z_pr195/Jaanki/subctl-krew] |
Closes: #182