Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AnnotationReader ¶ added in v0.13.0
type AnnotationReader interface {
ReadAnnotations(backend *hatypes.Backend, services []*api.Service, pathLinks []hatypes.PathLink)
}
AnnotationReader ...
type Cache ¶
type Cache interface { ExternalNameLookup(externalName string) ([]net.IP, error) GetIngress(ingressName string) (*networking.Ingress, error) GetIngressList() ([]*networking.Ingress, error) GetIngressClass(className string) (*networking.IngressClass, error) GetGatewayA1(gatewayName string) (*gatewayv1alpha1.Gateway, error) GetGatewayA1List() ([]*gatewayv1alpha1.Gateway, error) GetHTTPRouteA1List(namespace string, match map[string]string) ([]*gatewayv1alpha1.HTTPRoute, error) GetGatewayMap() (map[string]*gatewayv1alpha2.Gateway, error) GetHTTPRouteList() ([]*gatewayv1alpha2.HTTPRoute, error) GetService(defaultNamespace, serviceName string) (*api.Service, error) GetEndpoints(service *api.Service) (*api.Endpoints, error) GetEndpointSlices(service *api.Service) ([]*discoveryv1.EndpointSlice, error) GetConfigMap(configMapName string) (*api.ConfigMap, error) GetNamespace(name string) (*api.Namespace, error) GetTerminatingPods(service *api.Service, track []TrackingRef) ([]*api.Pod, error) GetPod(podName string) (*api.Pod, error) GetPodNamespace() string GetTLSSecretPath(defaultNamespace, secretName string, track []TrackingRef) (CrtFile, error) GetCASecretPath(defaultNamespace, secretName string, track []TrackingRef) (ca, crl File, err error) GetDHSecretPath(defaultNamespace, secretName string) (File, error) GetPasswdSecretContent(defaultNamespace, secretName string, track []TrackingRef) ([]byte, error) SwapChangedObjects() *ChangedObjects }
Cache ...
type ChangedObjects ¶ added in v0.11.1
type ChangedObjects struct {
//
GlobalConfigMapDataCur, GlobalConfigMapDataNew map[string]string
//
TCPConfigMapDataCur, TCPConfigMapDataNew map[string]string
//
IngressesDel, IngressesUpd, IngressesAdd []*networking.Ingress
//
IngressClassesDel, IngressClassesUpd, IngressClassesAdd []*networking.IngressClass
//
GatewaysA1Del, GatewaysA1Upd, GatewaysA1Add []*gatewayv1alpha1.Gateway
//
GatewayClassesA1Del, GatewayClassesA1Upd, GatewayClassesA1Add []*gatewayv1alpha1.GatewayClass
//
HTTPRoutesA1Del, HTTPRoutesA1Upd, HTTPRoutesA1Add []*gatewayv1alpha1.HTTPRoute
//
GatewaysDel, GatewaysUpd, GatewaysAdd []*gatewayv1alpha2.Gateway
//
GatewayClassesDel, GatewayClassesUpd, GatewayClassesAdd []*gatewayv1alpha2.GatewayClass
//
HTTPRoutesDel, HTTPRoutesUpd, HTTPRoutesAdd []*gatewayv1alpha2.HTTPRoute
//
EndpointsNew []*api.Endpoints
//
EndpointSlicesUpd []*discoveryv1.EndpointSlice
//
ServicesDel, ServicesUpd, ServicesAdd []*api.Service
//
SecretsDel, SecretsUpd, SecretsAdd []*api.Secret
//
ConfigMapsDel, ConfigMapsUpd, ConfigMapsAdd []*api.ConfigMap
//
PodsNew []*api.Pod
//
NeedFullSync bool
//
Objects []string
Links TrackingLinks
}
ChangedObjects ...
type ConverterOptions ¶ added in v0.13.0
type ConverterOptions struct { Logger types.Logger Cache Cache Tracker Tracker DynamicConfig *DynamicConfig LocalFSPrefix string IsExternal bool MasterSocket string AdminSocket string AcmeSocket string DefaultConfig func() map[string]string DefaultBackend string DefaultCrtSecret string FakeCrtFile CrtFile FakeCAFile CrtFile AnnotationPrefix []string DisableKeywords []string AcmeTrackTLSAnn bool TrackInstances bool HasGatewayA1 bool HasGateway bool EnableEPSlices bool }
ConverterOptions ...
type DynamicConfig ¶ added in v0.13.0
type DynamicConfig struct { CrossNamespaceSecretCertificate bool CrossNamespaceSecretCA bool CrossNamespaceSecretPasswd bool CrossNamespaceServices bool // config from the command-line for backward compatibility StaticCrossNamespaceSecrets bool }
DynamicConfig ...
type ResourceType ¶ added in v0.11.1
type ResourceType string
ResourceType ...
const ( ResourceIngress ResourceType = "Ingress" ResourceIngressClass ResourceType = "IngressClass" ResourceGatewayA1 ResourceType = "GatewayA1" ResourceGatewayClassA1 ResourceType = "GatewayClassA1" ResourceHTTPRouteA1 ResourceType = "HTTPRouteA1" ResourceGateway ResourceType = "Gateway" ResourceGatewayClass ResourceType = "GatewayClass" ResourceHTTPRoute ResourceType = "HTTPRoute" ResourceConfigMap ResourceType = "ConfigMap" ResourceService ResourceType = "Service" ResourceEndpoints ResourceType = "Endpoints" ResourceSecret ResourceType = "Secret" ResourcePod ResourceType = "Pod" ResourceHATCPService ResourceType = "HATCPService" ResourceHAHostname ResourceType = "HAHostname" ResourceHABackend ResourceType = "HABackend" ResourceHAUserlist ResourceType = "HAUserlist" ResourceAcmeData ResourceType = "AcmeData" )
...
type Tracker ¶ added in v0.11.1
type Tracker interface { TrackNames(leftContext ResourceType, leftName string, rightContext ResourceType, rightName string) TrackRefName(left []TrackingRef, rightContext ResourceType, rightName string) TrackRefs(left, right TrackingRef) QueryLinks(input TrackingLinks, removeMatches bool) TrackingLinks ClearLinks() }
Tracker ...
type TrackingLinks ¶ added in v0.14.0
type TrackingLinks map[ResourceType][]string
TrackingLinks ...
type TrackingRef ¶ added in v0.14.0
type TrackingRef struct { Context ResourceType UniqueName string }
TrackingRef ...
Click to show internal directories.
Click to hide internal directories.