Documentation
¶
Overview ¶
Package sdk provides the entrypoint to execute a plugin
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Option ¶
type Option func(*config)
Option modifies config. Zero or more can be passed to Main.
func WithPipelinePlugin ¶
WithPipelinePlugin adds the specified pipeline plugin
func WithPluginDescription ¶
WithPluginDescription sets the description of the plugin
type ReattachConfig ¶
type ReattachConfig struct {
Addr ReattachConfigAddr
Protocol string
ProtocolVersion int
Pid int
Test bool
}
ReattachConfig holds the information Phobos needs to be able to attach itself to a plugin process, so it can drive the process.
func DebugServe ¶
func DebugServe(ctx context.Context, opts ...Option) (ReattachConfig, <-chan struct{}, error)
DebugServe starts a plugin server in debug mode; this should only be used when the plugin will manage its own lifecycle. It is not recommended for normal usage; Serve is the correct function for that.
type ReattachConfigAddr ¶
ReattachConfigAddr is a JSON-encoding friendly version of net.Addr.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package main provides the entrypoint for the CLI tool.
|
Package main provides the entrypoint for the CLI tool. |
|
framework
|
|
|
pipeline
Package pipeline is intended to be used by plugin developers to create new pipeline plugins
|
Package pipeline is intended to be used by plugin developers to create new pipeline plugins |
|
internal
|
|
|
cmd
Package cmd provides the internal implementation for the CLI tool.
|
Package cmd provides the internal implementation for the CLI tool. |
|
funcspec
Package funcspec contains functions for building function specs
|
Package funcspec contains functions for building function specs |
|
plugin
Package plugin contains core GRPC plugin functionality
|
Package plugin contains core GRPC plugin functionality |
|
plugin/terminal
Package terminal provides the GRPC terminal implementations
|
Package terminal provides the GRPC terminal implementations |
|
pluginargs
Package pluginargs contains base args that can be passed to plugin functions
|
Package pluginargs contains base args that can be passed to plugin functions |
|
stdio
Package stdio provides concurrency controls around creating the plugin stdio
|
Package stdio provides concurrency controls around creating the plugin stdio |
|
testproto
Package testproto contains some protobuf defintions that are used in internal tests.
|
Package testproto contains some protobuf defintions that are used in internal tests. |
|
internal-shared
|
|
|
component
Package component exposes the component interfaces
|
Package component exposes the component interfaces |
|
pluginclient
Package pluginclient is used to initialize a new plugin instance
|
Package pluginclient is used to initialize a new plugin instance |
|
protomappers
Package protomappers contains mappers for converting to/from proto types
|
Package protomappers contains mappers for converting to/from proto types |
|
schema
Package schema defines the schema format for plugins
|
Package schema defines the schema format for plugins |
|
proto
|
|
|
Package terminal is used by plugins to read and write to a terminal UI.
|
Package terminal is used by plugins to read and write to a terminal UI. |
Click to show internal directories.
Click to hide internal directories.