Replies: 1 comment
-
Thanks You |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
This discussion was born from a Slack thread in the #bazelisk channel. We moved the discussion here to ensure that a broad audience could participate.
Overview
I wish Bazel had a plugin system allowing developers to add subcommands (e.g.
bazel <custom-command>
). This would be useful for many situations:bazel go get http://example.com
,bazel swift package update
).make
to run Bazel commands.buildozer
,buildifier
).Instead of adding a plugin system to Bazel, what if we added it to
bazelisk
instead?What features would this plugin framework provide?
bazelisk
downloads the configured version of Bazel, the plugin configuration can download source or prebuilt binaries.bazelisk help
. There will be some caveats here, but I bet that we can figure out how to provide a nice user experience without too much overhead.bazelisk plugin search awesome-plugin
).bazelisk plugin install awesome-plugin
).bazel mod install rules_go
.Why add a plugin system to bazelisk?
What about the commercially available Bazel CLI replacements?
There are companies that provide a Bazel frontend with some of these features (e.g. BuildBuddy, Aspect). I posit that the community would benefit from the infrastructure being open-source and the plugins being open-source and proprietary. With an open-source plugin framework, companies can sell plugins or provide free plugins that work with their subscription services.
What do you think?
I am curious if other folks think that this is interesting. What improvements could we make to the Bazel user-experience with a plugin framework?
Beta Was this translation helpful? Give feedback.
All reactions