scaler

package
v1.7.0 Latest Latest
Warning

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

Go to latest
Published: Oct 12, 2023 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RetrieveFromParameterStore

func RetrieveFromParameterStore(sess *session.Session, key string) (string, error)

Types

type ASGDriver added in v1.2.0

type ASGDriver struct {
	Name                              string
	Sess                              *session.Session
	MaxDescribeScalingActivitiesPages int
}

func (*ASGDriver) Describe added in v1.2.0

func (a *ASGDriver) Describe() (AutoscaleGroupDetails, error)

func (*ASGDriver) GetAutoscalingActivities added in v1.2.0

func (a *ASGDriver) GetAutoscalingActivities(ctx context.Context, nextToken *string) (*autoscaling.DescribeScalingActivitiesOutput, error)

func (*ASGDriver) GetLastScalingInAndOutActivity added in v1.2.0

func (a *ASGDriver) GetLastScalingInAndOutActivity(ctx context.Context, findScaleOut, findScaleIn bool) (*autoscaling.Activity, *autoscaling.Activity, error)

func (*ASGDriver) SetDesiredCapacity added in v1.2.0

func (a *ASGDriver) SetDesiredCapacity(count int64) error

type AutoscaleGroupDetails

type AutoscaleGroupDetails struct {
	Pending      int64
	DesiredCount int64
	MinSize      int64
	MaxSize      int64
}

type Params

type Params struct {
	AutoScalingGroupName     string
	AgentsPerInstance        int
	BuildkiteAgentToken      string
	BuildkiteQueue           string
	UserAgent                string
	PublishCloudWatchMetrics bool
	DryRun                   bool
	IncludeWaiting           bool
	ScaleInParams            ScaleParams
	ScaleOutParams           ScaleParams
	InstanceBuffer           int
	ScaleOnlyAfterAllEvent   bool
}

type ScaleParams

type ScaleParams struct {
	Disable        bool
	CooldownPeriod time.Duration
	Factor         float64
	LastEvent      time.Time
}

type Scaler

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

func NewScaler

func NewScaler(client *buildkite.Client, sess *session.Session, params Params) (*Scaler, error)

func (*Scaler) LastScaleIn

func (s *Scaler) LastScaleIn() time.Time

func (*Scaler) LastScaleOut

func (s *Scaler) LastScaleOut() time.Time

func (*Scaler) Run

func (s *Scaler) Run() (time.Duration, error)

type ScalingCalculator added in v1.1.0

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

func (*ScalingCalculator) DesiredCount added in v1.1.0

func (sc *ScalingCalculator) DesiredCount(metrics *buildkite.AgentMetrics, asg *AutoscaleGroupDetails) int64

Jump to

Keyboard shortcuts

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