 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewGroupPlugin ¶
func NewGroupPlugin( instancePlugins InstancePluginLookup, flavorPlugins FlavorPluginLookup, pollInterval time.Duration, maxParallelNum uint) group.Plugin
NewGroupPlugin creates a new group plugin.
Types ¶
type FlavorPluginLookup ¶
type FlavorPluginLookup func(plugin_base.Name) (flavor.Plugin, error)
FlavorPluginLookup helps with looking up a flavor plugin by name
type InstancePluginLookup ¶
type InstancePluginLookup func(plugin_base.Name) (instance.Plugin, error)
InstancePluginLookup helps with looking up an instance plugin by name
type Scaled ¶
type Scaled interface {
	// CreateOne creates a single instance in the scaled group.  Parameters may be provided to customize behavior
	// of the instance.
	CreateOne(id *instance.LogicalID)
	// Health inspects the current health state of an instance.
	Health(inst instance.Description) flavor.Health
	// Destroy destroys a single instance.
	Destroy(inst instance.Description)
	// List returns all instances in the group.
	List() ([]instance.Description, error)
	// Label makes sure all instances in the group are labelled.
	Label() error
}
    Scaled is a collection of instances that can be scaled up and down.
type Supervisor ¶
type Supervisor interface {
	util.RunStop
	Size() uint
	PlanUpdate(scaled Scaled, settings groupSettings, newSettings groupSettings) (updatePlan, error)
}
    Supervisor watches over a group of instances.
func NewQuorum ¶
func NewQuorum(scaled Scaled, logicalIDs []instance.LogicalID, pollInterval time.Duration) Supervisor
NewQuorum creates a supervisor for a group of instances operating in a quorum.
func NewScalingGroup ¶
func NewScalingGroup(scaled Scaled, size uint, pollInterval time.Duration, maxParallelNum uint) Supervisor
NewScalingGroup creates a supervisor that monitors a group of instances on a provisioner, attempting to maintain a desired size.
       Source Files
      ¶
      Source Files
      ¶
    
   Click to show internal directories. 
   Click to hide internal directories.