Versions in this module Expand all Collapse all v0 v0.2.0 Aug 29, 2023 v0.1.0 Aug 26, 2023 Changes in this version + var ErrInvalidObjectPath = errors.New("invalid object path") + func Run(name, version string, opts ...Option) error + type Application struct + Controller *Controller + Logger *slog.Logger + Name string + Settings *config.Set + Version string + func Bootstrap(name, version string, opts ...Option) *Application + func FromContext(ctx context.Context) *Application + func New(name, version string, opts ...Option) *Application + func (a *Application) Exit(err error) + func (a *Application) Install(ctx context.Context) error + func (a *Application) Run(ctx context.Context) error + func (a *Application) String() string + func (a *Application) Validate(ctx context.Context) error + type Configurable interface + Config func() (interface{}, error) + type ConfigurableNotify interface + ConfigSet func(interface{}) error + type Configuration struct + func (Configuration) EvalContext(ctx context.Context) *hcl.EvalContext + func (c Configuration) Decode(ctx context.Context, filename string, src []byte) hcl.Diagnostics + func (c Configuration) DecodeFile(ctx context.Context, filename string) hcl.Diagnostics + type Controller struct + func (c *Controller) Add(name string, m Module) + func (c *Controller) Get(name string) Module + func (c *Controller) Range(cb func(name string, module Module) bool) + func (c *Controller) Remove(name string) + func (c *Controller) Run(ctx context.Context) error + type Error struct + Errors []error + func (e *Error) Append(err error) *Error + func (e Error) Err() error + func (e Error) Error() string + func (e Error) Unwrap() error + type Initializer interface + Initialize func(ctx context.Context) (context.Context, error) + type Installer interface + Install func(ctx context.Context) error + type Module interface + Start func(ctx context.Context) error + Stop func(ctx context.Context) error + type Option func(app *Application) + func WithConfigFile(filename string) Option + func WithLogger(logger *slog.Logger) Option + func WithModule(name string, m Module) Option + type PostStarter interface + PostStart func(ctx context.Context) error + type PreStarter interface + PreStart func(ctx context.Context) error