Skip to content

[RFC-0013] Implement plugin system#5849

Merged
stefanprodan merged 8 commits intomainfrom
plugin-system
Apr 21, 2026
Merged

[RFC-0013] Implement plugin system#5849
stefanprodan merged 8 commits intomainfrom
plugin-system

Conversation

@stefanprodan
Copy link
Copy Markdown
Member

@stefanprodan stefanprodan commented Apr 13, 2026

This PR implements RFC-0013: a plugin system for the Flux CLI that allows external tools to be discoverable and invocable as flux <name> subcommands.

Available Commands:
  install     Install a plugin from the catalog
  list        List installed plugins
  search      Search the plugin catalog
  uninstall   Uninstall a plugin
  update      Update installed plugins

Example usage

List plugins available in the official catalog https://github.com/fluxcd/plugins

$ flux plugin search
NAME            DESCRIPTION             INSTALLED
operator        Flux Operator CLI

Install plugin:

$ flux plugin install operator
✔ installed operator v0.46.0

Invoke plugin:

$ flux operator --version
flux-operator version 0.46.0

List installed plugins:

$ flux plugin ls
NAME            VERSION PATH
operator        0.46.0  /Users/stefanprodan/.fluxcd/plugins/flux-operator

Uninstall plugin:

$ flux plugin uninstall operator
✔ uninstalled operator

@stefanprodan stefanprodan added enhancement New feature or request area/ux In pursuit of a delightful user experience labels Apr 13, 2026
Comment thread internal/plugin/install.go Fixed
Copy link
Copy Markdown
Member

@matheuscscp matheuscscp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd split the flux plugin commands into files to follow the repo standard, otherwise LGTM

@stefanprodan
Copy link
Copy Markdown
Member Author

I've manually tested all the commands with the new flux-schema plugin. Everything works when using more than one plugin.

Copy link
Copy Markdown
Member

@matheuscscp matheuscscp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! 🚀

@stefanprodan stefanprodan merged commit 00d918e into main Apr 21, 2026
6 checks passed
@stefanprodan stefanprodan deleted the plugin-system branch April 21, 2026 07:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/ux In pursuit of a delightful user experience enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants