Documentation ¶
Index ¶
- func NewProvisioner(yml []byte) providers.Provider
- type Config
- type Provisioner
- func (p *Provisioner) Annotate(id string, l labels.Labels) error
- func (p *Provisioner) Apply() error
- func (p *Provisioner) AwaitReadiness() chan error
- func (p *Provisioner) Cancel() error
- func (p *Provisioner) Clone() error
- func (p *Provisioner) ProbeReadiness() (bool, error)
- func (p *Provisioner) Read() error
- func (p *Provisioner) Select() (target.Selection, error)
- func (p *Provisioner) Stop() error
- func (p *Provisioner) Teardown() error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewProvisioner ¶
NewProvisioner initializes a provisioner with defaults
Types ¶
type Config ¶
type Config struct { // InstanceType is the cluster compute resource InstanceType string // ClusterSize is the size of the cluster ClusterSize int64 }
Config holds allowed values for an implemented resource provider. Any value outside of this config is unable to be modified during an experiment
type Provisioner ¶
type Provisioner struct { // Config holds our internal configuration options // for the instance of the provisioner Config Config // RemoteConfig identifies the RemoteConfig *elasticache.CacheCluster }
Provisioner implements an elasticache provisioner
func (*Provisioner) Annotate ¶
func (p *Provisioner) Annotate(id string, l labels.Labels) error
Annotate should implement applying labels or tags for a given resource type
func (*Provisioner) Apply ¶
func (p *Provisioner) Apply() error
Apply runs the provisioner end to end, so calls read and clone
func (*Provisioner) AwaitReadiness ¶
func (p *Provisioner) AwaitReadiness() chan error
AwaitReadiness should be implemented to detect when a provisioner has finished setting up a variant and can begin using it in an experiment
func (*Provisioner) Cancel ¶
func (p *Provisioner) Cancel() error
Cancel will abort and running or submitted provisioner
func (*Provisioner) ProbeReadiness ¶
func (p *Provisioner) ProbeReadiness() (bool, error)
ProbeReadiness checks that the provisioned resource is available and ready to be included in a live experiment
func (*Provisioner) Read ¶
func (p *Provisioner) Read() error
Read fetches and stores the configuration for an existing elasticache cluster. What is read of the existing resource acts as the template/configuration to implement a clone via creating a new resource with the existing output as input for a variant
func (*Provisioner) Select ¶
func (p *Provisioner) Select() (target.Selection, error)
Select is similar to Read yet copies a selection of resources based on the Target configuration
func (*Provisioner) Stop ¶
func (p *Provisioner) Stop() error
Stop will stop any running provisioner
func (*Provisioner) Teardown ¶
func (p *Provisioner) Teardown() error
Teardown eradicates any resource that has been provisioned as part of a variant