albingress

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: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ID

func ID(namespace, name string) string

ID returns an ingress id based off of a namespace and name

Types

type ALBIngress

type ALBIngress struct {
	ID string

	ManagedSecurityGroups util.AWSStringSlice // sgs managed by this controller rather than annotation
	LoadBalancer          *loadbalancer.LoadBalancer

	Reconciled bool
	// contains filtered or unexported fields
}

ALBIngress contains all information above the cluster, ingress resource, and AWS resources needed to assemble an ALB, TargetGroup, Listener and Rules.

func NewALBIngress

func NewALBIngress(o *NewALBIngressOptions) *ALBIngress

NewALBIngress returns a minimal ALBIngress instance with a generated name that allows for lookup when new ALBIngress objects are created to determine if an instance of that ALBIngress already exists.

func NewALBIngressFromAWSLoadBalancer

func NewALBIngressFromAWSLoadBalancer(o *NewALBIngressFromAWSLoadBalancerOptions) (*ALBIngress, error)

NewALBIngressFromAWSLoadBalancer builds ALBIngress's based off of an elbv2.LoadBalancer

func NewALBIngressFromIngress

func NewALBIngressFromIngress(o *NewALBIngressFromIngressOptions) *ALBIngress

NewALBIngressFromIngress builds ALBIngress's based off of an Ingress object https://godoc.org/k8s.io/kubernetes/pkg/apis/extensions#Ingress. Creates a new ingress object, and looks up to see if a previous ingress object with the same id is known to the ALBController. If there is an issue and the ingress is invalid, nil is returned.

func (*ALBIngress) Eventf

func (a *ALBIngress) Eventf(eventtype, reason, messageFmt string, args ...interface{})

Eventf writes an event to the ALBIngress's Kubernetes ingress resource

func (*ALBIngress) Hostnames

func (a *ALBIngress) Hostnames() ([]api.LoadBalancerIngress, error)

Hostname returns the AWS hostnames for the load balancer

func (*ALBIngress) Name

func (a *ALBIngress) Name() string

Name returns the name of the ingress

func (*ALBIngress) Namespace

func (a *ALBIngress) Namespace() string

Namespace returns the namespace of the ingress

func (*ALBIngress) Reconcile

func (a *ALBIngress) Reconcile(rOpts *ReconcileOptions)

Reconcile begins the state sync for all AWS resource satisfying this ALBIngress instance.

func (*ALBIngress) StripDesiredState

func (a *ALBIngress) StripDesiredState()

StripDesiredState strips all desired objects from an ALBIngress

func (*ALBIngress) Tags

func (a *ALBIngress) Tags() []*elbv2.Tag

Tags returns an elbv2.Tag slice of standard tags for the ingress AWS resources

type NewALBIngressFromAWSLoadBalancerOptions

type NewALBIngressFromAWSLoadBalancerOptions struct {
	LoadBalancer          *elbv2.LoadBalancer
	ALBNamePrefix         string
	Recorder              record.EventRecorder
	ManagedSG             *string
	ManagedSGInboundCidrs []*string
	ManagedSGPorts        []int64
	ManagedInstanceSG     *string
	ConnectionIdleTimeout *int64
	WafACL                *string
}

type NewALBIngressFromIngressOptions

type NewALBIngressFromIngressOptions struct {
	Ingress               *extensions.Ingress
	ExistingIngress       *ALBIngress
	ClusterName           string
	ALBNamePrefix         string
	GetServiceNodePort    func(string, int32) (*int64, error)
	GetNodes              func() util.AWSStringSlice
	Recorder              record.EventRecorder
	ConnectionIdleTimeout *int64
}

type NewALBIngressOptions

type NewALBIngressOptions struct {
	Namespace     string
	Name          string
	ClusterName   string
	ALBNamePrefix string
	Ingress       *extensions.Ingress
	Recorder      record.EventRecorder
	Reconciled    bool
}

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