runner

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Jul 16, 2025 License: AGPL-3.0 Imports: 8 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

View Source
var HandshakeConfig = plugin.HandshakeConfig{
	ProtocolVersion:  1,
	MagicCookieKey:   "RUNNER_PLUGIN",
	MagicCookieValue: "AC755DCE-C118-481A-8EFA-18D8675D8122",
}
View Source
var PluginMap = map[string]plugin.Plugin{
	"runner": &RunnerGRPCPlugin{},
}

Functions

func ActivityProtoToSdk added in v0.1.0

func ActivityProtoToSdk(activity *proto.Activity) types.Activity

func ComponentProtoToSdk added in v0.2.0

func ComponentProtoToSdk(comp *proto.Component) types.Component

func EvidenceProtoToSdk added in v0.2.0

func EvidenceProtoToSdk(evidence *proto.Evidence) *types.Evidence

func EvidenceStatusStateFromEnum added in v0.2.0

func EvidenceStatusStateFromEnum(in proto.EvidenceStatusState) string

func InventoryItemProtoToSdk added in v0.2.0

func InventoryItemProtoToSdk(in *proto.InventoryItem) types.InventoryItem

func LinkProtoToSdk added in v0.1.0

func LinkProtoToSdk(link *proto.Link) types.Link

func NewApiHelper added in v0.1.0

func NewApiHelper(logger hclog.Logger, client *sdk.Client, agentLabels map[string]string) *apiHelper

func OriginActorProtoToSdk added in v0.1.0

func OriginActorProtoToSdk(actor *proto.OriginActor) types.OriginActor

func OriginProtoToSdk added in v0.1.0

func OriginProtoToSdk(origin *proto.Origin) types.Origin

func PropertyProtoToSdk added in v0.1.0

func PropertyProtoToSdk(property *proto.Property) types.Property

func ProtoToSdk added in v0.2.0

func ProtoToSdk[I any, O any](ins []I, transformer func(I) O) *[]O

func ProtocolProtoToSdk added in v0.2.0

func ProtocolProtoToSdk(protocol *proto.Protocol) types.Protocol

func StepProtoToSdk added in v0.1.0

func StepProtoToSdk(step *proto.Step) types.Step

func SubjectProtoToSdk added in v0.2.0

func SubjectProtoToSdk(subject *proto.Subject) types.Subject

func SubjectTypeFromEnum added in v0.2.0

func SubjectTypeFromEnum(in proto.SubjectType) string

Types

type ApiHelper added in v0.0.13

type ApiHelper interface {
	CreateEvidence(context.Context, []*proto.Evidence) error
}

type GRPCApiHelperClient added in v0.0.13

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

func (*GRPCApiHelperClient) CreateEvidence added in v0.2.0

func (m *GRPCApiHelperClient) CreateEvidence(ctx context.Context, evidence []*proto.Evidence) error

type GRPCApiHelperServer added in v0.0.13

type GRPCApiHelperServer struct {
	// This is the real implementation
	Impl ApiHelper
}

func (*GRPCApiHelperServer) CreateEvidence added in v0.2.0

type GRPCClient

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

GRPCClient is an implementation of KV that talks over RPC.

func (*GRPCClient) Configure

func (m *GRPCClient) Configure(request *proto.ConfigureRequest) (*proto.ConfigureResponse, error)

func (*GRPCClient) Eval

func (m *GRPCClient) Eval(request *proto.EvalRequest, a ApiHelper) (*proto.EvalResponse, error)

type GRPCServer

type GRPCServer struct {
	Impl Runner
	// contains filtered or unexported fields
}

func (*GRPCServer) Configure

func (*GRPCServer) Eval

type Runner

type Runner interface {
	Configure(request *proto.ConfigureRequest) (*proto.ConfigureResponse, error)
	Eval(request *proto.EvalRequest, a ApiHelper) (*proto.EvalResponse, error)
}

type RunnerGRPCPlugin

type RunnerGRPCPlugin struct {
	plugin.Plugin

	// Impl Injection
	Impl Runner
}

func (*RunnerGRPCPlugin) GRPCClient

func (p *RunnerGRPCPlugin) GRPCClient(ctx context.Context, broker *plugin.GRPCBroker, c *grpc.ClientConn) (interface{}, error)

func (*RunnerGRPCPlugin) GRPCServer

func (p *RunnerGRPCPlugin) GRPCServer(broker *plugin.GRPCBroker, s *grpc.Server) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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