Kubectl Plugin Manager (krew) and state of the plugin ecosystem

21 views
Skip to first unread message

Ahmet Alp Balkan

unread,
Feb 22, 2019, 5:00:50 PM2/22/19
to kubernetes-sig-cli
Hi dear SIG CLI,

I'm the maintainer & co-creator of the Krew project by Google. Krew is a plugin
manager for kubectl. (For the uninitiated, here's a recording of a previous SIG
CLI demo where I presented krew.)

I wanted to drop this note ahead of next week's discussion in the SIG meeting
and give some background.

We've developed krew to make it dead easy to:
- package and distribute plugins (for plugin devs), and
- discover, install and upgrade plugins (for kubectl users).

So far krew is achieving both of these goals very well.

Today, most of the kubectl plugins on GitHub are distributed through krew. (As
of writing there are 30 plugins available on krew.) It has become the default
destination for the developers writing and distributing plugins.

There's a big uptick in new plugin development in the past month or so. This is
great for the kubectl user/developer communities.

With this, we're presented with several challenges:

* Krew has a centralized nature: A central index repo means someone has to set
  and enforce criteria for which plugins are "appropritate". This has caused
  some heated debates already. (It's the top priority work in the queue to allow
  other GitHub repos to be plugin discovery sources.)

* Krew is owned/managed by Google: (And when I say that, it's pretty much just
  me.) I'm glad this project has stimulated growth of plugin ecosystem, but it's
  not sustainable. Krew is receiving multiple new plugin submissions every week,
  and ideally the community should decide what deserves to be in the centralized
  repo. Similarly, the community deserves more maintainers on a tool they use.

* What's next for Krew: Back in summer'18 we've submitted a KEP to make it the
  official "kubectl plugin" command. But I think the project should mature a lot
  more for that discussion to happen.

We should discuss this in Wednesday's meeting more. I'd love to hear the SIG's
thoughts on how we can further improve this plugin manager, set up better
maintainance/governance, and serve the plugin ecosystem better.

-Ahmet
Reply all
Reply to author
Forward
0 new messages