2023-03-15 16:00:52 +00:00
|
|
|
// Copyright (c) HashiCorp, Inc.
|
|
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
|
2018-07-13 17:35:08 +00:00
|
|
|
package command
|
|
|
|
|
|
|
|
import (
|
|
|
|
"strings"
|
|
|
|
|
|
|
|
"github.com/mitchellh/cli"
|
|
|
|
)
|
|
|
|
|
|
|
|
var _ cli.Command = (*PluginCommand)(nil)
|
|
|
|
|
|
|
|
type PluginCommand struct {
|
|
|
|
*BaseCommand
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *PluginCommand) Synopsis() string {
|
|
|
|
return "Interact with Vault plugins and catalog"
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *PluginCommand) Help() string {
|
|
|
|
helpText := `
|
|
|
|
Usage: vault plugin <subcommand> [options] [args]
|
|
|
|
|
|
|
|
This command groups subcommands for interacting with Vault's plugins and the
|
2018-11-07 01:21:24 +00:00
|
|
|
plugin catalog. The plugin catalog is divided into three types: "auth",
|
|
|
|
"database", and "secret" plugins. A type must be specified on each call. Here
|
|
|
|
are a few examples of the plugin commands.
|
2018-07-13 17:35:08 +00:00
|
|
|
|
2018-11-07 01:21:24 +00:00
|
|
|
List all available plugins in the catalog of a particular type:
|
2018-07-13 17:35:08 +00:00
|
|
|
|
2018-11-07 01:21:24 +00:00
|
|
|
$ vault plugin list database
|
2018-07-13 17:35:08 +00:00
|
|
|
|
2018-11-07 01:21:24 +00:00
|
|
|
Register a new plugin to the catalog as a particular type:
|
2018-07-13 17:35:08 +00:00
|
|
|
|
2018-11-07 01:21:24 +00:00
|
|
|
$ vault plugin register -sha256=d3f0a8b... auth my-custom-plugin
|
2018-07-13 17:35:08 +00:00
|
|
|
|
2018-11-07 01:21:24 +00:00
|
|
|
Get information about a plugin in the catalog listed under a particular type:
|
2018-07-13 17:35:08 +00:00
|
|
|
|
2018-11-07 01:21:24 +00:00
|
|
|
$ vault plugin info auth my-custom-plugin
|
2018-07-13 17:35:08 +00:00
|
|
|
|
|
|
|
Please see the individual subcommand help for detailed usage information.
|
|
|
|
`
|
|
|
|
|
|
|
|
return strings.TrimSpace(helpText)
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *PluginCommand) Run(args []string) int {
|
|
|
|
return cli.RunResultHelp
|
|
|
|
}
|