deb.open-vault/command/plugin.go

52 lines
1.2 KiB
Go

// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: MPL-2.0
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
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.
List all available plugins in the catalog of a particular type:
$ vault plugin list database
Register a new plugin to the catalog as a particular type:
$ vault plugin register -sha256=d3f0a8b... auth my-custom-plugin
Get information about a plugin in the catalog listed under a particular type:
$ vault plugin info auth my-custom-plugin
Please see the individual subcommand help for detailed usage information.
`
return strings.TrimSpace(helpText)
}
func (c *PluginCommand) Run(args []string) int {
return cli.RunResultHelp
}