Documentation
¶
Index ¶
- type APIProvider
- func (d *APIProvider) DesiredGroupSize(groupName string) (int, error)
- func (d *APIProvider) DetachNode(opts *config.Ops, node *core_v1.Node) error
- func (d *APIProvider) OutdatedLaunchConfig(opts *config.Ops, node *core_v1.Node) (bool, error)
- func (d *APIProvider) PreDrain(opts *config.Ops, node *core_v1.Node) error
- func (d *APIProvider) Run(stopCh <-chan struct{})
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIProvider ¶
type APIProvider struct {
// contains filtered or unexported fields
}
APIProvider handles AWS specific logic
func NewAPIProvider ¶
func NewAPIProvider(pollPeriod time.Duration, filters map[string]string, nameTag string) (*APIProvider, error)
NewAPIProvider creates an AWS api instance
func (*APIProvider) DesiredGroupSize ¶
func (d *APIProvider) DesiredGroupSize(groupName string) (int, error)
DesiredGroupSize returns the size that the instanceGroup (ASG in AWS) should be. The deletion controller shouldn't delete a node whose instanceGroup is already depleted
func (*APIProvider) DetachNode ¶
func (*APIProvider) OutdatedLaunchConfig ¶
OutdatedLaunchConfig checks if a node has become outdated compared to the ASG configuration
func (*APIProvider) PreDrain ¶
PreDrain removes the node from its ASG and sets the delete behavior to terminate, instead of stop
func (*APIProvider) Run ¶
func (d *APIProvider) Run(stopCh <-chan struct{})
Run starts the polling loop that pulls information about the AWS ASGs
Click to show internal directories.
Click to hide internal directories.