external_plugins

package
v0.0.49 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 30, 2024 License: MPL-2.0 Imports: 13 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

View Source
var HandshakeConfig = plugin.HandshakeConfig{
	MagicCookieKey:   "HASHICORP_BOUNDARY_PLUGIN",
	MagicCookieValue: "boundary-plugin",
}

HandshakeConfig is a shared config that can be used regardless of plugin, to avoid having to know type-specific things about each plugin

Functions

func CreateHostPlugin

func CreateHostPlugin(ctx context.Context, pluginType string, opt ...Option) (pb.HostPluginServiceClient, func() error, error)

CreateHostPlugin takes in a type, parses the various options to look for a plugin matching that name, and returns a host plugin client, a cleanup function to execute on shutdown of the enclosing program, and an error.

func CreateStoragePlugin

func CreateStoragePlugin(ctx context.Context, pluginType string, opt ...Option) (pb.StoragePluginServiceClient, func() error, error)

CreateStoragePlugin takes in a type, parses the various options to look for a plugin matching that name, and returns a storage plugin client, a cleanup function to execute on shutdown of the enclosing program, and an error.

func NewHostPluginServiceServer

func NewHostPluginServiceServer(impl pb.HostPluginServiceServer) (*hostPlugin, error)

func NewPluginClient

func NewPluginClient(pluginPath, setName string, opt ...Option) (*plugin.Client, error)

func NewStoragePluginServiceServer

func NewStoragePluginServiceServer(impl pb.StoragePluginServiceServer) (*storagePlugin, error)

func ServePlugin

func ServePlugin(svc any, opt ...Option) error

ServeHostPlugin is a generic function to start serving a host plugin service as a plugin

Types

type Option

type Option func(*options) error

Option - a type that wraps an interface for compile-time safety but can contain an option for this package or for wrappers implementing this interface.

func WithLogger

func WithLogger(logger hclog.Logger) Option

WithLogger allows passing a logger to the plugin library for debugging

func WithPluginOptions

func WithPluginOptions(opts ...pluginutil.Option) Option

WithPluginOptions allows providing plugin-related (as opposed to configutil-related) options

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL