loadbalancer

package
v0.0.0-...-0420b53 Latest Latest
Warning

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

Go to latest
Published: May 10, 2018 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LoadBalancer

type LoadBalancer struct {
	ID                       string
	Current                  *elbv2.LoadBalancer // current version of load balancer in AWS
	Desired                  *elbv2.LoadBalancer // desired version of load balancer in AWS
	TargetGroups             targetgroups.TargetGroups
	Listeners                listeners.Listeners
	DesiredIdleTimeout       *int64
	CurrentIdleTimeout       *int64
	CurrentTags              util.Tags
	DesiredTags              util.Tags
	CurrentAttributes        []*elbv2.LoadBalancerAttribute
	DesiredAttributes        []*elbv2.LoadBalancerAttribute
	CurrentPorts             portList
	DesiredPorts             portList
	CurrentInboundCidrs      util.Cidrs
	DesiredInboundCidrs      util.Cidrs
	CurrentWafAcl            *string
	DesiredWafAcl            *string
	CurrentManagedSG         *string
	DesiredManagedSG         *string
	CurrentManagedInstanceSG *string
	DesiredManagedInstanceSG *string
	Deleted                  bool // flag representing the LoadBalancer instance was fully deleted.
	// contains filtered or unexported fields
}

LoadBalancer contains the overarching configuration for the ALB

func NewCurrentLoadBalancer

func NewCurrentLoadBalancer(o *NewCurrentLoadBalancerOptions) (*LoadBalancer, error)

NewCurrentLoadBalancer returns a new loadbalancer.LoadBalancer based on an elbv2.LoadBalancer.

func NewDesiredLoadBalancer

func NewDesiredLoadBalancer(o *NewDesiredLoadBalancerOptions) *LoadBalancer

NewDesiredLoadBalancer returns a new loadbalancer.LoadBalancer based on the parameters provided.

func (*LoadBalancer) Reconcile

func (lb *LoadBalancer) Reconcile(rOpts *ReconcileOptions) []error

Reconcile compares the current and desired state of this LoadBalancer instance. Comparison results in no action, the creation, the deletion, or the modification of an AWS ELBV2 (ALB) to satisfy the ingress's current state.

func (*LoadBalancer) StripDesiredState

func (l *LoadBalancer) StripDesiredState()

StripDesiredState removes the DesiredLoadBalancer from the LoadBalancer

type NewCurrentLoadBalancerOptions

type NewCurrentLoadBalancerOptions struct {
	LoadBalancer          *elbv2.LoadBalancer
	Tags                  util.Tags
	ALBNamePrefix         string
	Logger                *log.Logger
	ManagedSG             *string
	ManagedInstanceSG     *string
	ManagedSGPorts        []int64
	ManagedSGInboundCidrs []*string
	ConnectionIdleTimeout *int64
	WafACL                *string
}

type NewDesiredLoadBalancerOptions

type NewDesiredLoadBalancerOptions struct {
	ALBNamePrefix        string
	Namespace            string
	IngressName          string
	ExistingLoadBalancer *LoadBalancer
	Logger               *log.Logger
	Annotations          *annotations.Annotations
	Tags                 util.Tags
	Attributes           []*elbv2.LoadBalancerAttribute
}

type ReconcileOptions

type ReconcileOptions struct {
	Eventf func(string, string, string, ...interface{})
}

Jump to

Keyboard shortcuts

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