-
Notifications
You must be signed in to change notification settings - Fork 368
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: Categorize kubectl plugins #406
Comments
Yes, I think categories or keywords is a good idea. It has been proposed before (#26 (comment), #26), but we got stuck in the nitty-gritty details. It turns out fuzzy search or keyword search is not so simple to get right (also see #150). The first step in that direction would be to write a design document where we can discuss various approaches, but also define the use-cases that we are aiming to solve. |
Worth noting: We don't know if categorization is a krew problem or krew-index problem. For the private index maintainers, adding a feature like this ideally not add a burden. I'm currently -1 for categories but +1 for keywords. Other package managers usually don't categorize things, as it's usually a different concern. We can do something like metadata.annotations, and use that to categorize what's listed in krew-index/plugins.md. |
But, is krew really trying to be a package manager? 🤔 Besides, if we are comparing krew with package managers like apt, then ubuntu does have keyword search by UI - https://packages.ubuntu.com/. Also, for keywords. Would it be possible to specify multiple keywords for a single plugin? For example, In a longer duration, if there is no set of valid keywords, then the number of different keywords can expand vastly which is not really beneficial for the user since they would have to know the keywords first to search the kind of plugin they expect. So, if we define a concise set of keywords which can be specified for a plugin and make them searchable, how is that different from categorizing them? In the end, all we are doing is to define a set of keywords/categories. The only difference I see is of multiple keywords (if that is going to be possible). And if it is, I am not sure what benefit it will bring instead of specifying a single category (or let's say keyword). Keywords or category or anything else, what I am trying to propose is something like this:
Imagine having more than 100s of plugins and the user having to go through a lot of plugins only to discover I am not sure if |
I think Now, mainly my hesitation is that we need to solve this in a way that helps |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/lifecycle frozen |
Hi,
While I was going through the
kubectl krew search
command, I saw that the plugins are not currently categorized. For now, since the number of plugins inkrew
is not quite large (52 plugins, to be precise, correct me if I am wrong here), searching the plugin is not a big issue. But, on a longer run, I think categorizing the plugins could be a nice idea.For example here are a few possibilities:
Category
RBAC
which will include plugins related to RBAC likeaccess-matrix
,rbac-lookup
,rbac-view
.Category
Execution
which might include plugins likeexec-as
,iexec
,cssh
,ssh-jump
.Category
Networking
which might include plugins likesniff
.If the categorization is done, users can search for plugins in specific categories as well. A possibility here is:
kubectl krew search -c/--category RBAC
which will only list plugins belonging toRBAC
category.I can understand that the categorization of each and every plugin can be a daunting task. But I think, in the longer run, it will make
krew
more organized. A key forCategory
can also be added to theplugins.yaml
file so that the plugin developers themselves can categorize their plugins.The adoption of this idea largely depends on what the
krew
community thinkskrew
should do.I also see that, if (a big IF) the idea of categorization gets approved, it will include considerable changes in
krew
including but not limited to:krew
CLIkrew
.This idea sprung up when I was thinking of readability issues users might face when browsing awesome-kubectl-plugins. A quick search filtered by
Category
can significantly reduce the time it will take for users to find the right plugin (should the plugins ecosystem keep growing in the future).The text was updated successfully, but these errors were encountered: