Documentation ¶
Index ¶
Constants ¶
View Source
const CONTROLLER = "haproxy.org/ingress-controller"
Variables ¶
This section is empty.
Functions ¶
func HandleCfgMapAnnotations ¶
func HandleCfgMapAnnotations(k store.K8s, h haproxy.HAProxy, a annotations.Annotations)
Types ¶
type Ingress ¶
type Ingress struct {
// contains filtered or unexported fields
}
func New ¶
func New(resource *store.Ingress, class string, emptyClass bool, a annotations.Annotations) *Ingress
New returns an Ingress instance to handle the k8s ingress resource given in params. If the k8s ingress resource is not assigned to the controller (no matching IngressClass) then New will return nil
func (Ingress) GetAddresses ¶ added in v1.10.4
func (Ingress) Supported ¶ added in v1.10.4
func (i Ingress) Supported(k8s store.K8s, a annotations.Annotations) (supported bool)
Supported verifies if the IngressClass matches the ControllerClass and in such case returns true otherwise false
According to https://github.com/kubernetes/api/blob/master/networking/v1/types.go#L257 ingress.class annotation should have precedence over the IngressClass mechanism implemented in "networking.k8s.io".
func (*Ingress) Update ¶
func (i *Ingress) Update(k store.K8s, h haproxy.HAProxy, a annotations.Annotations)
Update processes a Kubernetes ingress resource and configures HAProxy accordingly by creating corresponding backend, route and HTTP rules.
func (*Ingress) UpdateStatus ¶
func (i *Ingress) UpdateStatus(client *kubernetes.Clientset) (err error)
Click to show internal directories.
Click to hide internal directories.