Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewAwsScalingProvider ¶
func NewAwsScalingProvider(workerPool *structs.WorkerPool) (structs.ScalingProvider, error)
NewAwsScalingProvider is a factory function that generates a new instance of the AwsScalingProvider.
Types ¶
type AwsScalingProvider ¶
type AwsScalingProvider struct {
AsgService *autoscaling.AutoScaling
}
AwsScalingProvider implements the ScalingProvider interface and provides a provider that is capable of performing scaling operations against Nomad worker pools running on AWS autoscaling groups.
The provider performs verification of each action it takes and provides automatic retry for scale-out operations that fail.
func (*AwsScalingProvider) SafetyCheck ¶
func (sp *AwsScalingProvider) SafetyCheck(workerPool *structs.WorkerPool) bool
SafetyCheck is an exported method that provides provider specific safety checks that will be used by core runner to determine if a scaling operation can be safely initiated.
func (*AwsScalingProvider) Scale ¶
func (sp *AwsScalingProvider) Scale(workerPool *structs.WorkerPool, config *structs.Config, nodeRegistry *structs.NodeRegistry) (err error)
Scale is the entry point method for performing scaling operations with the provider.