types

package
v0.92.0 Latest Latest
Warning

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

Go to latest
Published: Jun 6, 2026 License: GPL-3.0 Imports: 2 Imported by: 0

Documentation

Overview

Package types provides shared plugin types with zero internal dependencies to avoid import cycles.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GitRepoConfig

type GitRepoConfig struct {
	URL          string `json:"url" yaml:"url"`
	Ref          string `json:"ref" yaml:"ref"`
	PollInterval string `json:"poll_interval" yaml:"poll_interval"`
}

GitRepoConfig is a git repository source.

type PluginConfig

type PluginConfig struct {
	Enabled      bool                       `json:"enabled" yaml:"enabled"`
	Sources      []SourceConfig             `json:"sources" yaml:"sources"`
	Config       map[string]json.RawMessage `json:"config" yaml:"config"`
	HotReload    bool                       `json:"hot_reload" yaml:"hot_reload"`
	DrainTimeout time.Duration              `json:"drain_timeout" yaml:"drain_timeout"`
	MaxPlugins   int                        `json:"max_plugins" yaml:"max_plugins"`
}

PluginConfig is the top-level plugins section in flowbot.yaml.

func DefaultPluginConfig

func DefaultPluginConfig() *PluginConfig

DefaultPluginConfig returns the default plugin configuration.

type SourceConfig

type SourceConfig struct {
	Type         string          `json:"type" yaml:"type"`
	Path         string          `json:"path" yaml:"path"`
	Registry     string          `json:"registry" yaml:"registry"`
	Repos        []GitRepoConfig `json:"repos" yaml:"repos"`
	PollInterval string          `json:"poll_interval" yaml:"poll_interval"`
}

SourceConfig defines a plugin distribution source entry.

Jump to

Keyboard shortcuts

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