plugin

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jun 15, 2022 License: BSD-3-Clause Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const Name = "nodeProcess"

Variables

View Source
var (
	Handshake = plugin.HandshakeConfig{
		ProtocolVersion:  2,
		MagicCookieKey:   "NODE_PROCESS_PLUGIN",
		MagicCookieValue: "dynamic",
	}

	// PluginMap is the map of plugins we can dispense.
	PluginMap = map[string]plugin.Plugin{
		Name: &appPlugin{},
	}
)

Functions

func Exec

func Exec(path string, args []string, forwardIO bool) (app.App, *plugin.Client, error)

func New

func New(app app.App) plugin.Plugin

New will be called by the server side of the plugin to pass into the server side PluginMap for dispatching.

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

func NewClient

func NewClient(node pluginpb.NodeClient) *Client

NewServer returns an app instance connected to a remote app instance

func (*Client) ExitCode

func (c *Client) ExitCode() (int, error)

func (*Client) Start

func (c *Client) Start() error

func (*Client) Stop

func (c *Client) Stop() error

type Server

type Server struct {
	pluginpb.UnsafeNodeServer
	// contains filtered or unexported fields
}

Server wraps a node so it can be served with the hashicorp plugin harness

func NewServer

func NewServer(app app.App) *Server

func (*Server) ExitCode

func (*Server) Start

func (*Server) Stop

Jump to

Keyboard shortcuts

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