pluginmanager

package
v0.15.2 Latest Latest
Warning

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

Go to latest
Published: Jul 13, 2022 License: AGPL-3.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const PluginManagerStructVersion = 20220411

Variables

This section is empty.

Functions

func FindPluginFolder added in v0.11.1

func FindPluginFolder(remoteSchema string) (string, error)

FindPluginFolder searches for a folder which when hashed would match the schema

func GetPluginManager added in v0.11.1

func GetPluginManager() (pluginshared.PluginManager, error)

GetPluginManager connects to a running plugin manager

func GetPluginPath added in v0.11.1

func GetPluginPath(plugin, pluginShortName string) (string, error)

func PluginFQNToSchemaName added in v0.11.1

func PluginFQNToSchemaName(pluginFQN string) string

PluginFQNToSchemaName convert a full plugin name to a schema name schemas in postgres are limited to 63 chars - the name may be longer than this, in which case trim the length and add a hash to the end to make unique

func StartNewInstance added in v0.11.1

func StartNewInstance(steampipeExecutablePath string) error

StartNewInstance loads the plugin manager state, stops any previous instance and instantiates a new plugin manager

func Stop added in v0.11.1

func Stop() error

Stop loads the plugin manager state and if a running instance is found, stop it

Types

type PluginManager added in v0.11.1

type PluginManager struct {
	pb.UnimplementedPluginManagerServer

	Plugins map[string]*runningPlugin
	// contains filtered or unexported fields
}

PluginManager is the real implementation of grpc.PluginManager

func NewPluginManager added in v0.11.1

func NewPluginManager(connectionConfig map[string]*pb.ConnectionConfig, logger hclog.Logger) *PluginManager

func (*PluginManager) Get added in v0.11.1

func (m *PluginManager) Get(req *pb.GetRequest) (*pb.GetResponse, error)

func (*PluginManager) Serve added in v0.11.1

func (m *PluginManager) Serve()

func (*PluginManager) SetConnectionConfigMap added in v0.11.1

func (m *PluginManager) SetConnectionConfigMap(configMap map[string]*pb.ConnectionConfig)

func (*PluginManager) Shutdown added in v0.11.1

func (m *PluginManager) Shutdown(req *pb.ShutdownRequest) (resp *pb.ShutdownResponse, err error)

type PluginManagerClient added in v0.11.1

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

PluginManagerClient is the client used by steampipe to access the plugin manager

func NewPluginManagerClient added in v0.11.1

func NewPluginManagerClient(pluginManagerState *PluginManagerState) (*PluginManagerClient, error)

func (*PluginManagerClient) Get added in v0.11.1

func (c *PluginManagerClient) Get(req *pb.GetRequest) (res *pb.GetResponse, err error)

func (*PluginManagerClient) Shutdown added in v0.11.1

func (c *PluginManagerClient) Shutdown(req *pb.ShutdownRequest) (res *pb.ShutdownResponse, err error)

type PluginManagerState added in v0.11.1

type PluginManagerState struct {
	Protocol        plugin.Protocol `json:"protocol"`
	ProtocolVersion int             `json:"protocol_version"`
	Addr            *pb.SimpleAddr  `json:"addr"`
	Pid             int             `json:"pid"`
	// path to the steampipe executable
	Executable string `json:"executable"`
	// is the plugin manager running
	Running       bool  `json:"-"`
	StructVersion int64 `json:"struct_version"`
}

func LoadPluginManagerState added in v0.11.1

func LoadPluginManagerState() (*PluginManagerState, error)

func NewPluginManagerState added in v0.11.1

func NewPluginManagerState(executable string, reattach *plugin.ReattachConfig) *PluginManagerState

func (*PluginManagerState) Save added in v0.11.1

func (s *PluginManagerState) Save() error

Directories

Path Synopsis
grpc
shared
Package shared contains shared data between the host and plugins.
Package shared contains shared data between the host and plugins.

Jump to

Keyboard shortcuts

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