Documentation
¶
Overview ¶
Package plugin defines the shared go-plugin transport for Runtime Protocol v1.
Index ¶
Constants ¶
const ( // Name is the logical registry key shared by every runtime implementation. Name = "devsy-runtime" // ProtocolVersion selects the breaking go-plugin application generation. ProtocolVersion = 1 )
Variables ¶
This section is empty.
Functions ¶
func ClientPlugins ¶
ClientPlugins returns a new registry for gRPC-only clients. The host owns process launch, trusted executable resolution, cancellation, and Kill/reap.
func Handshake ¶
func Handshake() hplugin.HandshakeConfig
Handshake returns a fresh configuration; the cookie is an identity check, not authentication or a security boundary.
Types ¶
type Runtime ¶
type Runtime struct {
hplugin.NetRPCUnsupportedPlugin
Implementation runtimev1.RuntimeDriverServer
}
Runtime bridges one RuntimeDriver implementation to the gRPC-only plugin ABI. Server processes set Implementation; client registries leave it unset.
func (*Runtime) GRPCClient ¶
func (*Runtime) GRPCClient( _ context.Context, _ *hplugin.GRPCBroker, conn *grpc.ClientConn, ) (any, error)
GRPCClient binds the generated client to the connection owned by go-plugin.
func (*Runtime) GRPCServer ¶
GRPCServer is called once by go-plugin; the serving executable must supply Implementation before registration.