pruner

package
v0.0.0-...-8ff1004 Latest Latest
Warning

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

Go to latest
Published: Feb 15, 2019 License: AGPL-3.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Manifold

func Manifold(config ManifoldConfig) dependency.Manifold

Manifold returns a Manifold that encapsulates the statushistorypruner worker.

Types

type Config

type Config struct {
	Facade        Facade
	PruneInterval time.Duration
	Clock         clock.Clock
}

Config holds all necessary attributes to start a pruner worker.

func (*Config) Validate

func (c *Config) Validate() error

Validate will err unless basic requirements for a valid config are met.

type Facade

type Facade interface {
	Prune(time.Duration, int) error
	WatchForModelConfigChanges() (watcher.NotifyWatcher, error)
	ModelConfig() (*config.Config, error)
}

Facade represents an API that implements status history pruning.

type ManifoldConfig

type ManifoldConfig struct {
	APICallerName string
	EnvironName   string
	ClockName     string
	PruneInterval time.Duration
	NewWorker     func(Config) (worker.Worker, error)
	NewFacade     func(base.APICaller) Facade
}

ManifoldConfig describes the resources and configuration on which the statushistorypruner worker depends.

func (ManifoldConfig) Validate

func (config ManifoldConfig) Validate() error

Validate is called by start to check for bad configuration.

type PrunerWorker

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

Worker prunes status history records at regular intervals.

func New

func New(conf Config) PrunerWorker

New returns a worker.Worker for history Pruner.

func (*PrunerWorker) Catacomb

func (w *PrunerWorker) Catacomb() *catacomb.Catacomb

returns the prune worker's catacomb

func (*PrunerWorker) Config

func (w *PrunerWorker) Config() *Config

return the prune worker's config

func (*PrunerWorker) Kill

func (w *PrunerWorker) Kill()

Kill is defined on worker.Worker.

func (*PrunerWorker) Wait

func (w *PrunerWorker) Wait() error

Wait is defined on worker.Worker.

func (*PrunerWorker) Work

func (w *PrunerWorker) Work(getPrunerConfig func(*config.Config) (time.Duration, uint)) error

body of generic pruner loop

Jump to

Keyboard shortcuts

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