pipeline

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Sep 26, 2024 License: MPL-2.0 Imports: 1 Imported by: 0

Documentation

Overview

Package pipeline is intended to be used by plugin developers to create new pipeline plugins

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Action

type Action interface {
	Metadata() *ActionMetadata
	ExecuteFunc() interface{}
}

Action represents an action that the pipeline plugin supports

type ActionInput

type ActionInput interface {
	IsActionInput()
}

ActionInput is an argument type that is used by plugins as a vehicle for accepting action input data. A struct implementing this interface indicates to the plugin system that the struct should not be included in a grpc advertised dynamic function spec, because it will be injected on the plugin side, not supplied from core over GRPC.

type ActionMetadata

type ActionMetadata struct {
	Name        string
	Description string
	Group       string
}

ActionMetadata includes the action name and description which is used for documentation

type ConfigurableAction

type ConfigurableAction interface {
	Configure(data interface{}, logger hclog.Logger) error
}

ConfigurableAction is an action that can accept pipeline data

type Metadata

type Metadata struct {
	Name        string
	Description string
}

Metadata includes the pipeline name and description which is used for documentation

type Plugin

type Plugin interface {
	Config() (any, error)
	ValidateConfig(config any) error
	PluginData(logger hclog.Logger) (any, error)
	GetActions() []func() Action
}

Plugin is a type of plugin which provides actions and data sources

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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