Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ErrSecretForAuth = fmt.Errorf("Secret is used for authentication")
ErrSecretForAuth error to indicate a secret is used for authentication
Functions ¶
This section is empty.
Types ¶
type ConfigMapLister ¶
ConfigMapLister makes a Store that lists Configmaps.
type EndpointLister ¶
EndpointLister makes a Store that lists Endpoints.
func (*EndpointLister) GetServiceEndpoints ¶
GetServiceEndpoints returns the endpoints of a service, matched on service name.
type Event ¶
type Event struct { Type EventType Obj interface{} }
Event holds the context of an event
type EventType ¶
type EventType string
EventType type of event associated with an informer
const ( // CreateEvent event associated with new objects in an informer CreateEvent EventType = "CREATE" // UpdateEvent event associated with an object update in an informer UpdateEvent EventType = "UPDATE" // DeleteEvent event associated when an object is removed from an informer DeleteEvent EventType = "DELETE" // ConfigurationEvent event associated when a controller configuration object is created or updated ConfigurationEvent EventType = "CONFIGURATION" )
type Informer ¶
type Informer struct { Ingress cache.SharedIndexInformer Endpoint cache.SharedIndexInformer Service cache.SharedIndexInformer Secret cache.SharedIndexInformer ConfigMap cache.SharedIndexInformer }
Informer defines the required SharedIndexInformers that interact with the API server.
type IngressAnnotationsLister ¶
IngressAnnotationsLister makes a Store that lists annotations in Ingress rules.
type IngressLister ¶
IngressLister makes a Store that lists Ingress.
func (IngressLister) ByKey ¶
func (il IngressLister) ByKey(key string) (*extensions.Ingress, error)
ByKey searches for an ingress in the local ingress Store
type Lister ¶
type Lister struct { Ingress IngressLister Service ServiceLister Endpoint EndpointLister Secret SecretLister ConfigMap ConfigMapLister IngressAnnotation IngressAnnotationsLister }
Lister returns the stores for ingresses, services, endpoints, secrets and configmaps.
type ObjectRefMap ¶
type ObjectRefMap interface { Insert(consumer string, ref ...string) Delete(consumer string) Len() int Has(ref string) bool HasConsumer(consumer string) bool Reference(ref string) []string ReferencedBy(consumer string) []string }
ObjectRefMap is a map of references from object(s) to object (1:n). It is used to keep track of which data objects (Secrets) are used within Ingress objects.
func NewObjectRefMap ¶
func NewObjectRefMap() ObjectRefMap
NewObjectRefMap returns a new ObjectRefMap.
type SSLCertTracker ¶
type SSLCertTracker struct {
cache.ThreadSafeStore
}
SSLCertTracker holds a store of referenced Secrets in Ingress rules
func NewSSLCertTracker ¶
func NewSSLCertTracker() *SSLCertTracker
NewSSLCertTracker creates a new SSLCertTracker store
type SecretLister ¶
SecretLister makes a Store that lists Secrets.
type ServiceLister ¶
ServiceLister makes a Store that lists Services.
type Storer ¶
type Storer interface { // GetBackendConfiguration returns the nginx configuration stored in a configmap GetBackendConfiguration() ngx_config.Configuration // GetConfigMap returns a ConfigmMap using the namespace and name as key GetConfigMap(key string) (*corev1.ConfigMap, error) // GetSecret returns a Secret using the namespace and name as key GetSecret(key string) (*corev1.Secret, error) // GetService returns a Service using the namespace and name as key GetService(key string) (*corev1.Service, error) GetServiceEndpoints(svc *corev1.Service) (*corev1.Endpoints, error) // GetSecret returns an Ingress using the namespace and name as key GetIngress(key string) (*extensions.Ingress, error) // ListIngresses returns the list of Ingresses ListIngresses() []*extensions.Ingress // GetIngressAnnotations returns the annotations associated to an Ingress GetIngressAnnotations(ing *extensions.Ingress) (*annotations.Ingress, error) // GetLocalSSLCert returns the local copy of a SSLCert GetLocalSSLCert(name string) (*ingress.SSLCert, error) // ListLocalSSLCerts returns the list of local SSLCerts ListLocalSSLCerts() []*ingress.SSLCert // GetAuthCertificate resolves a given secret name into an SSL certificate. // The secret must contain 3 keys named: // ca.crt: contains the certificate chain used for authentication GetAuthCertificate(string) (*resolver.AuthSSLCert, error) // GetDefaultBackend returns the default backend configuration GetDefaultBackend() defaults.Backend // Run initiates the synchronization of the controllers Run(stopCh chan struct{}) }
Storer is the interface that wraps the required methods to gather information about ingresses, services, secrets and ingress annotations.