Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the consul.hashicorp.com v1alpha1 API group +kubebuilder:object:generate=true +groupName=consul.hashicorp.com
Index ¶
- Constants
- Variables
- func DerefStringOr[T ~string, U ~string](v *T, val U) string
- type AccessLogs
- type ClusterDiscoveryType
- type Condition
- type ConditionType
- type Conditions
- type ControlPlaneRequestLimit
- func (c *ControlPlaneRequestLimit) AddFinalizer(name string)
- func (c *ControlPlaneRequestLimit) ConsulGlobalResource() bool
- func (c *ControlPlaneRequestLimit) ConsulKind() string
- func (c *ControlPlaneRequestLimit) ConsulMirroringNS() string
- func (c *ControlPlaneRequestLimit) ConsulName() string
- func (in *ControlPlaneRequestLimit) DeepCopy() *ControlPlaneRequestLimit
- func (in *ControlPlaneRequestLimit) DeepCopyInto(out *ControlPlaneRequestLimit)
- func (in *ControlPlaneRequestLimit) DeepCopyObject() runtime.Object
- func (s *ControlPlaneRequestLimit) DefaultNamespaceFields(_ common.ConsulMeta)
- func (c *ControlPlaneRequestLimit) Finalizers() []string
- func (c *ControlPlaneRequestLimit) GetObjectMeta() metav1.ObjectMeta
- func (c *ControlPlaneRequestLimit) KubeKind() string
- func (c *ControlPlaneRequestLimit) KubernetesName() string
- func (c *ControlPlaneRequestLimit) MatchesConsul(candidate consul.ConfigEntry) bool
- func (c *ControlPlaneRequestLimit) RemoveFinalizer(name string)
- func (c *ControlPlaneRequestLimit) SetLastSyncedTime(time *metav1.Time)
- func (c *ControlPlaneRequestLimit) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
- func (c *ControlPlaneRequestLimit) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (c *ControlPlaneRequestLimit) SyncedConditionStatus() corev1.ConditionStatus
- func (c *ControlPlaneRequestLimit) ToConsul(datacenter string) consul.ConfigEntry
- func (c *ControlPlaneRequestLimit) Validate(consulMeta common.ConsulMeta) error
- type ControlPlaneRequestLimitList
- type ControlPlaneRequestLimitSpec
- type ControlPlaneRequestLimitWebhook
- type CookieConfig
- type CopyAnnotationsSpec
- type DeploymentSpec
- type EnvoyExtension
- type EnvoyExtensions
- type ExportedService
- type ExportedServices
- func (in *ExportedServices) AddFinalizer(name string)
- func (in *ExportedServices) ConsulGlobalResource() bool
- func (in *ExportedServices) ConsulKind() string
- func (in *ExportedServices) ConsulMirroringNS() string
- func (in *ExportedServices) ConsulName() string
- func (in *ExportedServices) DeepCopy() *ExportedServices
- func (in *ExportedServices) DeepCopyInto(out *ExportedServices)
- func (in *ExportedServices) DeepCopyObject() runtime.Object
- func (in *ExportedServices) DefaultNamespaceFields(_ common.ConsulMeta)
- func (in *ExportedServices) Finalizers() []string
- func (in *ExportedServices) GetObjectMeta() metav1.ObjectMeta
- func (in *ExportedServices) KubeKind() string
- func (in *ExportedServices) KubernetesName() string
- func (in *ExportedServices) MatchesConsul(candidate api.ConfigEntry) bool
- func (in *ExportedServices) RemoveFinalizer(name string)
- func (in *ExportedServices) SetLastSyncedTime(time *metav1.Time)
- func (in *ExportedServices) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
- func (in *ExportedServices) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (in *ExportedServices) SyncedConditionStatus() corev1.ConditionStatus
- func (in *ExportedServices) ToConsul(datacenter string) api.ConfigEntry
- func (in *ExportedServices) Validate(consulMeta common.ConsulMeta) error
- type ExportedServicesList
- type ExportedServicesSpec
- type ExportedServicesWebhook
- type Expose
- type ExposePath
- type FailoverPolicy
- type GatewayClassConfig
- type GatewayClassConfigList
- type GatewayClassConfigSpec
- type GatewayJWTClaimVerification
- type GatewayJWTProvider
- type GatewayJWTRequirement
- type GatewayPolicy
- type GatewayPolicyConfig
- type GatewayPolicyList
- type GatewayPolicySpec
- type GatewayPolicyStatus
- type GatewayPolicyWebhook
- type GatewayServiceTLSConfig
- type GatewayTLSConfig
- type GatewayTLSSDSConfig
- type HTTPHeaderModifiers
- type HashPolicy
- type HealthCheck
- type HealthCheckDefinition
- type IngressGateway
- func (in *IngressGateway) AddFinalizer(name string)
- func (in *IngressGateway) ConsulGlobalResource() bool
- func (in *IngressGateway) ConsulKind() string
- func (in *IngressGateway) ConsulMirroringNS() string
- func (in *IngressGateway) ConsulName() string
- func (in *IngressGateway) DeepCopy() *IngressGateway
- func (in *IngressGateway) DeepCopyInto(out *IngressGateway)
- func (in *IngressGateway) DeepCopyObject() runtime.Object
- func (in *IngressGateway) DefaultNamespaceFields(consulMeta common.ConsulMeta)
- func (in *IngressGateway) Finalizers() []string
- func (in *IngressGateway) GetObjectMeta() metav1.ObjectMeta
- func (in *IngressGateway) KubeKind() string
- func (in *IngressGateway) KubernetesName() string
- func (in *IngressGateway) MatchesConsul(candidate capi.ConfigEntry) bool
- func (in *IngressGateway) RemoveFinalizer(name string)
- func (in *IngressGateway) SetLastSyncedTime(time *metav1.Time)
- func (in *IngressGateway) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
- func (in *IngressGateway) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (in *IngressGateway) SyncedConditionStatus() corev1.ConditionStatus
- func (in *IngressGateway) ToConsul(datacenter string) capi.ConfigEntry
- func (in *IngressGateway) Validate(consulMeta common.ConsulMeta) error
- type IngressGatewayList
- type IngressGatewaySpec
- type IngressGatewayWebhook
- type IngressListener
- type IngressService
- type IngressServiceConfig
- type InstanceLevelRateLimits
- type InstanceLevelRouteRateLimits
- type IntentionAction
- type IntentionDestination
- type IntentionHTTPHeaderPermission
- type IntentionHTTPHeaderPermissions
- type IntentionHTTPPermission
- type IntentionJWTClaimVerification
- type IntentionJWTProvider
- type IntentionJWTRequirement
- type IntentionPermission
- type IntentionPermissions
- type JSONWebKeySet
- type JWKSCluster
- type JWKSRetryPolicy
- type JWKSTLSCertProviderInstance
- type JWKSTLSCertTrustedCA
- type JWKSTLSCertificate
- type JWTCacheConfig
- type JWTForwardingConfig
- type JWTLocation
- type JWTLocationCookie
- type JWTLocationHeader
- type JWTLocationQueryParam
- type JWTLocations
- type JWTProvider
- func (j *JWTProvider) AddFinalizer(name string)
- func (j *JWTProvider) ConsulGlobalResource() bool
- func (j *JWTProvider) ConsulKind() string
- func (j *JWTProvider) ConsulMirroringNS() string
- func (j *JWTProvider) ConsulName() string
- func (in *JWTProvider) DeepCopy() *JWTProvider
- func (in *JWTProvider) DeepCopyInto(out *JWTProvider)
- func (in *JWTProvider) DeepCopyObject() runtime.Object
- func (j *JWTProvider) DefaultNamespaceFields(_ common.ConsulMeta)
- func (j *JWTProvider) Finalizers() []string
- func (j *JWTProvider) GetObjectMeta() metav1.ObjectMeta
- func (j *JWTProvider) KubeKind() string
- func (j *JWTProvider) KubernetesName() string
- func (j *JWTProvider) MatchesConsul(candidate api.ConfigEntry) bool
- func (j *JWTProvider) RemoveFinalizer(name string)
- func (j *JWTProvider) SetLastSyncedTime(time *metav1.Time)
- func (j *JWTProvider) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
- func (j *JWTProvider) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (j *JWTProvider) SyncedConditionStatus() corev1.ConditionStatus
- func (j *JWTProvider) ToConsul(datacenter string) api.ConfigEntry
- func (j *JWTProvider) Validate(consulMeta common.ConsulMeta) error
- type JWTProviderList
- type JWTProviderSpec
- type JWTProviderWebhook
- type LeastRequestConfig
- type LinkedService
- type LoadBalancer
- type LocalJWKS
- type Locality
- type LogSinkType
- type Mesh
- func (in *Mesh) AddFinalizer(name string)
- func (in *Mesh) ConsulGlobalResource() bool
- func (in *Mesh) ConsulKind() string
- func (in *Mesh) ConsulMirroringNS() string
- func (in *Mesh) ConsulName() string
- func (in *Mesh) DeepCopy() *Mesh
- func (in *Mesh) DeepCopyInto(out *Mesh)
- func (in *Mesh) DeepCopyObject() runtime.Object
- func (in *Mesh) DefaultNamespaceFields(_ common.ConsulMeta)
- func (in *Mesh) Finalizers() []string
- func (in *Mesh) GetObjectMeta() metav1.ObjectMeta
- func (in *Mesh) KubeKind() string
- func (in *Mesh) KubernetesName() string
- func (in *Mesh) MatchesConsul(candidate capi.ConfigEntry) bool
- func (in *Mesh) RemoveFinalizer(name string)
- func (in *Mesh) SetLastSyncedTime(time *metav1.Time)
- func (in *Mesh) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
- func (in *Mesh) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (in *Mesh) SyncedConditionStatus() corev1.ConditionStatus
- func (in *Mesh) ToConsul(datacenter string) capi.ConfigEntry
- func (in *Mesh) Validate(consulMeta common.ConsulMeta) error
- type MeshDirectionalHTTPConfig
- type MeshDirectionalTLSConfig
- type MeshGateway
- type MeshGatewayMode
- type MeshHTTPConfig
- type MeshList
- type MeshService
- type MeshServiceList
- type MeshServiceSpec
- type MeshSpec
- type MeshTLSConfig
- type MeshWebhook
- type MetricsSpec
- type MutualTLSMode
- type PassiveHealthCheck
- type Peer
- type PeeringAcceptor
- func (in *PeeringAcceptor) DeepCopy() *PeeringAcceptor
- func (in *PeeringAcceptor) DeepCopyInto(out *PeeringAcceptor)
- func (in *PeeringAcceptor) DeepCopyObject() runtime.Object
- func (pa *PeeringAcceptor) KubeKind() string
- func (pa *PeeringAcceptor) KubernetesName() string
- func (pa *PeeringAcceptor) Secret() *Secret
- func (pa *PeeringAcceptor) SecretRef() *SecretRefStatus
- func (pa *PeeringAcceptor) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
- func (pa *PeeringAcceptor) Validate() error
- type PeeringAcceptorList
- type PeeringAcceptorSpec
- type PeeringAcceptorStatus
- type PeeringAcceptorWebhook
- type PeeringDialer
- func (in *PeeringDialer) DeepCopy() *PeeringDialer
- func (in *PeeringDialer) DeepCopyInto(out *PeeringDialer)
- func (in *PeeringDialer) DeepCopyObject() runtime.Object
- func (pd *PeeringDialer) KubeKind() string
- func (pd *PeeringDialer) KubernetesName() string
- func (pd *PeeringDialer) Secret() *Secret
- func (pd *PeeringDialer) SecretRef() *SecretRefStatus
- func (pd *PeeringDialer) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
- func (pd *PeeringDialer) Validate() error
- type PeeringDialerList
- type PeeringDialerSpec
- type PeeringDialerStatus
- type PeeringDialerWebhook
- type PeeringMeshConfig
- type PolicyTargetReference
- type PrioritizeByLocality
- type ProxyDefaults
- func (in *ProxyDefaults) AddFinalizer(name string)
- func (in *ProxyDefaults) ConsulGlobalResource() bool
- func (in *ProxyDefaults) ConsulKind() string
- func (in *ProxyDefaults) ConsulMirroringNS() string
- func (in *ProxyDefaults) ConsulName() string
- func (in *ProxyDefaults) DeepCopy() *ProxyDefaults
- func (in *ProxyDefaults) DeepCopyInto(out *ProxyDefaults)
- func (in *ProxyDefaults) DeepCopyObject() runtime.Object
- func (in *ProxyDefaults) DefaultNamespaceFields(_ common.ConsulMeta)
- func (in *ProxyDefaults) Finalizers() []string
- func (in *ProxyDefaults) GetObjectMeta() metav1.ObjectMeta
- func (in *ProxyDefaults) KubeKind() string
- func (in *ProxyDefaults) KubernetesName() string
- func (in *ProxyDefaults) MatchesConsul(candidate api.ConfigEntry) bool
- func (in *ProxyDefaults) RemoveFinalizer(name string)
- func (in *ProxyDefaults) SetLastSyncedTime(time *metav1.Time)
- func (in *ProxyDefaults) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
- func (in *ProxyDefaults) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (in *ProxyDefaults) SyncedConditionStatus() corev1.ConditionStatus
- func (in *ProxyDefaults) ToConsul(datacenter string) capi.ConfigEntry
- func (in *ProxyDefaults) Validate(_ common.ConsulMeta) error
- type ProxyDefaultsList
- type ProxyDefaultsSpec
- type ProxyDefaultsWebhook
- type ProxyMode
- type RateLimits
- type ReadWriteRatesConfig
- type Registration
- func (in *Registration) DeepCopy() *Registration
- func (in *Registration) DeepCopyInto(out *Registration)
- func (in *Registration) DeepCopyObject() runtime.Object
- func (r *Registration) EqualExceptStatus(other *Registration) bool
- func (r *Registration) KubernetesName() string
- func (r *Registration) ToCatalogDeregistration() *capi.CatalogDeregistration
- func (r *Registration) ToCatalogRegistration() (*capi.CatalogRegistration, error)
- type RegistrationList
- type RegistrationSpec
- type RegistrationStatus
- type RegistrationWebhook
- type RemoteJWKS
- type RequestNormalizationMeshConfig
- type RetryPolicyBackOff
- type RingHashConfig
- type RouteAuthFilter
- type RouteAuthFilterList
- type RouteAuthFilterSpec
- type RouteAuthFilterStatus
- type RouteRetryFilter
- type RouteRetryFilterList
- type RouteRetryFilterSpec
- type RouteTimeoutFilter
- type RouteTimeoutFilterList
- type RouteTimeoutFilterSpec
- type SamenessGroup
- func (in *SamenessGroup) AddFinalizer(name string)
- func (in *SamenessGroup) ConsulGlobalResource() bool
- func (in *SamenessGroup) ConsulKind() string
- func (in *SamenessGroup) ConsulMirroringNS() string
- func (in *SamenessGroup) ConsulName() string
- func (in *SamenessGroup) DeepCopy() *SamenessGroup
- func (in *SamenessGroup) DeepCopyInto(out *SamenessGroup)
- func (in *SamenessGroup) DeepCopyObject() runtime.Object
- func (in *SamenessGroup) DefaultNamespaceFields(_ common.ConsulMeta)
- func (in *SamenessGroup) Finalizers() []string
- func (in *SamenessGroup) GetObjectMeta() metav1.ObjectMeta
- func (in *SamenessGroup) KubeKind() string
- func (in *SamenessGroup) KubernetesName() string
- func (in *SamenessGroup) MatchesConsul(candidate api.ConfigEntry) bool
- func (in *SamenessGroup) RemoveFinalizer(name string)
- func (in *SamenessGroup) SetLastSyncedTime(time *metav1.Time)
- func (in *SamenessGroup) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
- func (in *SamenessGroup) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (in *SamenessGroup) SyncedConditionStatus() corev1.ConditionStatus
- func (in *SamenessGroup) ToConsul(datacenter string) api.ConfigEntry
- func (in *SamenessGroup) Validate(consulMeta common.ConsulMeta) error
- type SamenessGroupList
- type SamenessGroupMember
- type SamenessGroupMembers
- type SamenessGroupSpec
- type SamenessGroupWebhook
- type Secret
- type SecretRefStatus
- type Service
- type ServiceAddress
- type ServiceConsumer
- type ServiceDefaults
- func (in *ServiceDefaults) AddFinalizer(name string)
- func (in *ServiceDefaults) ConsulGlobalResource() bool
- func (in *ServiceDefaults) ConsulKind() string
- func (in *ServiceDefaults) ConsulMirroringNS() string
- func (in *ServiceDefaults) ConsulName() string
- func (in *ServiceDefaults) DeepCopy() *ServiceDefaults
- func (in *ServiceDefaults) DeepCopyInto(out *ServiceDefaults)
- func (in *ServiceDefaults) DeepCopyObject() runtime.Object
- func (in *ServiceDefaults) DefaultNamespaceFields(_ common.ConsulMeta)
- func (in *ServiceDefaults) Finalizers() []string
- func (in *ServiceDefaults) GetObjectMeta() metav1.ObjectMeta
- func (in *ServiceDefaults) KubeKind() string
- func (in *ServiceDefaults) KubernetesName() string
- func (in *ServiceDefaults) MatchesConsul(candidate capi.ConfigEntry) bool
- func (in *ServiceDefaults) RemoveFinalizer(name string)
- func (in *ServiceDefaults) SetLastSyncedTime(time *metav1.Time)
- func (in *ServiceDefaults) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
- func (in *ServiceDefaults) SyncedCondition() (status corev1.ConditionStatus, reason string, message string)
- func (in *ServiceDefaults) SyncedConditionStatus() corev1.ConditionStatus
- func (in *ServiceDefaults) ToConsul(datacenter string) capi.ConfigEntry
- func (in *ServiceDefaults) Validate(consulMeta common.ConsulMeta) error
- type ServiceDefaultsDestination
- type ServiceDefaultsList
- type ServiceDefaultsSpec
- type ServiceDefaultsWebhook
- type ServiceIntentions
- func (in *ServiceIntentions) AddFinalizer(f string)
- func (in *ServiceIntentions) ConsulGlobalResource() bool
- func (in *ServiceIntentions) ConsulKind() string
- func (in *ServiceIntentions) ConsulMirroringNS() string
- func (in *ServiceIntentions) ConsulName() string
- func (in *ServiceIntentions) DeepCopy() *ServiceIntentions
- func (in *ServiceIntentions) DeepCopyInto(out *ServiceIntentions)
- func (in *ServiceIntentions) DeepCopyObject() runtime.Object
- func (in *ServiceIntentions) DefaultNamespaceFields(consulMeta common.ConsulMeta)
- func (in *ServiceIntentions) Finalizers() []string
- func (in *ServiceIntentions) GetObjectMeta() metav1.ObjectMeta
- func (in *ServiceIntentions) KubeKind() string
- func (in *ServiceIntentions) KubernetesName() string
- func (in *ServiceIntentions) MatchesConsul(candidate api.ConfigEntry) bool
- func (in *ServiceIntentions) RemoveFinalizer(f string)
- func (in *ServiceIntentions) SetLastSyncedTime(time *metav1.Time)
- func (in *ServiceIntentions) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
- func (in *ServiceIntentions) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (in *ServiceIntentions) SyncedConditionStatus() corev1.ConditionStatus
- func (in *ServiceIntentions) ToConsul(datacenter string) api.ConfigEntry
- func (in *ServiceIntentions) Validate(consulMeta common.ConsulMeta) error
- type ServiceIntentionsList
- type ServiceIntentionsSpec
- type ServiceIntentionsWebhook
- type ServiceResolver
- func (in *ServiceResolver) AddFinalizer(f string)
- func (in *ServiceResolver) ConsulGlobalResource() bool
- func (in *ServiceResolver) ConsulKind() string
- func (in *ServiceResolver) ConsulMirroringNS() string
- func (in *ServiceResolver) ConsulName() string
- func (in *ServiceResolver) DeepCopy() *ServiceResolver
- func (in *ServiceResolver) DeepCopyInto(out *ServiceResolver)
- func (in *ServiceResolver) DeepCopyObject() runtime.Object
- func (in *ServiceResolver) DefaultNamespaceFields(_ common.ConsulMeta)
- func (in *ServiceResolver) Finalizers() []string
- func (in *ServiceResolver) GetObjectMeta() metav1.ObjectMeta
- func (in *ServiceResolver) KubeKind() string
- func (in *ServiceResolver) KubernetesName() string
- func (in *ServiceResolver) MatchesConsul(candidate capi.ConfigEntry) bool
- func (in *ServiceResolver) RemoveFinalizer(f string)
- func (in *ServiceResolver) SetLastSyncedTime(time *metav1.Time)
- func (in *ServiceResolver) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
- func (in *ServiceResolver) SyncedCondition() (status corev1.ConditionStatus, reason string, message string)
- func (in *ServiceResolver) SyncedConditionStatus() corev1.ConditionStatus
- func (in *ServiceResolver) ToConsul(datacenter string) capi.ConfigEntry
- func (in *ServiceResolver) Validate(consulMeta common.ConsulMeta) error
- type ServiceResolverFailover
- type ServiceResolverFailoverMap
- type ServiceResolverFailoverTarget
- type ServiceResolverList
- type ServiceResolverRedirect
- type ServiceResolverSpec
- type ServiceResolverSubset
- type ServiceResolverSubsetMap
- type ServiceResolverWebhook
- type ServiceRoute
- type ServiceRouteDestination
- type ServiceRouteHTTPMatch
- type ServiceRouteHTTPMatchHeader
- type ServiceRouteHTTPMatchQueryParam
- type ServiceRouteMatch
- type ServiceRouter
- func (in *ServiceRouter) AddFinalizer(name string)
- func (in *ServiceRouter) ConsulGlobalResource() bool
- func (in *ServiceRouter) ConsulKind() string
- func (in *ServiceRouter) ConsulMirroringNS() string
- func (in *ServiceRouter) ConsulName() string
- func (in *ServiceRouter) DeepCopy() *ServiceRouter
- func (in *ServiceRouter) DeepCopyInto(out *ServiceRouter)
- func (in *ServiceRouter) DeepCopyObject() runtime.Object
- func (in *ServiceRouter) DefaultNamespaceFields(consulMeta common.ConsulMeta)
- func (in *ServiceRouter) Finalizers() []string
- func (in *ServiceRouter) GetObjectMeta() metav1.ObjectMeta
- func (in *ServiceRouter) KubeKind() string
- func (in *ServiceRouter) KubernetesName() string
- func (in *ServiceRouter) MatchesConsul(candidate capi.ConfigEntry) bool
- func (in *ServiceRouter) RemoveFinalizer(name string)
- func (in *ServiceRouter) SetLastSyncedTime(time *metav1.Time)
- func (in *ServiceRouter) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
- func (in *ServiceRouter) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (in *ServiceRouter) SyncedConditionStatus() corev1.ConditionStatus
- func (in *ServiceRouter) ToConsul(datacenter string) capi.ConfigEntry
- func (in *ServiceRouter) Validate(consulMeta common.ConsulMeta) error
- type ServiceRouterList
- type ServiceRouterSpec
- type ServiceRouterWebhook
- type ServiceSplit
- type ServiceSplits
- type ServiceSplitter
- func (in *ServiceSplitter) AddFinalizer(name string)
- func (in *ServiceSplitter) ConsulGlobalResource() bool
- func (in *ServiceSplitter) ConsulKind() string
- func (in *ServiceSplitter) ConsulMirroringNS() string
- func (in *ServiceSplitter) ConsulName() string
- func (in *ServiceSplitter) DeepCopy() *ServiceSplitter
- func (in *ServiceSplitter) DeepCopyInto(out *ServiceSplitter)
- func (in *ServiceSplitter) DeepCopyObject() runtime.Object
- func (in *ServiceSplitter) DefaultNamespaceFields(_ common.ConsulMeta)
- func (in *ServiceSplitter) Finalizers() []string
- func (in *ServiceSplitter) GetObjectMeta() metav1.ObjectMeta
- func (in *ServiceSplitter) KubeKind() string
- func (in *ServiceSplitter) KubernetesName() string
- func (in *ServiceSplitter) MatchesConsul(candidate capi.ConfigEntry) bool
- func (in *ServiceSplitter) RemoveFinalizer(name string)
- func (in *ServiceSplitter) SetLastSyncedTime(time *metav1.Time)
- func (in *ServiceSplitter) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
- func (in *ServiceSplitter) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (in *ServiceSplitter) SyncedConditionStatus() corev1.ConditionStatus
- func (in *ServiceSplitter) ToConsul(datacenter string) capi.ConfigEntry
- func (in *ServiceSplitter) Validate(consulMeta common.ConsulMeta) error
- type ServiceSplitterList
- type ServiceSplitterSpec
- type ServiceSplitterWebhook
- type SourceIntention
- type SourceIntentions
- type Status
- type TerminatingGateway
- func (in *TerminatingGateway) AddFinalizer(name string)
- func (in *TerminatingGateway) ConsulGlobalResource() bool
- func (in *TerminatingGateway) ConsulKind() string
- func (in *TerminatingGateway) ConsulMirroringNS() string
- func (in *TerminatingGateway) ConsulName() string
- func (in *TerminatingGateway) DeepCopy() *TerminatingGateway
- func (in *TerminatingGateway) DeepCopyInto(out *TerminatingGateway)
- func (in *TerminatingGateway) DeepCopyObject() runtime.Object
- func (in *TerminatingGateway) DefaultNamespaceFields(consulMeta common.ConsulMeta)
- func (in *TerminatingGateway) Finalizers() []string
- func (in *TerminatingGateway) GetObjectMeta() metav1.ObjectMeta
- func (in *TerminatingGateway) KubeKind() string
- func (in *TerminatingGateway) KubernetesName() string
- func (in *TerminatingGateway) MatchesConsul(candidate capi.ConfigEntry) bool
- func (in *TerminatingGateway) RemoveFinalizer(name string)
- func (in *TerminatingGateway) SetACLStatusConditon(status corev1.ConditionStatus, reason, message string)
- func (in *TerminatingGateway) SetLastSyncedTime(time *metav1.Time)
- func (in *TerminatingGateway) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
- func (in *TerminatingGateway) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
- func (in *TerminatingGateway) SyncedConditionStatus() corev1.ConditionStatus
- func (in *TerminatingGateway) ToConsul(datacenter string) capi.ConfigEntry
- func (in *TerminatingGateway) Validate(consulMeta common.ConsulMeta) error
- type TerminatingGatewayList
- type TerminatingGatewaySpec
- type TerminatingGatewayWebhook
- type TransparentProxy
- type TransparentProxyMeshConfig
- type Upstream
- type UpstreamLimits
- type Upstreams
- type Weights
Constants ¶
const ( GatewayClassConfigKind = "GatewayClassConfig" MeshServiceKind = "MeshService" )
const ( JWTProviderKubeKind string = "jwtprovider" DiscoveryTypeStrictDNS ClusterDiscoveryType = "STRICT_DNS" DiscoveryTypeStatic ClusterDiscoveryType = "STATIC" DiscoveryTypeLogicalDNS ClusterDiscoveryType = "LOGICAL_DNS" DiscoveryTypeEDS ClusterDiscoveryType = "EDS" DiscoveryTypeOriginalDST ClusterDiscoveryType = "ORIGINAL_DST" )
const ( PathWithEscapedSlashesActionDefault = "IMPLEMENTATION_SPECIFIC_DEFAULT" PathWithEscapedSlashesActionKeep = "KEEP_UNCHANGED" PathWithEscapedSlashesActionReject = "REJECT_REQUEST" PathWithEscapedSlashesActionUnescapeAndRedirect = "UNESCAPE_AND_REDIRECT" PathWithEscapedSlashesActionUnescapeAndForward = "UNESCAPE_AND_FORWARD" )
PathWithEscapedSlashesAction is an enum that defines the action to take when a request path contains escaped slashes. It mirrors exactly the set of options in Envoy's UriPathNormalizationOptions.PathWithEscapedSlashesAction enum. See github.com/envoyproxy/go-control-plane envoy_http_v3.HttpConnectionManager_PathWithEscapedSlashesAction.
const ( HeadersWithUnderscoresActionAllow = "ALLOW" HeadersWithUnderscoresActionRejectRequest = "REJECT_REQUEST" HeadersWithUnderscoresActionDropHeader = "DROP_HEADER" )
HeadersWithUnderscoresAction is an enum that defines the action to take when a request contains headers with underscores. It mirrors exactly the set of options in Envoy's HttpProtocolOptions.HeadersWithUnderscoresAction enum. See github.com/envoyproxy/go-control-plane envoy_core_v3.HttpProtocolOptions_HeadersWithUnderscoresAction.
const ConsulHashicorpGroup string = "consul.hashicorp.com"
const (
ControlPlaneRequestLimitKubeKind = "controlplanerequestlimit"
)
const ExportedServicesKubeKind = "exportedservices"
const Gatewaypolicy_GatewayIndex = "__gatewaypolicy_referencing_gateway"
const (
MeshKubeKind = "mesh"
)
const PeeringAcceptorKubeKind = "peeringacceptors"
const PeeringDialerKubeKind = "peeringdialers"
const (
ProxyDefaultsKubeKind string = "proxydefaults"
)
const (
RouteAuthFilterKind = "RouteAuthFilter"
)
const RouteRetryFilterKind = "RouteRetryFilter"
const RouteTimeoutFilterKind = "RouteTimeoutFilter"
const (
SamenessGroupKubeKind string = "samenessgroup"
)
const SecretBackendTypeKubernetes = "kubernetes"
const (
ServiceDefaultsKubeKind = "servicedefaults"
)
const ServiceResolverKubeKind string = "serviceresolver"
const (
ServiceRouterKubeKind string = "servicerouter"
)
const (
TerminatingGatewayFailedToSetACLs string = "FailedToSetACLs"
)
const WildcardSpecifier = "*"
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "consul.hashicorp.com", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func DerefStringOr ¶
Types ¶
type AccessLogs ¶
type AccessLogs struct { // Enabled turns on all access logging Enabled bool `json:"enabled,omitempty"` // DisableListenerLogs turns off just listener logs for connections rejected by Envoy because they don't // have a matching listener filter. DisableListenerLogs bool `json:"disableListenerLogs,omitempty"` // Type selects the output for logs // one of "file", "stderr". "stdout" Type LogSinkType `json:"type,omitempty"` // Path is the output file to write logs for file-type logging Path string `json:"path,omitempty"` // JSONFormat is a JSON-formatted string of an Envoy access log format dictionary. // See for more info on formatting: https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#format-dictionaries // Defining JSONFormat and TextFormat is invalid. JSONFormat string `json:"jsonFormat,omitempty"` // TextFormat is a representation of Envoy access logs format. // See for more info on formatting: https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#format-strings // Defining JSONFormat and TextFormat is invalid. TextFormat string `json:"textFormat,omitempty"` }
AccessLogs describes the access logging configuration for all Envoy proxies in the mesh.
func (*AccessLogs) DeepCopy ¶
func (in *AccessLogs) DeepCopy() *AccessLogs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessLogs.
func (*AccessLogs) DeepCopyInto ¶
func (in *AccessLogs) DeepCopyInto(out *AccessLogs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterDiscoveryType ¶
type ClusterDiscoveryType string
type Condition ¶
type Condition struct { // Type of condition. // +required Type ConditionType `json:"type" description:"type of status condition"` // Status of the condition, one of True, False, Unknown. // +required Status corev1.ConditionStatus `json:"status" description:"status of the condition, one of True, False, Unknown"` // LastTransitionTime is the last time the condition transitioned from one status to another. // +optional LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" description:"last time the condition transitioned from one status to another"` // The reason for the condition's last transition. // +optional Reason string `json:"reason,omitempty" description:"one-word CamelCase reason for the condition's last transition"` // A human readable message indicating details about the transition. // +optional Message string `json:"message,omitempty" description:"human-readable message indicating details about last transition"` }
Conditions define a readiness condition for a Consul resource. See: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#typical-status-properties +k8s:deepcopy-gen=true +k8s:openapi-gen=true
func (*Condition) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Condition.
func (*Condition) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConditionType ¶
type ConditionType string
ConditionType is a camel-cased condition type.
const ( // ConditionSynced specifies that the resource has been synced with Consul. ConditionSynced ConditionType = "Synced" )
const ConsulACLStatus ConditionType = "ConsulACLsSynced"
Condition Type.
type Conditions ¶
type Conditions []Condition
Conditions is the schema for the conditions portion of the payload.
func (Conditions) DeepCopy ¶
func (in Conditions) DeepCopy() Conditions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Conditions.
func (Conditions) DeepCopyInto ¶
func (in Conditions) DeepCopyInto(out *Conditions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlaneRequestLimit ¶
type ControlPlaneRequestLimit struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ControlPlaneRequestLimitSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
ControlPlaneRequestLimit is the Schema for the controlplanerequestlimits API. +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource"
func (*ControlPlaneRequestLimit) AddFinalizer ¶
func (c *ControlPlaneRequestLimit) AddFinalizer(name string)
AddFinalizer adds a finalizer to the list of finalizers.
func (*ControlPlaneRequestLimit) ConsulGlobalResource ¶
func (c *ControlPlaneRequestLimit) ConsulGlobalResource() bool
ConsulGlobalResource returns if the resource exists in the default Consul namespace only.
func (*ControlPlaneRequestLimit) ConsulKind ¶
func (c *ControlPlaneRequestLimit) ConsulKind() string
ConsulKind returns the Consul config entry kind, i.e. service-defaults, not servicedefaults.
func (*ControlPlaneRequestLimit) ConsulMirroringNS ¶
func (c *ControlPlaneRequestLimit) ConsulMirroringNS() string
ConsulMirroringNS returns the Consul namespace that the config entry should be created in if namespaces and mirroring are enabled.
func (*ControlPlaneRequestLimit) ConsulName ¶
func (c *ControlPlaneRequestLimit) ConsulName() string
ConsulName returns the name of the config entry as saved in Consul. This may be different than KubernetesName() in the case of a ServiceIntentions config entry.
func (*ControlPlaneRequestLimit) DeepCopy ¶
func (in *ControlPlaneRequestLimit) DeepCopy() *ControlPlaneRequestLimit
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneRequestLimit.
func (*ControlPlaneRequestLimit) DeepCopyInto ¶
func (in *ControlPlaneRequestLimit) DeepCopyInto(out *ControlPlaneRequestLimit)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControlPlaneRequestLimit) DeepCopyObject ¶
func (in *ControlPlaneRequestLimit) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ControlPlaneRequestLimit) DefaultNamespaceFields ¶
func (s *ControlPlaneRequestLimit) DefaultNamespaceFields(_ common.ConsulMeta)
DefaultNamespaceFields has no behaviour here as control-plane-request-limit have no namespace specific fields.
func (*ControlPlaneRequestLimit) Finalizers ¶
func (c *ControlPlaneRequestLimit) Finalizers() []string
Finalizers returns the list of finalizers for this object.
func (*ControlPlaneRequestLimit) GetObjectMeta ¶
func (c *ControlPlaneRequestLimit) GetObjectMeta() metav1.ObjectMeta
GetObjectMeta returns object meta.
func (*ControlPlaneRequestLimit) KubeKind ¶
func (c *ControlPlaneRequestLimit) KubeKind() string
KubeKind returns the Kube config entry kind, i.e. servicedefaults, not service-defaults.
func (*ControlPlaneRequestLimit) KubernetesName ¶
func (c *ControlPlaneRequestLimit) KubernetesName() string
KubernetesName returns the name of the Kubernetes resource.
func (*ControlPlaneRequestLimit) MatchesConsul ¶
func (c *ControlPlaneRequestLimit) MatchesConsul(candidate consul.ConfigEntry) bool
MatchesConsul returns true if the resource has the same fields as the Consul config entry.
func (*ControlPlaneRequestLimit) RemoveFinalizer ¶
func (c *ControlPlaneRequestLimit) RemoveFinalizer(name string)
RemoveFinalizer removes this finalizer from the list.
func (*ControlPlaneRequestLimit) SetLastSyncedTime ¶
func (c *ControlPlaneRequestLimit) SetLastSyncedTime(time *metav1.Time)
SetLastSyncedTime updates the last synced time.
func (*ControlPlaneRequestLimit) SetSyncedCondition ¶
func (c *ControlPlaneRequestLimit) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
SetSyncedCondition updates the synced condition.
func (*ControlPlaneRequestLimit) SyncedCondition ¶
func (c *ControlPlaneRequestLimit) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
SyncedCondition gets the synced condition.
func (*ControlPlaneRequestLimit) SyncedConditionStatus ¶
func (c *ControlPlaneRequestLimit) SyncedConditionStatus() corev1.ConditionStatus
SyncedConditionStatus returns the status of the synced condition.
func (*ControlPlaneRequestLimit) ToConsul ¶
func (c *ControlPlaneRequestLimit) ToConsul(datacenter string) consul.ConfigEntry
ToConsul converts the resource to the corresponding Consul API definition. Its return type is the generic ConfigEntry but a specific config entry type should be constructed e.g. ServiceConfigEntry.
func (*ControlPlaneRequestLimit) Validate ¶
func (c *ControlPlaneRequestLimit) Validate(consulMeta common.ConsulMeta) error
Validate returns an error if the resource is invalid.
type ControlPlaneRequestLimitList ¶
type ControlPlaneRequestLimitList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ControlPlaneRequestLimit `json:"items"` }
ControlPlaneRequestLimitList contains a list of ControlPlaneRequestLimit.
func (*ControlPlaneRequestLimitList) DeepCopy ¶
func (in *ControlPlaneRequestLimitList) DeepCopy() *ControlPlaneRequestLimitList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneRequestLimitList.
func (*ControlPlaneRequestLimitList) DeepCopyInto ¶
func (in *ControlPlaneRequestLimitList) DeepCopyInto(out *ControlPlaneRequestLimitList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControlPlaneRequestLimitList) DeepCopyObject ¶
func (in *ControlPlaneRequestLimitList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ControlPlaneRequestLimitSpec ¶
type ControlPlaneRequestLimitSpec struct { Mode string `json:"mode,omitempty"` ReadWriteRatesConfig `json:",inline"` ACL *ReadWriteRatesConfig `json:"acl,omitempty"` Catalog *ReadWriteRatesConfig `json:"catalog,omitempty"` ConfigEntry *ReadWriteRatesConfig `json:"configEntry,omitempty"` ConnectCA *ReadWriteRatesConfig `json:"connectCA,omitempty"` Coordinate *ReadWriteRatesConfig `json:"coordinate,omitempty"` DiscoveryChain *ReadWriteRatesConfig `json:"discoveryChain,omitempty"` Health *ReadWriteRatesConfig `json:"health,omitempty"` Intention *ReadWriteRatesConfig `json:"intention,omitempty"` KV *ReadWriteRatesConfig `json:"kv,omitempty"` Tenancy *ReadWriteRatesConfig `json:"tenancy,omitempty"` PreparedQuery *ReadWriteRatesConfig `json:"preparedQuery,omitempty"` Session *ReadWriteRatesConfig `json:"session,omitempty"` Txn *ReadWriteRatesConfig `json:"txn,omitempty"` }
ControlPlaneRequestLimitSpec defines the desired state of ControlPlaneRequestLimit.
func (*ControlPlaneRequestLimitSpec) DeepCopy ¶
func (in *ControlPlaneRequestLimitSpec) DeepCopy() *ControlPlaneRequestLimitSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneRequestLimitSpec.
func (*ControlPlaneRequestLimitSpec) DeepCopyInto ¶
func (in *ControlPlaneRequestLimitSpec) DeepCopyInto(out *ControlPlaneRequestLimitSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlaneRequestLimitWebhook ¶
type ControlPlaneRequestLimitWebhook struct { client.Client Logger logr.Logger ConsulMeta common.ConsulMeta // contains filtered or unexported fields }
func (*ControlPlaneRequestLimitWebhook) List ¶
func (v *ControlPlaneRequestLimitWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*ControlPlaneRequestLimitWebhook) SetupWithManager ¶
func (v *ControlPlaneRequestLimitWebhook) SetupWithManager(mgr ctrl.Manager)
type CookieConfig ¶
type CookieConfig struct { // Session determines whether to generate a session cookie with no expiration. Session bool `json:"session,omitempty"` // TTL is the ttl for generated cookies. Cannot be specified for session cookies. TTL metav1.Duration `json:"ttl,omitempty"` // Path is the path to set for the cookie. Path string `json:"path,omitempty"` }
func (*CookieConfig) DeepCopy ¶
func (in *CookieConfig) DeepCopy() *CookieConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookieConfig.
func (*CookieConfig) DeepCopyInto ¶
func (in *CookieConfig) DeepCopyInto(out *CookieConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CopyAnnotationsSpec ¶
type CopyAnnotationsSpec struct { // List of annotations to copy to the gateway service. Service []string `json:"service,omitempty"` }
CopyAnnotationsSpec defines the annotations that should be copied to the gateway service.
func (*CopyAnnotationsSpec) DeepCopy ¶
func (in *CopyAnnotationsSpec) DeepCopy() *CopyAnnotationsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CopyAnnotationsSpec.
func (*CopyAnnotationsSpec) DeepCopyInto ¶
func (in *CopyAnnotationsSpec) DeepCopyInto(out *CopyAnnotationsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentSpec ¶
type DeploymentSpec struct { // +kubebuilder:default:=1 // +kubebuilder:validation:Maximum=8 // +kubebuilder:validation:Minimum=1 // Number of gateway instances that should be deployed by default DefaultInstances *int32 `json:"defaultInstances,omitempty"` // +kubebuilder:default:=8 // +kubebuilder:validation:Maximum=8 // +kubebuilder:validation:Minimum=1 // Max allowed number of gateway instances MaxInstances *int32 `json:"maxInstances,omitempty"` // +kubebuilder:default:=1 // +kubebuilder:validation:Maximum=8 // +kubebuilder:validation:Minimum=1 // Minimum allowed number of gateway instances MinInstances *int32 `json:"minInstances,omitempty"` // Resources defines the resource requirements for the gateway. Resources *corev1.ResourceRequirements `json:"resources,omitempty"` }
func (*DeploymentSpec) DeepCopy ¶
func (in *DeploymentSpec) DeepCopy() *DeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentSpec.
func (*DeploymentSpec) DeepCopyInto ¶
func (in *DeploymentSpec) DeepCopyInto(out *DeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvoyExtension ¶
type EnvoyExtension struct { Name string `json:"name,omitempty"` Required bool `json:"required,omitempty"` // +kubebuilder:validation:Type=object // +kubebuilder:validation:Schemaless // +kubebuilder:pruning:PreserveUnknownFields Arguments json.RawMessage `json:"arguments,omitempty"` }
EnvoyExtension has configuration for an extension that patches Envoy resources.
func (*EnvoyExtension) DeepCopy ¶
func (in *EnvoyExtension) DeepCopy() *EnvoyExtension
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvoyExtension.
func (*EnvoyExtension) DeepCopyInto ¶
func (in *EnvoyExtension) DeepCopyInto(out *EnvoyExtension)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvoyExtensions ¶
type EnvoyExtensions []EnvoyExtension
EnvoyExtensions represents a list of the EnvoyExtension configuration.
func (EnvoyExtensions) DeepCopy ¶
func (in EnvoyExtensions) DeepCopy() EnvoyExtensions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvoyExtensions.
func (EnvoyExtensions) DeepCopyInto ¶
func (in EnvoyExtensions) DeepCopyInto(out *EnvoyExtensions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExportedService ¶
type ExportedService struct { // Name is the name of the service to be exported. Name string `json:"name,omitempty"` // Namespace is the namespace to export the service from. Namespace string `json:"namespace,omitempty"` // Consumers is a list of downstream consumers of the service to be exported. Consumers []ServiceConsumer `json:"consumers,omitempty"` }
ExportedService manages the exporting of a service in the local partition to other partitions.
func (*ExportedService) DeepCopy ¶
func (in *ExportedService) DeepCopy() *ExportedService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExportedService.
func (*ExportedService) DeepCopyInto ¶
func (in *ExportedService) DeepCopyInto(out *ExportedService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExportedServices ¶
type ExportedServices struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ExportedServicesSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
ExportedServices is the Schema for the exportedservices API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="exported-services"
func (*ExportedServices) AddFinalizer ¶
func (in *ExportedServices) AddFinalizer(name string)
func (*ExportedServices) ConsulGlobalResource ¶
func (in *ExportedServices) ConsulGlobalResource() bool
func (*ExportedServices) ConsulKind ¶
func (in *ExportedServices) ConsulKind() string
func (*ExportedServices) ConsulMirroringNS ¶
func (in *ExportedServices) ConsulMirroringNS() string
func (*ExportedServices) ConsulName ¶
func (in *ExportedServices) ConsulName() string
func (*ExportedServices) DeepCopy ¶
func (in *ExportedServices) DeepCopy() *ExportedServices
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExportedServices.
func (*ExportedServices) DeepCopyInto ¶
func (in *ExportedServices) DeepCopyInto(out *ExportedServices)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ExportedServices) DeepCopyObject ¶
func (in *ExportedServices) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ExportedServices) DefaultNamespaceFields ¶
func (in *ExportedServices) DefaultNamespaceFields(_ common.ConsulMeta)
func (*ExportedServices) Finalizers ¶
func (in *ExportedServices) Finalizers() []string
func (*ExportedServices) GetObjectMeta ¶
func (in *ExportedServices) GetObjectMeta() metav1.ObjectMeta
func (*ExportedServices) KubeKind ¶
func (in *ExportedServices) KubeKind() string
func (*ExportedServices) KubernetesName ¶
func (in *ExportedServices) KubernetesName() string
func (*ExportedServices) MatchesConsul ¶
func (in *ExportedServices) MatchesConsul(candidate api.ConfigEntry) bool
func (*ExportedServices) RemoveFinalizer ¶
func (in *ExportedServices) RemoveFinalizer(name string)
func (*ExportedServices) SetLastSyncedTime ¶
func (in *ExportedServices) SetLastSyncedTime(time *metav1.Time)
func (*ExportedServices) SetSyncedCondition ¶
func (in *ExportedServices) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
func (*ExportedServices) SyncedCondition ¶
func (in *ExportedServices) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
func (*ExportedServices) SyncedConditionStatus ¶
func (in *ExportedServices) SyncedConditionStatus() corev1.ConditionStatus
func (*ExportedServices) ToConsul ¶
func (in *ExportedServices) ToConsul(datacenter string) api.ConfigEntry
func (*ExportedServices) Validate ¶
func (in *ExportedServices) Validate(consulMeta common.ConsulMeta) error
type ExportedServicesList ¶
type ExportedServicesList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ExportedServices `json:"items"` }
ExportedServicesList contains a list of ExportedServices.
func (*ExportedServicesList) DeepCopy ¶
func (in *ExportedServicesList) DeepCopy() *ExportedServicesList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExportedServicesList.
func (*ExportedServicesList) DeepCopyInto ¶
func (in *ExportedServicesList) DeepCopyInto(out *ExportedServicesList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ExportedServicesList) DeepCopyObject ¶
func (in *ExportedServicesList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ExportedServicesSpec ¶
type ExportedServicesSpec struct { // Services is a list of services to be exported and the list of partitions // to expose them to. Services []ExportedService `json:"services,omitempty"` }
ExportedServicesSpec defines the desired state of ExportedServices.
func (*ExportedServicesSpec) DeepCopy ¶
func (in *ExportedServicesSpec) DeepCopy() *ExportedServicesSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExportedServicesSpec.
func (*ExportedServicesSpec) DeepCopyInto ¶
func (in *ExportedServicesSpec) DeepCopyInto(out *ExportedServicesSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExportedServicesWebhook ¶
type ExportedServicesWebhook struct { client.Client Logger logr.Logger ConsulMeta common.ConsulMeta // contains filtered or unexported fields }
func (*ExportedServicesWebhook) SetupWithManager ¶
func (v *ExportedServicesWebhook) SetupWithManager(mgr ctrl.Manager)
type Expose ¶
type Expose struct { // Checks defines whether paths associated with Consul checks will be exposed. // This flag triggers exposing all HTTP and GRPC check paths registered for the service. Checks bool `json:"checks,omitempty"` // Paths is the list of paths exposed through the proxy. Paths []ExposePath `json:"paths,omitempty"` }
Expose describes HTTP paths to expose through Envoy outside of Connect. Users can expose individual paths and/or all HTTP/GRPC paths for checks.
func (*Expose) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Expose.
func (*Expose) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExposePath ¶
type ExposePath struct { // ListenerPort defines the port of the proxy's listener for exposed paths. ListenerPort int `json:"listenerPort,omitempty"` // Path is the path to expose through the proxy, ie. "/metrics". Path string `json:"path,omitempty"` // LocalPathPort is the port that the service is listening on for the given path. LocalPathPort int `json:"localPathPort,omitempty"` // Protocol describes the upstream's service protocol. // Valid values are "http" and "http2", defaults to "http". Protocol string `json:"protocol,omitempty"` }
func (*ExposePath) DeepCopy ¶
func (in *ExposePath) DeepCopy() *ExposePath
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExposePath.
func (*ExposePath) DeepCopyInto ¶
func (in *ExposePath) DeepCopyInto(out *ExposePath)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FailoverPolicy ¶
type FailoverPolicy struct { // Mode specifies the type of failover that will be performed. Valid values are // "sequential", "" (equivalent to "sequential") and "order-by-locality". Mode string `json:"mode,omitempty"` // Regions is the ordered list of the regions of the failover targets. // Valid values can be "us-west-1", "us-west-2", and so on. Regions []string `json:"regions,omitempty"` }
FailoverPolicy specifies the exact mechanism used for failover.
func (*FailoverPolicy) DeepCopy ¶
func (in *FailoverPolicy) DeepCopy() *FailoverPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FailoverPolicy.
func (*FailoverPolicy) DeepCopyInto ¶
func (in *FailoverPolicy) DeepCopyInto(out *FailoverPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayClassConfig ¶
type GatewayClassConfig struct { // Standard Kubernetes resource metadata. metav1.TypeMeta `json:",inline"` // Standard object's metadata. metav1.ObjectMeta `json:"metadata,omitempty"` // Spec defines the desired state of GatewayClassConfig. Spec GatewayClassConfigSpec `json:"spec,omitempty"` }
GatewayClassConfig defines the values that may be set on a GatewayClass for Consul API Gateway.
func (*GatewayClassConfig) DeepCopy ¶
func (in *GatewayClassConfig) DeepCopy() *GatewayClassConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayClassConfig.
func (*GatewayClassConfig) DeepCopyInto ¶
func (in *GatewayClassConfig) DeepCopyInto(out *GatewayClassConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GatewayClassConfig) DeepCopyObject ¶
func (in *GatewayClassConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GatewayClassConfigList ¶
type GatewayClassConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` // Items is the list of Configs. Items []GatewayClassConfig `json:"items"` }
GatewayClassConfigList is a list of Config resources.
func (*GatewayClassConfigList) DeepCopy ¶
func (in *GatewayClassConfigList) DeepCopy() *GatewayClassConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayClassConfigList.
func (*GatewayClassConfigList) DeepCopyInto ¶
func (in *GatewayClassConfigList) DeepCopyInto(out *GatewayClassConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GatewayClassConfigList) DeepCopyObject ¶
func (in *GatewayClassConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GatewayClassConfigSpec ¶
type GatewayClassConfigSpec struct { // +kubebuilder:validation:Enum=ClusterIP;NodePort;LoadBalancer ServiceType *corev1.ServiceType `json:"serviceType,omitempty"` // NodeSelector is a selector which must be true for the pod to fit on a node. // Selector which must match a node's labels for the pod to be scheduled on that node. // More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ NodeSelector map[string]string `json:"nodeSelector,omitempty"` // Tolerations allow the scheduler to schedule nodes with matching taints. // More Info: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // Deployment defines the deployment configuration for the gateway. DeploymentSpec DeploymentSpec `json:"deployment,omitempty"` // Annotation Information to copy to services or deployments CopyAnnotations CopyAnnotationsSpec `json:"copyAnnotations,omitempty"` // The name of an existing Kubernetes PodSecurityPolicy to bind to the managed ServiceAccount if ACLs are managed. PodSecurityPolicy string `json:"podSecurityPolicy,omitempty"` // The name of the OpenShift SecurityContextConstraints resource for this gateway class to use. OpenshiftSCCName string `json:"openshiftSCCName,omitempty"` // The value to add to privileged ports ( ports < 1024) for gateway containers MapPrivilegedContainerPorts int32 `json:"mapPrivilegedContainerPorts,omitempty"` // Metrics defines how to configure the metrics for a gateway. Metrics MetricsSpec `json:"metrics,omitempty"` }
GatewayClassConfigSpec specifies the desired state of the Config CRD.
func (*GatewayClassConfigSpec) DeepCopy ¶
func (in *GatewayClassConfigSpec) DeepCopy() *GatewayClassConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayClassConfigSpec.
func (*GatewayClassConfigSpec) DeepCopyInto ¶
func (in *GatewayClassConfigSpec) DeepCopyInto(out *GatewayClassConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayJWTClaimVerification ¶
type GatewayJWTClaimVerification struct { // Path is the path to the claim in the token JSON. Path []string `json:"path"` // Value is the expected value at the given path: // - If the type at the path is a list then we verify // that this value is contained in the list. // // - If the type at the path is a string then we verify // that this value matches. Value string `json:"value"` }
GatewayJWTClaimVerification holds the actual claim information to be verified.
func (*GatewayJWTClaimVerification) DeepCopy ¶
func (in *GatewayJWTClaimVerification) DeepCopy() *GatewayJWTClaimVerification
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayJWTClaimVerification.
func (*GatewayJWTClaimVerification) DeepCopyInto ¶
func (in *GatewayJWTClaimVerification) DeepCopyInto(out *GatewayJWTClaimVerification)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayJWTProvider ¶
type GatewayJWTProvider struct { // Name is the name of the JWT provider. There MUST be a corresponding // "jwt-provider" config entry with this name. Name string `json:"name"` // VerifyClaims is a list of additional claims to verify in a JWT's payload. VerifyClaims []*GatewayJWTClaimVerification `json:"verifyClaims,omitempty"` }
GatewayJWTProvider holds the provider and claim verification information.
func (*GatewayJWTProvider) DeepCopy ¶
func (in *GatewayJWTProvider) DeepCopy() *GatewayJWTProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayJWTProvider.
func (*GatewayJWTProvider) DeepCopyInto ¶
func (in *GatewayJWTProvider) DeepCopyInto(out *GatewayJWTProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayJWTRequirement ¶
type GatewayJWTRequirement struct { // Providers is a list of providers to consider when verifying a JWT. Providers []*GatewayJWTProvider `json:"providers"` }
GatewayJWTRequirement holds the list of JWT providers to be verified against.
func (*GatewayJWTRequirement) DeepCopy ¶
func (in *GatewayJWTRequirement) DeepCopy() *GatewayJWTRequirement
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayJWTRequirement.
func (*GatewayJWTRequirement) DeepCopyInto ¶
func (in *GatewayJWTRequirement) DeepCopyInto(out *GatewayJWTRequirement)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayPolicy ¶
type GatewayPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GatewayPolicySpec `json:"spec,omitempty"` Status GatewayPolicyStatus `json:"status,omitempty"` }
GatewayPolicy is the Schema for the gatewaypolicies API. +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource"
func (*GatewayPolicy) DeepCopy ¶
func (in *GatewayPolicy) DeepCopy() *GatewayPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPolicy.
func (*GatewayPolicy) DeepCopyInto ¶
func (in *GatewayPolicy) DeepCopyInto(out *GatewayPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GatewayPolicy) DeepCopyObject ¶
func (in *GatewayPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GatewayPolicyConfig ¶
type GatewayPolicyConfig struct { //+kubebuilder:validation:Optional JWT *GatewayJWTRequirement `json:"jwt,omitempty"` }
func (*GatewayPolicyConfig) DeepCopy ¶
func (in *GatewayPolicyConfig) DeepCopy() *GatewayPolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPolicyConfig.
func (*GatewayPolicyConfig) DeepCopyInto ¶
func (in *GatewayPolicyConfig) DeepCopyInto(out *GatewayPolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayPolicyList ¶
type GatewayPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GatewayPolicy `json:"items"` }
GatewayPolicyList contains a list of GatewayPolicy.
func (*GatewayPolicyList) DeepCopy ¶
func (in *GatewayPolicyList) DeepCopy() *GatewayPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPolicyList.
func (*GatewayPolicyList) DeepCopyInto ¶
func (in *GatewayPolicyList) DeepCopyInto(out *GatewayPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GatewayPolicyList) DeepCopyObject ¶
func (in *GatewayPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GatewayPolicySpec ¶
type GatewayPolicySpec struct { // TargetRef identifies an API object to apply policy to. TargetRef PolicyTargetReference `json:"targetRef"` //+kubebuilder:validation:Optional Override *GatewayPolicyConfig `json:"override,omitempty"` //+kubebuilder:validation:Optional Default *GatewayPolicyConfig `json:"default,omitempty"` }
GatewayPolicySpec defines the desired state of GatewayPolicy.
func (*GatewayPolicySpec) DeepCopy ¶
func (in *GatewayPolicySpec) DeepCopy() *GatewayPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPolicySpec.
func (*GatewayPolicySpec) DeepCopyInto ¶
func (in *GatewayPolicySpec) DeepCopyInto(out *GatewayPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayPolicyStatus ¶
type GatewayPolicyStatus struct { // Conditions describe the current conditions of the Policy. // // // Known condition types are: // // * "Accepted" // * "ResolvedRefs" // // +optional // +listType=map // +listMapKey=type // +kubebuilder:validation:MaxItems=8 Conditions []metav1.Condition `json:"conditions,omitempty"` }
GatewayPolicyStatus defines the observed state of the gateway.
func (*GatewayPolicyStatus) DeepCopy ¶
func (in *GatewayPolicyStatus) DeepCopy() *GatewayPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPolicyStatus.
func (*GatewayPolicyStatus) DeepCopyInto ¶
func (in *GatewayPolicyStatus) DeepCopyInto(out *GatewayPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayPolicyWebhook ¶
type GatewayPolicyWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*GatewayPolicyWebhook) SetupWithManager ¶
func (v *GatewayPolicyWebhook) SetupWithManager(mgr ctrl.Manager)
type GatewayServiceTLSConfig ¶
type GatewayServiceTLSConfig struct { // SDS allows configuring TLS certificate from an SDS service. SDS *GatewayTLSSDSConfig `json:"sds,omitempty"` }
func (*GatewayServiceTLSConfig) DeepCopy ¶
func (in *GatewayServiceTLSConfig) DeepCopy() *GatewayServiceTLSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayServiceTLSConfig.
func (*GatewayServiceTLSConfig) DeepCopyInto ¶
func (in *GatewayServiceTLSConfig) DeepCopyInto(out *GatewayServiceTLSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayTLSConfig ¶
type GatewayTLSConfig struct { // Indicates that TLS should be enabled for this gateway service. Enabled bool `json:"enabled"` // SDS allows configuring TLS certificate from an SDS service. SDS *GatewayTLSSDSConfig `json:"sds,omitempty"` // TLSMinVersion sets the default minimum TLS version supported. // One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. // If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, // while older releases of Envoy default to TLS 1.0. TLSMinVersion string `json:"tlsMinVersion,omitempty"` // TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. // One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. // If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections. TLSMaxVersion string `json:"tlsMaxVersion,omitempty"` // Define a subset of cipher suites to restrict // Only applicable to connections negotiated via TLS 1.2 or earlier. CipherSuites []string `json:"cipherSuites,omitempty"` }
func (*GatewayTLSConfig) DeepCopy ¶
func (in *GatewayTLSConfig) DeepCopy() *GatewayTLSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayTLSConfig.
func (*GatewayTLSConfig) DeepCopyInto ¶
func (in *GatewayTLSConfig) DeepCopyInto(out *GatewayTLSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayTLSSDSConfig ¶
type GatewayTLSSDSConfig struct { // ClusterName is the SDS cluster name to connect to, to retrieve certificates. // This cluster must be specified in the Gateway's bootstrap configuration. ClusterName string `json:"clusterName,omitempty"` // CertResource is the SDS resource name to request when fetching the certificate from the SDS service. CertResource string `json:"certResource,omitempty"` }
func (*GatewayTLSSDSConfig) DeepCopy ¶
func (in *GatewayTLSSDSConfig) DeepCopy() *GatewayTLSSDSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayTLSSDSConfig.
func (*GatewayTLSSDSConfig) DeepCopyInto ¶
func (in *GatewayTLSSDSConfig) DeepCopyInto(out *GatewayTLSSDSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTPHeaderModifiers ¶
type HTTPHeaderModifiers struct { // Add is a set of name -> value pairs that should be appended to the request // or response (i.e. allowing duplicates if the same header already exists). Add map[string]string `json:"add,omitempty"` // Set is a set of name -> value pairs that should be added to the request or // response, overwriting any existing header values of the same name. Set map[string]string `json:"set,omitempty"` // Remove is the set of header names that should be stripped from the request // or response. Remove []string `json:"remove,omitempty"` }
HTTPHeaderModifiers is a set of rules for HTTP header modification that should be performed by proxies as the request passes through them. It can operate on either request or response headers depending on the context in which it is used.
func (*HTTPHeaderModifiers) DeepCopy ¶
func (in *HTTPHeaderModifiers) DeepCopy() *HTTPHeaderModifiers
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPHeaderModifiers.
func (*HTTPHeaderModifiers) DeepCopyInto ¶
func (in *HTTPHeaderModifiers) DeepCopyInto(out *HTTPHeaderModifiers)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HashPolicy ¶
type HashPolicy struct { // Field is the attribute type to hash on. // Must be one of "header", "cookie", or "query_parameter". // Cannot be specified along with sourceIP. Field string `json:"field,omitempty"` // FieldValue is the value to hash. // ie. header name, cookie name, URL query parameter name // Cannot be specified along with sourceIP. FieldValue string `json:"fieldValue,omitempty"` // CookieConfig contains configuration for the "cookie" hash policy type. CookieConfig *CookieConfig `json:"cookieConfig,omitempty"` // SourceIP determines whether the hash should be of the source IP rather than of a field and field value. // Cannot be specified along with field or fieldValue. SourceIP bool `json:"sourceIP,omitempty"` // Terminal will short circuit the computation of the hash when multiple hash policies are present. // If a hash is computed when a Terminal policy is evaluated, // then that hash will be used and subsequent hash policies will be ignored. Terminal bool `json:"terminal,omitempty"` }
func (*HashPolicy) DeepCopy ¶
func (in *HashPolicy) DeepCopy() *HashPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HashPolicy.
func (*HashPolicy) DeepCopyInto ¶
func (in *HashPolicy) DeepCopyInto(out *HashPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheck ¶
type HealthCheck struct { Node string `json:"node,omitempty"` CheckID string `json:"checkId"` Name string `json:"name"` Status string `json:"status"` Notes string `json:"notes,omitempty"` Output string `json:"output,omitempty"` ServiceID string `json:"serviceId"` ServiceName string `json:"serviceName"` Type string `json:"type,omitempty"` ExposedPort int `json:"exposedPort,omitempty"` Definition HealthCheckDefinition `json:"definition"` Namespace string `json:"namespace,omitempty"` Partition string `json:"partition,omitempty"` }
HealthCheck is used to represent a single check.
func (*HealthCheck) DeepCopy ¶
func (in *HealthCheck) DeepCopy() *HealthCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheck.
func (*HealthCheck) DeepCopyInto ¶
func (in *HealthCheck) DeepCopyInto(out *HealthCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HealthCheck) Equal ¶
func (h *HealthCheck) Equal(other *HealthCheck) bool
type HealthCheckDefinition ¶
type HealthCheckDefinition struct { HTTP string `json:"http,omitempty"` Header map[string][]string `json:"header,omitempty"` Method string `json:"method,omitempty"` Body string `json:"body,omitempty"` TLSServerName string `json:"tlsServerName,omitempty"` TLSSkipVerify bool `json:"tlsSkipVerify,omitempty"` TCP string `json:"tcp,omitempty"` TCPUseTLS bool `json:"tcpUseTLS,omitempty"` UDP string `json:"udp,omitempty"` GRPC string `json:"grpc,omitempty"` OSService string `json:"osService,omitempty"` GRPCUseTLS bool `json:"grpcUseTLS,omitempty"` IntervalDuration string `json:"intervalDuration"` TimeoutDuration string `json:"timeoutDuration,omitempty"` DeregisterCriticalServiceAfterDuration string `json:"deregisterCriticalServiceAfterDuration,omitempty"` }
HealthCheckDefinition is used to store the details about a health check's execution.
func (*HealthCheckDefinition) DeepCopy ¶
func (in *HealthCheckDefinition) DeepCopy() *HealthCheckDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheckDefinition.
func (*HealthCheckDefinition) DeepCopyInto ¶
func (in *HealthCheckDefinition) DeepCopyInto(out *HealthCheckDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (HealthCheckDefinition) Equal ¶
func (h HealthCheckDefinition) Equal(other HealthCheckDefinition) bool
type IngressGateway ¶
type IngressGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec IngressGatewaySpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
IngressGateway is the Schema for the ingressgateways API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="ingress-gateway"
func (*IngressGateway) AddFinalizer ¶
func (in *IngressGateway) AddFinalizer(name string)
func (*IngressGateway) ConsulGlobalResource ¶
func (in *IngressGateway) ConsulGlobalResource() bool
func (*IngressGateway) ConsulKind ¶
func (in *IngressGateway) ConsulKind() string
func (*IngressGateway) ConsulMirroringNS ¶
func (in *IngressGateway) ConsulMirroringNS() string
func (*IngressGateway) ConsulName ¶
func (in *IngressGateway) ConsulName() string
func (*IngressGateway) DeepCopy ¶
func (in *IngressGateway) DeepCopy() *IngressGateway
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressGateway.
func (*IngressGateway) DeepCopyInto ¶
func (in *IngressGateway) DeepCopyInto(out *IngressGateway)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IngressGateway) DeepCopyObject ¶
func (in *IngressGateway) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*IngressGateway) DefaultNamespaceFields ¶
func (in *IngressGateway) DefaultNamespaceFields(consulMeta common.ConsulMeta)
DefaultNamespaceFields sets the namespace field on spec.listeners[].services to their default values if namespaces are enabled.
func (*IngressGateway) Finalizers ¶
func (in *IngressGateway) Finalizers() []string
func (*IngressGateway) GetObjectMeta ¶
func (in *IngressGateway) GetObjectMeta() metav1.ObjectMeta
func (*IngressGateway) KubeKind ¶
func (in *IngressGateway) KubeKind() string
func (*IngressGateway) KubernetesName ¶
func (in *IngressGateway) KubernetesName() string
func (*IngressGateway) MatchesConsul ¶
func (in *IngressGateway) MatchesConsul(candidate capi.ConfigEntry) bool
func (*IngressGateway) RemoveFinalizer ¶
func (in *IngressGateway) RemoveFinalizer(name string)
func (*IngressGateway) SetLastSyncedTime ¶
func (in *IngressGateway) SetLastSyncedTime(time *metav1.Time)
func (*IngressGateway) SetSyncedCondition ¶
func (in *IngressGateway) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
func (*IngressGateway) SyncedCondition ¶
func (in *IngressGateway) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
func (*IngressGateway) SyncedConditionStatus ¶
func (in *IngressGateway) SyncedConditionStatus() corev1.ConditionStatus
func (*IngressGateway) ToConsul ¶
func (in *IngressGateway) ToConsul(datacenter string) capi.ConfigEntry
func (*IngressGateway) Validate ¶
func (in *IngressGateway) Validate(consulMeta common.ConsulMeta) error
type IngressGatewayList ¶
type IngressGatewayList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []IngressGateway `json:"items"` }
IngressGatewayList contains a list of IngressGateway.
func (*IngressGatewayList) DeepCopy ¶
func (in *IngressGatewayList) DeepCopy() *IngressGatewayList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressGatewayList.
func (*IngressGatewayList) DeepCopyInto ¶
func (in *IngressGatewayList) DeepCopyInto(out *IngressGatewayList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IngressGatewayList) DeepCopyObject ¶
func (in *IngressGatewayList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IngressGatewaySpec ¶
type IngressGatewaySpec struct { // TLS holds the TLS configuration for this gateway. TLS GatewayTLSConfig `json:"tls,omitempty"` // Listeners declares what ports the ingress gateway should listen on, and // what services to associated to those ports. Listeners []IngressListener `json:"listeners,omitempty"` // Defaults is default configuration for all upstream services Defaults *IngressServiceConfig `json:"defaults,omitempty"` }
IngressGatewaySpec defines the desired state of IngressGateway.
func (*IngressGatewaySpec) DeepCopy ¶
func (in *IngressGatewaySpec) DeepCopy() *IngressGatewaySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressGatewaySpec.
func (*IngressGatewaySpec) DeepCopyInto ¶
func (in *IngressGatewaySpec) DeepCopyInto(out *IngressGatewaySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressGatewayWebhook ¶
type IngressGatewayWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*IngressGatewayWebhook) List ¶
func (v *IngressGatewayWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*IngressGatewayWebhook) SetupWithManager ¶
func (v *IngressGatewayWebhook) SetupWithManager(mgr ctrl.Manager)
type IngressListener ¶
type IngressListener struct { // Port declares the port on which the ingress gateway should listen for traffic. Port int `json:"port,omitempty"` // Protocol declares what type of traffic this listener is expected to // receive. Depending on the protocol, a listener might support multiplexing // services over a single port, or additional discovery chain features. The // current supported values are: (tcp | http | http2 | grpc). Protocol string `json:"protocol,omitempty"` // TLS config for this listener. TLS *GatewayTLSConfig `json:"tls,omitempty"` // Services declares the set of services to which the listener forwards // traffic. // For "tcp" protocol listeners, only a single service is allowed. // For "http" listeners, multiple services can be declared. Services []IngressService `json:"services,omitempty"` }
IngressListener manages the configuration for a listener on a specific port.
func (*IngressListener) DeepCopy ¶
func (in *IngressListener) DeepCopy() *IngressListener
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressListener.
func (*IngressListener) DeepCopyInto ¶
func (in *IngressListener) DeepCopyInto(out *IngressListener)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressService ¶
type IngressService struct { // Name declares the service to which traffic should be forwarded. // // This can either be a specific service, or the wildcard specifier, // "*". If the wildcard specifier is provided, the listener must be of "http" // protocol and means that the listener will forward traffic to all services. // // A name can be specified on multiple listeners, and will be exposed on both // of the listeners. Name string `json:"name,omitempty"` // Hosts is a list of hostnames which should be associated to this service on // the defined listener. Only allowed on layer 7 protocols, this will be used // to route traffic to the service by matching the Host header of the HTTP // request. // // If a host is provided for a service that also has a wildcard specifier // defined, the host will override the wildcard-specifier-provided // "<service-name>.*" domain for that listener. // // This cannot be specified when using the wildcard specifier, "*", or when // using a "tcp" listener. Hosts []string `json:"hosts,omitempty"` // Namespace is the namespace where the service is located. // Namespacing is a Consul Enterprise feature. Namespace string `json:"namespace,omitempty"` // Partition is the admin-partition where the service is located. // Partitioning is a Consul Enterprise feature. Partition string `json:"partition,omitempty"` // TLS allows specifying some TLS configuration per listener. TLS *GatewayServiceTLSConfig `json:"tls,omitempty"` // Allow HTTP header manipulation to be configured. RequestHeaders *HTTPHeaderModifiers `json:"requestHeaders,omitempty"` ResponseHeaders *HTTPHeaderModifiers `json:"responseHeaders,omitempty"` IngressServiceConfig `json:",inline"` }
IngressService manages configuration for services that are exposed to ingress traffic.
func (*IngressService) DeepCopy ¶
func (in *IngressService) DeepCopy() *IngressService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressService.
func (*IngressService) DeepCopyInto ¶
func (in *IngressService) DeepCopyInto(out *IngressService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressServiceConfig ¶
type IngressServiceConfig struct { // The maximum number of connections a service instance // will be allowed to establish against the given upstream. Use this to limit // HTTP/1.1 traffic, since HTTP/1.1 has a request per connection. MaxConnections *uint32 `json:"maxConnections,omitempty"` // The maximum number of requests that will be queued // while waiting for a connection to be established. MaxPendingRequests *uint32 `json:"maxPendingRequests,omitempty"` // The maximum number of concurrent requests that // will be allowed at a single point in time. Use this to limit HTTP/2 traffic, // since HTTP/2 has many requests per connection. MaxConcurrentRequests *uint32 `json:"maxConcurrentRequests,omitempty"` // PassiveHealthCheck configuration determines how upstream proxy instances will // be monitored for removal from the load balancing pool. PassiveHealthCheck *PassiveHealthCheck `json:"passiveHealthCheck,omitempty"` }
func (*IngressServiceConfig) DeepCopy ¶
func (in *IngressServiceConfig) DeepCopy() *IngressServiceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressServiceConfig.
func (*IngressServiceConfig) DeepCopyInto ¶
func (in *IngressServiceConfig) DeepCopyInto(out *IngressServiceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InstanceLevelRateLimits ¶
type InstanceLevelRateLimits struct { // RequestsPerSecond is the average number of requests per second that can be // made without being throttled. This field is required if RequestsMaxBurst // is set. The allowed number of requests may exceed RequestsPerSecond up to // the value specified in RequestsMaxBurst. // // Internally, this is the refill rate of the token bucket used for rate limiting. RequestsPerSecond int `json:"requestsPerSecond,omitempty"` // RequestsMaxBurst is the maximum number of requests that can be sent // in a burst. Should be equal to or greater than RequestsPerSecond. // If unset, defaults to RequestsPerSecond. // // Internally, this is the maximum size of the token bucket used for rate limiting. RequestsMaxBurst int `json:"requestsMaxBurst,omitempty"` // Routes is a list of rate limits applied to specific routes. // For a given request, the first matching route will be applied, if any. // Overrides any top-level configuration. Routes []InstanceLevelRouteRateLimits `json:"routes,omitempty"` }
func (*InstanceLevelRateLimits) DeepCopy ¶
func (in *InstanceLevelRateLimits) DeepCopy() *InstanceLevelRateLimits
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceLevelRateLimits.
func (*InstanceLevelRateLimits) DeepCopyInto ¶
func (in *InstanceLevelRateLimits) DeepCopyInto(out *InstanceLevelRateLimits)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InstanceLevelRouteRateLimits ¶
type InstanceLevelRouteRateLimits struct { // Exact path to match. Exactly one of PathExact, PathPrefix, or PathRegex must be specified. PathExact string `json:"pathExact,omitempty"` // Prefix to match. Exactly one of PathExact, PathPrefix, or PathRegex must be specified. PathPrefix string `json:"pathPrefix,omitempty"` // Regex to match. Exactly one of PathExact, PathPrefix, or PathRegex must be specified. PathRegex string `json:"pathRegex,omitempty"` // RequestsPerSecond is the average number of requests per // second that can be made without being throttled. This field is required // if RequestsMaxBurst is set. The allowed number of requests may exceed // RequestsPerSecond up to the value specified in RequestsMaxBurst. // Internally, this is the refill rate of the token bucket used for rate limiting. RequestsPerSecond int `json:"requestsPerSecond,omitempty"` // RequestsMaxBurst is the maximum number of requests that can be sent // in a burst. Should be equal to or greater than RequestsPerSecond. If unset, // defaults to RequestsPerSecond. Internally, this is the maximum size of the token // bucket used for rate limiting. RequestsMaxBurst int `json:"requestsMaxBurst,omitempty"` }
func (*InstanceLevelRouteRateLimits) DeepCopy ¶
func (in *InstanceLevelRouteRateLimits) DeepCopy() *InstanceLevelRouteRateLimits
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceLevelRouteRateLimits.
func (*InstanceLevelRouteRateLimits) DeepCopyInto ¶
func (in *InstanceLevelRouteRateLimits) DeepCopyInto(out *InstanceLevelRouteRateLimits)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntentionAction ¶
type IntentionAction string
IntentionAction is the action that the intention represents. This can be "allow" or "deny" to allowlist or denylist intentions.
type IntentionDestination ¶
type IntentionDestination struct { // Name is the destination of all intentions defined in this config entry. // This may be set to the wildcard character (*) to match // all services that don't otherwise have intentions defined. Name string `json:"name,omitempty"` // Namespace specifies the namespace the config entry will apply to. // This may be set to the wildcard character (*) to match all services // in all namespaces that don't otherwise have intentions defined. Namespace string `json:"namespace,omitempty"` }
func (*IntentionDestination) DeepCopy ¶
func (in *IntentionDestination) DeepCopy() *IntentionDestination
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntentionDestination.
func (*IntentionDestination) DeepCopyInto ¶
func (in *IntentionDestination) DeepCopyInto(out *IntentionDestination)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntentionHTTPHeaderPermission ¶
type IntentionHTTPHeaderPermission struct { // Name is the name of the header to match. Name string `json:"name,omitempty"` // Present matches if the header with the given name is present with any value. Present bool `json:"present,omitempty"` // Exact matches if the header with the given name is this value. Exact string `json:"exact,omitempty"` // Prefix matches if the header with the given name has this prefix. Prefix string `json:"prefix,omitempty"` // Suffix matches if the header with the given name has this suffix. Suffix string `json:"suffix,omitempty"` // Contains matches if the header with the given name contains this value. Contains string `json:"contains,omitempty"` // Regex matches if the header with the given name matches this pattern. Regex string `json:"regex,omitempty"` // IgnoreCase ignores the case of the header value when matching with exact, prefix, suffix, or contains. IgnoreCase bool `json:"ignoreCase,omitempty"` // Invert inverts the logic of the match. Invert bool `json:"invert,omitempty"` }
func (*IntentionHTTPHeaderPermission) DeepCopy ¶
func (in *IntentionHTTPHeaderPermission) DeepCopy() *IntentionHTTPHeaderPermission
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntentionHTTPHeaderPermission.
func (*IntentionHTTPHeaderPermission) DeepCopyInto ¶
func (in *IntentionHTTPHeaderPermission) DeepCopyInto(out *IntentionHTTPHeaderPermission)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntentionHTTPHeaderPermissions ¶
type IntentionHTTPHeaderPermissions []IntentionHTTPHeaderPermission
func (IntentionHTTPHeaderPermissions) DeepCopy ¶
func (in IntentionHTTPHeaderPermissions) DeepCopy() IntentionHTTPHeaderPermissions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntentionHTTPHeaderPermissions.
func (IntentionHTTPHeaderPermissions) DeepCopyInto ¶
func (in IntentionHTTPHeaderPermissions) DeepCopyInto(out *IntentionHTTPHeaderPermissions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntentionHTTPPermission ¶
type IntentionHTTPPermission struct { // PathExact is the exact path to match on the HTTP request path. PathExact string `json:"pathExact,omitempty"` // PathPrefix is the path prefix to match on the HTTP request path. PathPrefix string `json:"pathPrefix,omitempty"` // PathRegex is the regular expression to match on the HTTP request path. PathRegex string `json:"pathRegex,omitempty"` // Header is a set of criteria that can match on HTTP request headers. // If more than one is configured all must match for the overall match to apply. Header IntentionHTTPHeaderPermissions `json:"header,omitempty"` // Methods is a list of HTTP methods for which this match applies. If unspecified // all HTTP methods are matched. If provided the names must be a valid method. Methods []string `json:"methods,omitempty"` }
func (*IntentionHTTPPermission) DeepCopy ¶
func (in *IntentionHTTPPermission) DeepCopy() *IntentionHTTPPermission
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntentionHTTPPermission.
func (*IntentionHTTPPermission) DeepCopyInto ¶
func (in *IntentionHTTPPermission) DeepCopyInto(out *IntentionHTTPPermission)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntentionJWTClaimVerification ¶
type IntentionJWTClaimVerification struct { // Path is the path to the claim in the token JSON. Path []string `json:"path,omitempty"` // Value is the expected value at the given path. If the type at the path // is a list then we verify that this value is contained in the list. If // the type at the path is a string then we verify that this value matches. Value string `json:"value,omitempty"` }
func (*IntentionJWTClaimVerification) DeepCopy ¶
func (in *IntentionJWTClaimVerification) DeepCopy() *IntentionJWTClaimVerification
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntentionJWTClaimVerification.
func (*IntentionJWTClaimVerification) DeepCopyInto ¶
func (in *IntentionJWTClaimVerification) DeepCopyInto(out *IntentionJWTClaimVerification)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntentionJWTProvider ¶
type IntentionJWTProvider struct { // Name is the name of the JWT provider. There MUST be a corresponding // "jwt-provider" config entry with this name. Name string `json:"name,omitempty"` // VerifyClaims is a list of additional claims to verify in a JWT's payload. VerifyClaims []*IntentionJWTClaimVerification `json:"verifyClaims,omitempty"` }
func (*IntentionJWTProvider) DeepCopy ¶
func (in *IntentionJWTProvider) DeepCopy() *IntentionJWTProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntentionJWTProvider.
func (*IntentionJWTProvider) DeepCopyInto ¶
func (in *IntentionJWTProvider) DeepCopyInto(out *IntentionJWTProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntentionJWTRequirement ¶
type IntentionJWTRequirement struct { // Providers is a list of providers to consider when verifying a JWT. Providers []*IntentionJWTProvider `json:"providers,omitempty"` }
func (*IntentionJWTRequirement) DeepCopy ¶
func (in *IntentionJWTRequirement) DeepCopy() *IntentionJWTRequirement
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntentionJWTRequirement.
func (*IntentionJWTRequirement) DeepCopyInto ¶
func (in *IntentionJWTRequirement) DeepCopyInto(out *IntentionJWTRequirement)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntentionPermission ¶
type IntentionPermission struct { // Action is one of "allow" or "deny" for the action that // should be taken if this permission matches a request. Action IntentionAction `json:"action,omitempty"` // HTTP is a set of HTTP-specific authorization criteria. HTTP *IntentionHTTPPermission `json:"http,omitempty"` // JWT specifies configuration to validate a JSON Web Token for incoming requests. JWT *IntentionJWTRequirement `json:"jwt,omitempty"` }
func (*IntentionPermission) DeepCopy ¶
func (in *IntentionPermission) DeepCopy() *IntentionPermission
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntentionPermission.
func (*IntentionPermission) DeepCopyInto ¶
func (in *IntentionPermission) DeepCopyInto(out *IntentionPermission)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IntentionPermissions ¶
type IntentionPermissions []*IntentionPermission
func (IntentionPermissions) DeepCopy ¶
func (in IntentionPermissions) DeepCopy() IntentionPermissions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntentionPermissions.
func (IntentionPermissions) DeepCopyInto ¶
func (in IntentionPermissions) DeepCopyInto(out *IntentionPermissions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JSONWebKeySet ¶
type JSONWebKeySet struct { // Local specifies a local source for the key set. Local *LocalJWKS `json:"local,omitempty"` // Remote specifies how to fetch a key set from a remote server. Remote *RemoteJWKS `json:"remote,omitempty"` }
JSONWebKeySet defines a key set, its location on disk, or the means with which to fetch a key set from a remote server.
Exactly one of Local or Remote must be specified.
func (*JSONWebKeySet) DeepCopy ¶
func (in *JSONWebKeySet) DeepCopy() *JSONWebKeySet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JSONWebKeySet.
func (*JSONWebKeySet) DeepCopyInto ¶
func (in *JSONWebKeySet) DeepCopyInto(out *JSONWebKeySet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWKSCluster ¶
type JWKSCluster struct { // DiscoveryType refers to the service discovery type to use for resolving the cluster. // // This defaults to STRICT_DNS. // Other options include STATIC, LOGICAL_DNS, EDS or ORIGINAL_DST. DiscoveryType ClusterDiscoveryType `json:"discoveryType,omitempty"` // TLSCertificates refers to the data containing certificate authority certificates to use // in verifying a presented peer certificate. // If not specified and a peer certificate is presented it will not be verified. // // Must be either CaCertificateProviderInstance or TrustedCA. TLSCertificates *JWKSTLSCertificate `json:"tlsCertificates,omitempty"` // The timeout for new network connections to hosts in the cluster. // If not set, a default value of 5s will be used. ConnectTimeout metav1.Duration `json:"connectTimeout,omitempty"` }
JWKSCluster defines how the specified Remote JWKS URI is to be fetched.
func (*JWKSCluster) DeepCopy ¶
func (in *JWKSCluster) DeepCopy() *JWKSCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWKSCluster.
func (*JWKSCluster) DeepCopyInto ¶
func (in *JWKSCluster) DeepCopyInto(out *JWKSCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWKSRetryPolicy ¶
type JWKSRetryPolicy struct { // NumRetries is the number of times to retry fetching the JWKS. // The retry strategy uses jittered exponential backoff with // a base interval of 1s and max of 10s. // // Default value is 0. NumRetries int `json:"numRetries,omitempty"` // Retry's backoff policy. // // Defaults to Envoy's backoff policy. RetryPolicyBackOff *RetryPolicyBackOff `json:"retryPolicyBackOff,omitempty"` }
JWKSRetryPolicy defines a retry policy for fetching JWKS.
There is no retry by default.
func (*JWKSRetryPolicy) DeepCopy ¶
func (in *JWKSRetryPolicy) DeepCopy() *JWKSRetryPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWKSRetryPolicy.
func (*JWKSRetryPolicy) DeepCopyInto ¶
func (in *JWKSRetryPolicy) DeepCopyInto(out *JWKSRetryPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWKSTLSCertProviderInstance ¶
type JWKSTLSCertProviderInstance struct { // InstanceName refers to the certificate provider instance name. // // The default value is "default". InstanceName string `json:"instanceName,omitempty"` // CertificateName is used to specify certificate instances or types. For example, "ROOTCA" to specify // a root-certificate (validation context) or "example.com" to specify a certificate for a // particular domain. // // The default value is the empty string. CertificateName string `json:"certificateName,omitempty"` }
JWKSTLSCertProviderInstance Certificate provider instance for fetching TLS certificates.
func (*JWKSTLSCertProviderInstance) DeepCopy ¶
func (in *JWKSTLSCertProviderInstance) DeepCopy() *JWKSTLSCertProviderInstance
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWKSTLSCertProviderInstance.
func (*JWKSTLSCertProviderInstance) DeepCopyInto ¶
func (in *JWKSTLSCertProviderInstance) DeepCopyInto(out *JWKSTLSCertProviderInstance)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWKSTLSCertTrustedCA ¶
type JWKSTLSCertTrustedCA struct { Filename string `json:"filename,omitempty"` EnvironmentVariable string `json:"environmentVariable,omitempty"` InlineString string `json:"inlineString,omitempty"` InlineBytes []byte `json:"inlineBytes,omitempty"` }
JWKSTLSCertTrustedCA defines TLS certificate data containing certificate authority certificates to use in verifying a presented peer certificate.
Exactly one of Filename, EnvironmentVariable, InlineString or InlineBytes must be specified.
func (*JWKSTLSCertTrustedCA) DeepCopy ¶
func (in *JWKSTLSCertTrustedCA) DeepCopy() *JWKSTLSCertTrustedCA
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWKSTLSCertTrustedCA.
func (*JWKSTLSCertTrustedCA) DeepCopyInto ¶
func (in *JWKSTLSCertTrustedCA) DeepCopyInto(out *JWKSTLSCertTrustedCA)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWKSTLSCertificate ¶
type JWKSTLSCertificate struct { // CaCertificateProviderInstance Certificate provider instance for fetching TLS certificates. CaCertificateProviderInstance *JWKSTLSCertProviderInstance `json:"caCertificateProviderInstance,omitempty"` // TrustedCA defines TLS certificate data containing certificate authority certificates // to use in verifying a presented peer certificate. // // Exactly one of Filename, EnvironmentVariable, InlineString or InlineBytes must be specified. TrustedCA *JWKSTLSCertTrustedCA `json:"trustedCA,omitempty"` }
JWKSTLSCertificate refers to the data containing certificate authority certificates to use in verifying a presented peer certificate. If not specified and a peer certificate is presented it will not be verified.
Must be either CaCertificateProviderInstance or TrustedCA.
func (*JWKSTLSCertificate) DeepCopy ¶
func (in *JWKSTLSCertificate) DeepCopy() *JWKSTLSCertificate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWKSTLSCertificate.
func (*JWKSTLSCertificate) DeepCopyInto ¶
func (in *JWKSTLSCertificate) DeepCopyInto(out *JWKSTLSCertificate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWTCacheConfig ¶
type JWTCacheConfig struct { // Size specifies the maximum number of JWT verification // results to cache. // // Defaults to 0, meaning that JWT caching is disabled. Size int `json:"size,omitempty"` }
func (*JWTCacheConfig) DeepCopy ¶
func (in *JWTCacheConfig) DeepCopy() *JWTCacheConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTCacheConfig.
func (*JWTCacheConfig) DeepCopyInto ¶
func (in *JWTCacheConfig) DeepCopyInto(out *JWTCacheConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWTForwardingConfig ¶
type JWTForwardingConfig struct { // HeaderName is a header name to use when forwarding a verified // JWT to the backend. The verified JWT could have been extracted // from any location (query param, header, or cookie). // // The header value will be base64-URL-encoded, and will not be // padded unless PadForwardPayloadHeader is true. HeaderName string `json:"headerName,omitempty"` // PadForwardPayloadHeader determines whether padding should be added // to the base64 encoded token forwarded with ForwardPayloadHeader. // // Default value is false. PadForwardPayloadHeader bool `json:"padForwardPayloadHeader,omitempty"` }
func (*JWTForwardingConfig) DeepCopy ¶
func (in *JWTForwardingConfig) DeepCopy() *JWTForwardingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTForwardingConfig.
func (*JWTForwardingConfig) DeepCopyInto ¶
func (in *JWTForwardingConfig) DeepCopyInto(out *JWTForwardingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWTLocation ¶
type JWTLocation struct { // Header defines how to extract a JWT from an HTTP request header. Header *JWTLocationHeader `json:"header,omitempty"` // QueryParam defines how to extract a JWT from an HTTP request // query parameter. QueryParam *JWTLocationQueryParam `json:"queryParam,omitempty"` // Cookie defines how to extract a JWT from an HTTP request cookie. Cookie *JWTLocationCookie `json:"cookie,omitempty"` }
JWTLocation is a location where the JWT could be present in requests.
Only one of Header, QueryParam, or Cookie can be specified.
func (*JWTLocation) DeepCopy ¶
func (in *JWTLocation) DeepCopy() *JWTLocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTLocation.
func (*JWTLocation) DeepCopyInto ¶
func (in *JWTLocation) DeepCopyInto(out *JWTLocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWTLocationCookie ¶
type JWTLocationCookie struct { // Name is the name of the cookie containing the token. Name string `json:"name,omitempty"` }
JWTLocationCookie defines how to extract a JWT from an HTTP request cookie.
func (*JWTLocationCookie) DeepCopy ¶
func (in *JWTLocationCookie) DeepCopy() *JWTLocationCookie
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTLocationCookie.
func (*JWTLocationCookie) DeepCopyInto ¶
func (in *JWTLocationCookie) DeepCopyInto(out *JWTLocationCookie)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWTLocationHeader ¶
type JWTLocationHeader struct { // Name is the name of the header containing the token. Name string `json:"name,omitempty"` // ValuePrefix is an optional prefix that precedes the token in the // header value. // For example, "Bearer " is a standard value prefix for a header named // "Authorization", but the prefix is not part of the token itself: // "Authorization: Bearer <token>" ValuePrefix string `json:"valuePrefix,omitempty"` // Forward defines whether the header with the JWT should be // forwarded after the token has been verified. If false, the // header will not be forwarded to the backend. // // Default value is false. Forward bool `json:"forward,omitempty"` }
JWTLocationHeader defines how to extract a JWT from an HTTP request header.
func (*JWTLocationHeader) DeepCopy ¶
func (in *JWTLocationHeader) DeepCopy() *JWTLocationHeader
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTLocationHeader.
func (*JWTLocationHeader) DeepCopyInto ¶
func (in *JWTLocationHeader) DeepCopyInto(out *JWTLocationHeader)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWTLocationQueryParam ¶
type JWTLocationQueryParam struct { // Name is the name of the query param containing the token. Name string `json:"name,omitempty"` }
JWTLocationQueryParam defines how to extract a JWT from an HTTP request query parameter.
func (*JWTLocationQueryParam) DeepCopy ¶
func (in *JWTLocationQueryParam) DeepCopy() *JWTLocationQueryParam
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTLocationQueryParam.
func (*JWTLocationQueryParam) DeepCopyInto ¶
func (in *JWTLocationQueryParam) DeepCopyInto(out *JWTLocationQueryParam)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWTLocations ¶
type JWTLocations []*JWTLocation
func (JWTLocations) DeepCopy ¶
func (in JWTLocations) DeepCopy() JWTLocations
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTLocations.
func (JWTLocations) DeepCopyInto ¶
func (in JWTLocations) DeepCopyInto(out *JWTLocations)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWTProvider ¶
type JWTProvider struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec JWTProviderSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
JWTProvider is the Schema for the jwtproviders API.
func (*JWTProvider) AddFinalizer ¶
func (j *JWTProvider) AddFinalizer(name string)
func (*JWTProvider) ConsulGlobalResource ¶
func (j *JWTProvider) ConsulGlobalResource() bool
func (*JWTProvider) ConsulKind ¶
func (j *JWTProvider) ConsulKind() string
func (*JWTProvider) ConsulMirroringNS ¶
func (j *JWTProvider) ConsulMirroringNS() string
func (*JWTProvider) ConsulName ¶
func (j *JWTProvider) ConsulName() string
func (*JWTProvider) DeepCopy ¶
func (in *JWTProvider) DeepCopy() *JWTProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTProvider.
func (*JWTProvider) DeepCopyInto ¶
func (in *JWTProvider) DeepCopyInto(out *JWTProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*JWTProvider) DeepCopyObject ¶
func (in *JWTProvider) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*JWTProvider) DefaultNamespaceFields ¶
func (j *JWTProvider) DefaultNamespaceFields(_ common.ConsulMeta)
DefaultNamespaceFields sets Consul namespace fields on the config entry spec to their default values if namespaces are enabled.
func (*JWTProvider) Finalizers ¶
func (j *JWTProvider) Finalizers() []string
func (*JWTProvider) GetObjectMeta ¶
func (j *JWTProvider) GetObjectMeta() metav1.ObjectMeta
func (*JWTProvider) KubeKind ¶
func (j *JWTProvider) KubeKind() string
func (*JWTProvider) KubernetesName ¶
func (j *JWTProvider) KubernetesName() string
func (*JWTProvider) MatchesConsul ¶
func (j *JWTProvider) MatchesConsul(candidate api.ConfigEntry) bool
MatchesConsul returns true if the resource has the same fields as the Consul config entry.
func (*JWTProvider) RemoveFinalizer ¶
func (j *JWTProvider) RemoveFinalizer(name string)
func (*JWTProvider) SetLastSyncedTime ¶
func (j *JWTProvider) SetLastSyncedTime(time *metav1.Time)
func (*JWTProvider) SetSyncedCondition ¶
func (j *JWTProvider) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
func (*JWTProvider) SyncedCondition ¶
func (j *JWTProvider) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
SyncedCondition gets the synced condition.
func (*JWTProvider) SyncedConditionStatus ¶
func (j *JWTProvider) SyncedConditionStatus() corev1.ConditionStatus
SyncedConditionStatus returns the status of the synced condition.
func (*JWTProvider) ToConsul ¶
func (j *JWTProvider) ToConsul(datacenter string) api.ConfigEntry
ToConsul converts the resource to the corresponding Consul API definition. Its return type is the generic ConfigEntry but a specific config entry type should be constructed e.g. ServiceConfigEntry.
func (*JWTProvider) Validate ¶
func (j *JWTProvider) Validate(consulMeta common.ConsulMeta) error
Validate returns an error if the resource is invalid.
type JWTProviderList ¶
type JWTProviderList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []JWTProvider `json:"items"` }
JWTProviderList contains a list of JWTProvider.
func (*JWTProviderList) DeepCopy ¶
func (in *JWTProviderList) DeepCopy() *JWTProviderList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTProviderList.
func (*JWTProviderList) DeepCopyInto ¶
func (in *JWTProviderList) DeepCopyInto(out *JWTProviderList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*JWTProviderList) DeepCopyObject ¶
func (in *JWTProviderList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type JWTProviderSpec ¶
type JWTProviderSpec struct { // JSONWebKeySet defines a JSON Web Key Set, its location on disk, or the // means with which to fetch a key set from a remote server. JSONWebKeySet *JSONWebKeySet `json:"jsonWebKeySet,omitempty"` // Issuer is the entity that must have issued the JWT. // This value must match the "iss" claim of the token. Issuer string `json:"issuer,omitempty"` // Audiences is the set of audiences the JWT is allowed to access. // If specified, all JWTs verified with this provider must address // at least one of these to be considered valid. Audiences []string `json:"audiences,omitempty"` // Locations where the JWT will be present in requests. // Envoy will check all of these locations to extract a JWT. // If no locations are specified Envoy will default to: // 1. Authorization header with Bearer schema: // "Authorization: Bearer <token>" // 2. accessToken query parameter. Locations []*JWTLocation `json:"locations,omitempty"` // Forwarding defines rules for forwarding verified JWTs to the backend. Forwarding *JWTForwardingConfig `json:"forwarding,omitempty"` // ClockSkewSeconds specifies the maximum allowable time difference // from clock skew when validating the "exp" (Expiration) and "nbf" // (Not Before) claims. // // Default value is 30 seconds. ClockSkewSeconds int `json:"clockSkewSeconds,omitempty"` // CacheConfig defines configuration for caching the validation // result for previously seen JWTs. Caching results can speed up // verification when individual tokens are expected to be handled // multiple times. CacheConfig *JWTCacheConfig `json:"cacheConfig,omitempty"` }
JWTProviderSpec defines the desired state of JWTProvider +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource"
func (*JWTProviderSpec) DeepCopy ¶
func (in *JWTProviderSpec) DeepCopy() *JWTProviderSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JWTProviderSpec.
func (*JWTProviderSpec) DeepCopyInto ¶
func (in *JWTProviderSpec) DeepCopyInto(out *JWTProviderSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JWTProviderWebhook ¶
type JWTProviderWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*JWTProviderWebhook) List ¶
func (v *JWTProviderWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*JWTProviderWebhook) SetupWithManager ¶
func (v *JWTProviderWebhook) SetupWithManager(mgr ctrl.Manager)
type LeastRequestConfig ¶
type LeastRequestConfig struct { // ChoiceCount determines the number of random healthy hosts from which to select the one with the least requests. ChoiceCount uint32 `json:"choiceCount,omitempty"` }
func (*LeastRequestConfig) DeepCopy ¶
func (in *LeastRequestConfig) DeepCopy() *LeastRequestConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LeastRequestConfig.
func (*LeastRequestConfig) DeepCopyInto ¶
func (in *LeastRequestConfig) DeepCopyInto(out *LeastRequestConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LinkedService ¶
type LinkedService struct { // The namespace the service is registered in. Namespace string `json:"namespace,omitempty"` // Name is the name of the service, as defined in Consul's catalog. Name string `json:"name,omitempty"` // CAFile is the optional path to a CA certificate to use for TLS connections // from the gateway to the linked service. CAFile string `json:"caFile,omitempty"` // CertFile is the optional path to a client certificate to use for TLS connections // from the gateway to the linked service. CertFile string `json:"certFile,omitempty"` // KeyFile is the optional path to a private key to use for TLS connections // from the gateway to the linked service. KeyFile string `json:"keyFile,omitempty"` // SNI is the optional name to specify during the TLS handshake with a linked service. SNI string `json:"sni,omitempty"` // DisableAutoHostRewrite disables terminating gateways auto host rewrite feature when set to true. DisableAutoHostRewrite bool `json:"disableAutoHostRewrite,omitempty"` }
A LinkedService is a service represented by a terminating gateway.
func (*LinkedService) DeepCopy ¶
func (in *LinkedService) DeepCopy() *LinkedService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedService.
func (*LinkedService) DeepCopyInto ¶
func (in *LinkedService) DeepCopyInto(out *LinkedService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (LinkedService) NamespaceName ¶
func (l LinkedService) NamespaceName() string
type LoadBalancer ¶
type LoadBalancer struct { // Policy is the load balancing policy used to select a host. Policy string `json:"policy,omitempty"` // RingHashConfig contains configuration for the "ringHash" policy type. RingHashConfig *RingHashConfig `json:"ringHashConfig,omitempty"` // LeastRequestConfig contains configuration for the "leastRequest" policy type. LeastRequestConfig *LeastRequestConfig `json:"leastRequestConfig,omitempty"` // HashPolicies is a list of hash policies to use for hashing load balancing algorithms. // Hash policies are evaluated individually and combined such that identical lists // result in the same hash. // If no hash policies are present, or none are successfully evaluated, // then a random backend host will be selected. HashPolicies []HashPolicy `json:"hashPolicies,omitempty"` }
func (*LoadBalancer) DeepCopy ¶
func (in *LoadBalancer) DeepCopy() *LoadBalancer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancer.
func (*LoadBalancer) DeepCopyInto ¶
func (in *LoadBalancer) DeepCopyInto(out *LoadBalancer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LocalJWKS ¶
type LocalJWKS struct { // JWKS contains a base64 encoded JWKS. JWKS string `json:"jwks,omitempty"` // Filename configures a location on disk where the JWKS can be // found. If specified, the file must be present on the disk of ALL // proxies with intentions referencing this provider. Filename string `json:"filename,omitempty"` }
LocalJWKS specifies a location for a local JWKS.
Only one of String and Filename can be specified.
func (*LocalJWKS) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalJWKS.
func (*LocalJWKS) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Locality ¶
type Locality struct { Region string `json:"region,omitempty"` Zone string `json:"zone,omitempty"` }
func (*Locality) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Locality.
func (*Locality) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogSinkType ¶
type LogSinkType string
LogSinkType represents the destination for Envoy access logs. One of "file", "stderr", or "stdout".
const ( DefaultLogSinkType LogSinkType = "" FileLogSinkType LogSinkType = "file" StdErrLogSinkType LogSinkType = "stderr" StdOutLogSinkType LogSinkType = "stdout" )
type Mesh ¶
type Mesh struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec MeshSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
Mesh is the Schema for the mesh API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource"
func (*Mesh) AddFinalizer ¶
func (*Mesh) ConsulGlobalResource ¶
func (*Mesh) ConsulKind ¶
func (*Mesh) ConsulMirroringNS ¶
func (*Mesh) ConsulName ¶
func (*Mesh) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mesh.
func (*Mesh) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Mesh) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Mesh) DefaultNamespaceFields ¶
func (in *Mesh) DefaultNamespaceFields(_ common.ConsulMeta)
DefaultNamespaceFields has no behaviour here as meshes have no namespace specific fields.
func (*Mesh) Finalizers ¶
func (*Mesh) GetObjectMeta ¶
func (in *Mesh) GetObjectMeta() metav1.ObjectMeta
func (*Mesh) KubernetesName ¶
func (*Mesh) MatchesConsul ¶
func (in *Mesh) MatchesConsul(candidate capi.ConfigEntry) bool
func (*Mesh) RemoveFinalizer ¶
func (*Mesh) SetLastSyncedTime ¶
func (*Mesh) SetSyncedCondition ¶
func (in *Mesh) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
func (*Mesh) SyncedCondition ¶
func (in *Mesh) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
func (*Mesh) SyncedConditionStatus ¶
func (in *Mesh) SyncedConditionStatus() corev1.ConditionStatus
type MeshDirectionalHTTPConfig ¶
type MeshDirectionalHTTPConfig struct {
RequestNormalization *RequestNormalizationMeshConfig `json:"requestNormalization,omitempty"`
}
MeshDirectionalHTTPConfig holds mesh configuration specific to HTTP requests for a given traffic direction.
type MeshDirectionalTLSConfig ¶
type MeshDirectionalTLSConfig struct { // TLSMinVersion sets the default minimum TLS version supported. // One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. // If unspecified, Envoy v1.22.0 and newer will default to TLS 1.2 as a min version, // while older releases of Envoy default to TLS 1.0. TLSMinVersion string `json:"tlsMinVersion,omitempty"` // TLSMaxVersion sets the default maximum TLS version supported. Must be greater than or equal to `TLSMinVersion`. // One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. // If unspecified, Envoy will default to TLS 1.3 as a max version for incoming connections. TLSMaxVersion string `json:"tlsMaxVersion,omitempty"` // CipherSuites sets the default list of TLS cipher suites to support when negotiating connections using TLS 1.2 or earlier. // If unspecified, Envoy will use a default server cipher list. The list of supported cipher suites can be seen in // https://github.com/hashicorp/consul/blob/v1.11.2/types/tls.go#L154-L169 and is dependent on underlying support in Envoy. // Future releases of Envoy may remove currently-supported but insecure cipher suites, // and future releases of Consul may add new supported cipher suites if any are added to Envoy. CipherSuites []string `json:"cipherSuites,omitempty"` }
func (*MeshDirectionalTLSConfig) DeepCopy ¶
func (in *MeshDirectionalTLSConfig) DeepCopy() *MeshDirectionalTLSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshDirectionalTLSConfig.
func (*MeshDirectionalTLSConfig) DeepCopyInto ¶
func (in *MeshDirectionalTLSConfig) DeepCopyInto(out *MeshDirectionalTLSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshGateway ¶
type MeshGateway struct { // Mode is the mode that should be used for the upstream connection. // One of none, local, or remote. Mode string `json:"mode,omitempty"` }
MeshGateway controls how Mesh Gateways are used for upstream Connect services.
func (*MeshGateway) DeepCopy ¶
func (in *MeshGateway) DeepCopy() *MeshGateway
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshGateway.
func (*MeshGateway) DeepCopyInto ¶
func (in *MeshGateway) DeepCopyInto(out *MeshGateway)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshGatewayMode ¶
type MeshGatewayMode string
type MeshHTTPConfig ¶
type MeshHTTPConfig struct { SanitizeXForwardedClientCert bool `json:"sanitizeXForwardedClientCert,omitempty"` // Incoming configures settings for incoming HTTP traffic to mesh proxies. Incoming *MeshDirectionalHTTPConfig `json:"incoming,omitempty"` }
func (*MeshHTTPConfig) DeepCopy ¶
func (in *MeshHTTPConfig) DeepCopy() *MeshHTTPConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshHTTPConfig.
func (*MeshHTTPConfig) DeepCopyInto ¶
func (in *MeshHTTPConfig) DeepCopyInto(out *MeshHTTPConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshList ¶
type MeshList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Mesh `json:"items"` }
MeshList contains a list of Mesh.
func (*MeshList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshList.
func (*MeshList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MeshList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MeshService ¶
type MeshService struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. metav1.ObjectMeta `json:"metadata,omitempty"` // Spec defines the desired state of MeshService. Spec MeshServiceSpec `json:"spec,omitempty"` }
MeshService holds a reference to an externally managed Consul Service Mesh service.
func (*MeshService) DeepCopy ¶
func (in *MeshService) DeepCopy() *MeshService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshService.
func (*MeshService) DeepCopyInto ¶
func (in *MeshService) DeepCopyInto(out *MeshService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MeshService) DeepCopyObject ¶
func (in *MeshService) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MeshServiceList ¶
type MeshServiceList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []MeshService `json:"items"` }
MeshServiceList is a list of MeshService resources.
func (*MeshServiceList) DeepCopy ¶
func (in *MeshServiceList) DeepCopy() *MeshServiceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshServiceList.
func (*MeshServiceList) DeepCopyInto ¶
func (in *MeshServiceList) DeepCopyInto(out *MeshServiceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MeshServiceList) DeepCopyObject ¶
func (in *MeshServiceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MeshServiceSpec ¶
type MeshServiceSpec struct { // Name holds the service name for a Consul service. Name string `json:"name,omitempty"` // Peer optionally specifies the name of the peer exporting the Consul service. // If not specified, the Consul service is assumed to be in the local datacenter. Peer *string `json:"peer,omitempty"` }
MeshServiceSpec specifies the 'spec' of the MeshService CRD.
func (*MeshServiceSpec) DeepCopy ¶
func (in *MeshServiceSpec) DeepCopy() *MeshServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshServiceSpec.
func (*MeshServiceSpec) DeepCopyInto ¶
func (in *MeshServiceSpec) DeepCopyInto(out *MeshServiceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshSpec ¶
type MeshSpec struct { // TransparentProxy controls the configuration specific to proxies in "transparent" mode. Added in v1.10.0. TransparentProxy TransparentProxyMeshConfig `json:"transparentProxy,omitempty"` // AllowEnablingPermissiveMutualTLS must be true in order to allow setting // MutualTLSMode=permissive in either service-defaults or proxy-defaults. AllowEnablingPermissiveMutualTLS bool `json:"allowEnablingPermissiveMutualTLS,omitempty"` // TLS defines the TLS configuration for the service mesh. TLS *MeshTLSConfig `json:"tls,omitempty"` // HTTP defines the HTTP configuration for the service mesh. HTTP *MeshHTTPConfig `json:"http,omitempty"` // Peering defines the peering configuration for the service mesh. Peering *PeeringMeshConfig `json:"peering,omitempty"` // ValidateClusters controls whether the clusters the route table refers to are validated. The default value is // false. When set to false and a route refers to a cluster that does not exist, the route table loads and routing // to a non-existent cluster results in a 404. When set to true and the route is set to a cluster that do not exist, // the route table will not load. For more information, refer to // [HTTP route configuration in the Envoy docs](https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/route/v3/route.proto#envoy-v3-api-field-config-route-v3-routeconfiguration-validate-clusters) // for more details. ValidateClusters bool `json:"validateClusters,omitempty"` }
MeshSpec defines the desired state of Mesh.
func (*MeshSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshSpec.
func (*MeshSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshTLSConfig ¶
type MeshTLSConfig struct { // Incoming defines the TLS configuration for inbound mTLS connections targeting // the public listener on Connect and TerminatingGateway proxy kinds. Incoming *MeshDirectionalTLSConfig `json:"incoming,omitempty"` // Outgoing defines the TLS configuration for outbound mTLS connections dialing upstreams // from Connect and IngressGateway proxy kinds. Outgoing *MeshDirectionalTLSConfig `json:"outgoing,omitempty"` }
func (*MeshTLSConfig) DeepCopy ¶
func (in *MeshTLSConfig) DeepCopy() *MeshTLSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MeshTLSConfig.
func (*MeshTLSConfig) DeepCopyInto ¶
func (in *MeshTLSConfig) DeepCopyInto(out *MeshTLSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MeshWebhook ¶
type MeshWebhook struct { client.Client Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta // contains filtered or unexported fields }
func (*MeshWebhook) List ¶
func (v *MeshWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*MeshWebhook) SetupWithManager ¶
func (v *MeshWebhook) SetupWithManager(mgr ctrl.Manager)
type MetricsSpec ¶
type MetricsSpec struct { // +kubebuilder:validation:Maximum=65535 // +kubebuilder:validation:Minimum=1024 // The port used for metrics. Port *int32 `json:"port,omitempty"` // The path used for metrics. Path *string `json:"path,omitempty"` // Enable metrics for this class of gateways. If unspecified, will inherit // behavior from the global Helm configuration. Enabled *bool `json:"enabled,omitempty"` }
func (*MetricsSpec) DeepCopy ¶
func (in *MetricsSpec) DeepCopy() *MetricsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsSpec.
func (*MetricsSpec) DeepCopyInto ¶
func (in *MetricsSpec) DeepCopyInto(out *MetricsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MutualTLSMode ¶
type MutualTLSMode string
const ( // MutualTLSModeDefault represents no specific mode and should // be used to indicate that a different layer of the configuration // chain should take precedence. MutualTLSModeDefault MutualTLSMode = "" // MutualTLSModeStrict requires mTLS for incoming traffic. MutualTLSModeStrict MutualTLSMode = "strict" // MutualTLSModePermissive allows incoming non-mTLS traffic. MutualTLSModePermissive MutualTLSMode = "permissive" )
type PassiveHealthCheck ¶
type PassiveHealthCheck struct { // Interval between health check analysis sweeps. Each sweep may remove // hosts or return hosts to the pool. Ex. setting this to "10s" will set // the interval to 10 seconds. Interval metav1.Duration `json:"interval,omitempty"` // MaxFailures is the count of consecutive failures that results in a host // being removed from the pool. MaxFailures uint32 `json:"maxFailures,omitempty"` // EnforcingConsecutive5xx is the % chance that a host will be actually ejected // when an outlier status is detected through consecutive 5xx. // This setting can be used to disable ejection or to ramp it up slowly. // Ex. Setting this to 10 will make it a 10% chance that the host will be ejected. EnforcingConsecutive5xx *uint32 `json:"enforcingConsecutive5xx,omitempty"` // The maximum % of an upstream cluster that can be ejected due to outlier detection. // Defaults to 10% but will eject at least one host regardless of the value. MaxEjectionPercent *uint32 `json:"maxEjectionPercent,omitempty"` // The base time that a host is ejected for. The real time is equal to the base time // multiplied by the number of times the host has been ejected and is capped by // max_ejection_time (Default 300s). Defaults to 30s. BaseEjectionTime *metav1.Duration `json:"baseEjectionTime,omitempty"` }
PassiveHealthCheck configuration determines how upstream proxy instances will be monitored for removal from the load balancing pool.
func (*PassiveHealthCheck) DeepCopy ¶
func (in *PassiveHealthCheck) DeepCopy() *PassiveHealthCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PassiveHealthCheck.
func (*PassiveHealthCheck) DeepCopyInto ¶
func (in *PassiveHealthCheck) DeepCopyInto(out *PassiveHealthCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Peer ¶
type Peer struct { // Secret describes how to store the generated peering token. Secret *Secret `json:"secret,omitempty"` }
func (*Peer) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Peer.
func (*Peer) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PeeringAcceptor ¶
type PeeringAcceptor struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PeeringAcceptorSpec `json:"spec,omitempty"` Status PeeringAcceptorStatus `json:"status,omitempty"` }
PeeringAcceptor is the Schema for the peeringacceptors API. +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="peering-acceptor"
func (*PeeringAcceptor) DeepCopy ¶
func (in *PeeringAcceptor) DeepCopy() *PeeringAcceptor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringAcceptor.
func (*PeeringAcceptor) DeepCopyInto ¶
func (in *PeeringAcceptor) DeepCopyInto(out *PeeringAcceptor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PeeringAcceptor) DeepCopyObject ¶
func (in *PeeringAcceptor) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*PeeringAcceptor) KubeKind ¶
func (pa *PeeringAcceptor) KubeKind() string
func (*PeeringAcceptor) KubernetesName ¶
func (pa *PeeringAcceptor) KubernetesName() string
func (*PeeringAcceptor) Secret ¶
func (pa *PeeringAcceptor) Secret() *Secret
func (*PeeringAcceptor) SecretRef ¶
func (pa *PeeringAcceptor) SecretRef() *SecretRefStatus
func (*PeeringAcceptor) SetSyncedCondition ¶
func (pa *PeeringAcceptor) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
func (*PeeringAcceptor) Validate ¶
func (pa *PeeringAcceptor) Validate() error
type PeeringAcceptorList ¶
type PeeringAcceptorList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PeeringAcceptor `json:"items"` }
PeeringAcceptorList contains a list of PeeringAcceptor.
func (*PeeringAcceptorList) DeepCopy ¶
func (in *PeeringAcceptorList) DeepCopy() *PeeringAcceptorList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringAcceptorList.
func (*PeeringAcceptorList) DeepCopyInto ¶
func (in *PeeringAcceptorList) DeepCopyInto(out *PeeringAcceptorList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PeeringAcceptorList) DeepCopyObject ¶
func (in *PeeringAcceptorList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PeeringAcceptorSpec ¶
type PeeringAcceptorSpec struct { // Peer describes the information needed to create a peering. Peer *Peer `json:"peer"` }
PeeringAcceptorSpec defines the desired state of PeeringAcceptor.
func (*PeeringAcceptorSpec) DeepCopy ¶
func (in *PeeringAcceptorSpec) DeepCopy() *PeeringAcceptorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringAcceptorSpec.
func (*PeeringAcceptorSpec) DeepCopyInto ¶
func (in *PeeringAcceptorSpec) DeepCopyInto(out *PeeringAcceptorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PeeringAcceptorStatus ¶
type PeeringAcceptorStatus struct { // LatestPeeringVersion is the latest version of the resource that was reconciled. LatestPeeringVersion *uint64 `json:"latestPeeringVersion,omitempty"` // SecretRef shows the status of the secret. // +optional SecretRef *SecretRefStatus `json:"secret,omitempty"` // Conditions indicate the latest available observations of a resource's current state. // +optional // +patchMergeKey=type // +patchStrategy=merge Conditions Conditions `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` // LastSyncedTime is the last time the resource successfully synced with Consul. // +optional LastSyncedTime *metav1.Time `json:"lastSyncedTime,omitempty" description:"last time the condition transitioned from one status to another"` }
PeeringAcceptorStatus defines the observed state of PeeringAcceptor.
func (*PeeringAcceptorStatus) DeepCopy ¶
func (in *PeeringAcceptorStatus) DeepCopy() *PeeringAcceptorStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringAcceptorStatus.
func (*PeeringAcceptorStatus) DeepCopyInto ¶
func (in *PeeringAcceptorStatus) DeepCopyInto(out *PeeringAcceptorStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PeeringAcceptorWebhook ¶
type PeeringAcceptorWebhook struct { client.Client Logger logr.Logger // contains filtered or unexported fields }
func (*PeeringAcceptorWebhook) SetupWithManager ¶
func (v *PeeringAcceptorWebhook) SetupWithManager(mgr ctrl.Manager)
type PeeringDialer ¶
type PeeringDialer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PeeringDialerSpec `json:"spec,omitempty"` Status PeeringDialerStatus `json:"status,omitempty"` }
PeeringDialer is the Schema for the peeringdialers API. +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="peering-dialer"
func (*PeeringDialer) DeepCopy ¶
func (in *PeeringDialer) DeepCopy() *PeeringDialer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringDialer.
func (*PeeringDialer) DeepCopyInto ¶
func (in *PeeringDialer) DeepCopyInto(out *PeeringDialer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PeeringDialer) DeepCopyObject ¶
func (in *PeeringDialer) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*PeeringDialer) KubeKind ¶
func (pd *PeeringDialer) KubeKind() string
func (*PeeringDialer) KubernetesName ¶
func (pd *PeeringDialer) KubernetesName() string
func (*PeeringDialer) Secret ¶
func (pd *PeeringDialer) Secret() *Secret
func (*PeeringDialer) SecretRef ¶
func (pd *PeeringDialer) SecretRef() *SecretRefStatus
func (*PeeringDialer) SetSyncedCondition ¶
func (pd *PeeringDialer) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
func (*PeeringDialer) Validate ¶
func (pd *PeeringDialer) Validate() error
type PeeringDialerList ¶
type PeeringDialerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PeeringDialer `json:"items"` }
PeeringDialerList contains a list of PeeringDialer.
func (*PeeringDialerList) DeepCopy ¶
func (in *PeeringDialerList) DeepCopy() *PeeringDialerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringDialerList.
func (*PeeringDialerList) DeepCopyInto ¶
func (in *PeeringDialerList) DeepCopyInto(out *PeeringDialerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PeeringDialerList) DeepCopyObject ¶
func (in *PeeringDialerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PeeringDialerSpec ¶
type PeeringDialerSpec struct { // Peer describes the information needed to create a peering. Peer *Peer `json:"peer"` }
PeeringDialerSpec defines the desired state of PeeringDialer.
func (*PeeringDialerSpec) DeepCopy ¶
func (in *PeeringDialerSpec) DeepCopy() *PeeringDialerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringDialerSpec.
func (*PeeringDialerSpec) DeepCopyInto ¶
func (in *PeeringDialerSpec) DeepCopyInto(out *PeeringDialerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PeeringDialerStatus ¶
type PeeringDialerStatus struct { // LatestPeeringVersion is the latest version of the resource that was reconciled. LatestPeeringVersion *uint64 `json:"latestPeeringVersion,omitempty"` // SecretRef shows the status of the secret. // +optional SecretRef *SecretRefStatus `json:"secret,omitempty"` // Conditions indicate the latest available observations of a resource's current state. // +optional // +patchMergeKey=type // +patchStrategy=merge Conditions Conditions `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` // LastSyncedTime is the last time the resource successfully synced with Consul. // +optional LastSyncedTime *metav1.Time `json:"lastSyncedTime,omitempty" description:"last time the condition transitioned from one status to another"` }
PeeringDialerStatus defines the observed state of PeeringDialer.
func (*PeeringDialerStatus) DeepCopy ¶
func (in *PeeringDialerStatus) DeepCopy() *PeeringDialerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringDialerStatus.
func (*PeeringDialerStatus) DeepCopyInto ¶
func (in *PeeringDialerStatus) DeepCopyInto(out *PeeringDialerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PeeringDialerWebhook ¶
type PeeringDialerWebhook struct { client.Client Logger logr.Logger // contains filtered or unexported fields }
func (*PeeringDialerWebhook) SetupWithManager ¶
func (v *PeeringDialerWebhook) SetupWithManager(mgr ctrl.Manager)
type PeeringMeshConfig ¶
type PeeringMeshConfig struct { // PeerThroughMeshGateways determines whether peering traffic between // control planes should flow through mesh gateways. If enabled, // Consul servers will advertise mesh gateway addresses as their own. // Additionally, mesh gateways will configure themselves to expose // the local servers using a peering-specific SNI. PeerThroughMeshGateways bool `json:"peerThroughMeshGateways,omitempty"` }
func (*PeeringMeshConfig) DeepCopy ¶
func (in *PeeringMeshConfig) DeepCopy() *PeeringMeshConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringMeshConfig.
func (*PeeringMeshConfig) DeepCopyInto ¶
func (in *PeeringMeshConfig) DeepCopyInto(out *PeeringMeshConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PolicyTargetReference ¶
type PolicyTargetReference struct { // Group is the group of the target resource. // // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:MaxLength=253 Group string `json:"group"` // Kind is kind of the target resource. // // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:MaxLength=253 Kind string `json:"kind"` // Name is the name of the target resource. // // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:MaxLength=253 Name string `json:"name"` // Namespace is the namespace of the referent. When unspecified, the local // namespace is inferred. Even when policy targets a resource in a different // namespace, it may only apply to traffic originating from the same // namespace as the policy. // // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:MaxLength=253 // +optional Namespace string `json:"namespace,omitempty"` // SectionName refers to the listener targeted by this policy. SectionName *gwv1beta1.SectionName `json:"sectionName,omitempty"` }
PolicyTargetReference identifies the target that the policy applies to.
func (*PolicyTargetReference) DeepCopy ¶
func (in *PolicyTargetReference) DeepCopy() *PolicyTargetReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyTargetReference.
func (*PolicyTargetReference) DeepCopyInto ¶
func (in *PolicyTargetReference) DeepCopyInto(out *PolicyTargetReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrioritizeByLocality ¶
type PrioritizeByLocality struct { // Mode specifies the type of prioritization that will be performed // when selecting nodes in the local partition. // Valid values are: "" (default "none"), "none", and "failover". Mode string `json:"mode,omitempty"` }
PrioritizeByLocality controls whether the locality of services within the local partition will be used to prioritize connectivity.
func (*PrioritizeByLocality) DeepCopy ¶
func (in *PrioritizeByLocality) DeepCopy() *PrioritizeByLocality
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrioritizeByLocality.
func (*PrioritizeByLocality) DeepCopyInto ¶
func (in *PrioritizeByLocality) DeepCopyInto(out *PrioritizeByLocality)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyDefaults ¶
type ProxyDefaults struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ProxyDefaultsSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
ProxyDefaults is the Schema for the proxydefaults API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="proxy-defaults"
func (*ProxyDefaults) AddFinalizer ¶
func (in *ProxyDefaults) AddFinalizer(name string)
func (*ProxyDefaults) ConsulGlobalResource ¶
func (in *ProxyDefaults) ConsulGlobalResource() bool
func (*ProxyDefaults) ConsulKind ¶
func (in *ProxyDefaults) ConsulKind() string
func (*ProxyDefaults) ConsulMirroringNS ¶
func (in *ProxyDefaults) ConsulMirroringNS() string
func (*ProxyDefaults) ConsulName ¶
func (in *ProxyDefaults) ConsulName() string
func (*ProxyDefaults) DeepCopy ¶
func (in *ProxyDefaults) DeepCopy() *ProxyDefaults
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyDefaults.
func (*ProxyDefaults) DeepCopyInto ¶
func (in *ProxyDefaults) DeepCopyInto(out *ProxyDefaults)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProxyDefaults) DeepCopyObject ¶
func (in *ProxyDefaults) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ProxyDefaults) DefaultNamespaceFields ¶
func (in *ProxyDefaults) DefaultNamespaceFields(_ common.ConsulMeta)
DefaultNamespaceFields has no behaviour here as proxy-defaults have no namespace specific fields.
func (*ProxyDefaults) Finalizers ¶
func (in *ProxyDefaults) Finalizers() []string
func (*ProxyDefaults) GetObjectMeta ¶
func (in *ProxyDefaults) GetObjectMeta() metav1.ObjectMeta
func (*ProxyDefaults) KubeKind ¶
func (in *ProxyDefaults) KubeKind() string
func (*ProxyDefaults) KubernetesName ¶
func (in *ProxyDefaults) KubernetesName() string
func (*ProxyDefaults) MatchesConsul ¶
func (in *ProxyDefaults) MatchesConsul(candidate api.ConfigEntry) bool
func (*ProxyDefaults) RemoveFinalizer ¶
func (in *ProxyDefaults) RemoveFinalizer(name string)
func (*ProxyDefaults) SetLastSyncedTime ¶
func (in *ProxyDefaults) SetLastSyncedTime(time *metav1.Time)
func (*ProxyDefaults) SetSyncedCondition ¶
func (in *ProxyDefaults) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
func (*ProxyDefaults) SyncedCondition ¶
func (in *ProxyDefaults) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
func (*ProxyDefaults) SyncedConditionStatus ¶
func (in *ProxyDefaults) SyncedConditionStatus() corev1.ConditionStatus
func (*ProxyDefaults) ToConsul ¶
func (in *ProxyDefaults) ToConsul(datacenter string) capi.ConfigEntry
func (*ProxyDefaults) Validate ¶
func (in *ProxyDefaults) Validate(_ common.ConsulMeta) error
type ProxyDefaultsList ¶
type ProxyDefaultsList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ProxyDefaults `json:"items"` }
ProxyDefaultsList contains a list of ProxyDefaults.
func (*ProxyDefaultsList) DeepCopy ¶
func (in *ProxyDefaultsList) DeepCopy() *ProxyDefaultsList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyDefaultsList.
func (*ProxyDefaultsList) DeepCopyInto ¶
func (in *ProxyDefaultsList) DeepCopyInto(out *ProxyDefaultsList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProxyDefaultsList) DeepCopyObject ¶
func (in *ProxyDefaultsList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ProxyDefaultsSpec ¶
type ProxyDefaultsSpec struct { // Mode can be one of "direct" or "transparent". "transparent" represents that inbound and outbound // application traffic is being captured and redirected through the proxy. This mode does not // enable the traffic redirection itself. Instead it signals Consul to configure Envoy as if // traffic is already being redirected. "direct" represents that the proxy's listeners must be // dialed directly by the local application and other proxies. // Note: This cannot be set using the CRD and should be set using annotations on the // services that are part of the mesh. Mode *ProxyMode `json:"mode,omitempty"` // TransparentProxy controls configuration specific to proxies in transparent mode. // Note: This cannot be set using the CRD and should be set using annotations on the // services that are part of the mesh. TransparentProxy *TransparentProxy `json:"transparentProxy,omitempty"` // MutualTLSMode controls whether mutual TLS is required for all incoming // connections when transparent proxy is enabled. This can be set to // "permissive" or "strict". "strict" is the default which requires mutual // TLS for incoming connections. In the insecure "permissive" mode, // connections to the sidecar proxy public listener port require mutual // TLS, but connections to the service port do not require mutual TLS and // are proxied to the application unmodified. Note: Intentions are not // enforced for non-mTLS connections. To keep your services secure, we // recommend using "strict" mode whenever possible and enabling // "permissive" mode only when necessary. MutualTLSMode MutualTLSMode `json:"mutualTLSMode,omitempty"` // Config is an arbitrary map of configuration values used by Connect proxies. // Any values that your proxy allows can be configured globally here. // Supports JSON config values. See https://www.consul.io/docs/connect/proxies/envoy#configuration-formatting // +kubebuilder:validation:Type=object // +kubebuilder:validation:Schemaless // +kubebuilder:pruning:PreserveUnknownFields Config json.RawMessage `json:"config,omitempty"` // MeshGateway controls the default mesh gateway configuration for this service. MeshGateway MeshGateway `json:"meshGateway,omitempty"` // Expose controls the default expose path configuration for Envoy. Expose Expose `json:"expose,omitempty"` // AccessLogs controls all envoy instances' access logging configuration. AccessLogs *AccessLogs `json:"accessLogs,omitempty"` // EnvoyExtensions are a list of extensions to modify Envoy proxy configuration. EnvoyExtensions EnvoyExtensions `json:"envoyExtensions,omitempty"` // FailoverPolicy specifies the exact mechanism used for failover. FailoverPolicy *FailoverPolicy `json:"failoverPolicy,omitempty"` // PrioritizeByLocality controls whether the locality of services within the // local partition will be used to prioritize connectivity. PrioritizeByLocality *PrioritizeByLocality `json:"prioritizeByLocality,omitempty"` }
ProxyDefaultsSpec defines the desired state of ProxyDefaults.
func (*ProxyDefaultsSpec) DeepCopy ¶
func (in *ProxyDefaultsSpec) DeepCopy() *ProxyDefaultsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyDefaultsSpec.
func (*ProxyDefaultsSpec) DeepCopyInto ¶
func (in *ProxyDefaultsSpec) DeepCopyInto(out *ProxyDefaultsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyDefaultsWebhook ¶
type ProxyDefaultsWebhook struct { client.Client Logger logr.Logger ConsulMeta common.ConsulMeta // contains filtered or unexported fields }
func (*ProxyDefaultsWebhook) SetupWithManager ¶
func (v *ProxyDefaultsWebhook) SetupWithManager(mgr ctrl.Manager)
type RateLimits ¶
type RateLimits struct { // InstanceLevel represents rate limit configuration // that is applied per service instance. InstanceLevel InstanceLevelRateLimits `json:"instanceLevel,omitempty"` }
RateLimits is rate limiting configuration that is applied to inbound traffic for a service. Rate limiting is a Consul Enterprise feature.
func (*RateLimits) DeepCopy ¶
func (in *RateLimits) DeepCopy() *RateLimits
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimits.
func (*RateLimits) DeepCopyInto ¶
func (in *RateLimits) DeepCopyInto(out *RateLimits)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReadWriteRatesConfig ¶
type ReadWriteRatesConfig struct { ReadRate float64 `json:"readRate,omitempty"` WriteRate float64 `json:"writeRate,omitempty"` }
func (*ReadWriteRatesConfig) DeepCopy ¶
func (in *ReadWriteRatesConfig) DeepCopy() *ReadWriteRatesConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReadWriteRatesConfig.
func (*ReadWriteRatesConfig) DeepCopyInto ¶
func (in *ReadWriteRatesConfig) DeepCopyInto(out *ReadWriteRatesConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Registration ¶
type Registration struct { // Standard Kubernetes resource metadata. metav1.TypeMeta `json:",inline"` // Standard object's metadata. metav1.ObjectMeta `json:"metadata,omitempty"` // Spec defines the desired state of Registration. Spec RegistrationSpec `json:"spec,omitempty"` Status RegistrationStatus `json:"status,omitempty"` }
Registration defines the resource for working with service registrations.
func (*Registration) DeepCopy ¶
func (in *Registration) DeepCopy() *Registration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Registration.
func (*Registration) DeepCopyInto ¶
func (in *Registration) DeepCopyInto(out *Registration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Registration) DeepCopyObject ¶
func (in *Registration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Registration) EqualExceptStatus ¶
func (r *Registration) EqualExceptStatus(other *Registration) bool
func (*Registration) KubernetesName ¶
func (r *Registration) KubernetesName() string
func (*Registration) ToCatalogDeregistration ¶
func (r *Registration) ToCatalogDeregistration() *capi.CatalogDeregistration
ToCatalogDeregistration converts a Registration to a Consul CatalogDeregistration.
func (*Registration) ToCatalogRegistration ¶
func (r *Registration) ToCatalogRegistration() (*capi.CatalogRegistration, error)
ToCatalogRegistration converts a Registration to a Consul CatalogRegistration.
type RegistrationList ¶
type RegistrationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` // Items is the list of Registrations. Items []Registration `json:"items"` }
RegistrationList is a list of Registration resources.
func (*RegistrationList) DeepCopy ¶
func (in *RegistrationList) DeepCopy() *RegistrationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistrationList.
func (*RegistrationList) DeepCopyInto ¶
func (in *RegistrationList) DeepCopyInto(out *RegistrationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RegistrationList) DeepCopyObject ¶
func (in *RegistrationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RegistrationSpec ¶
type RegistrationSpec struct { ID string `json:"id,omitempty"` Node string `json:"node,omitempty"` Address string `json:"address,omitempty"` TaggedAddresses map[string]string `json:"taggedAddresses,omitempty"` NodeMeta map[string]string `json:"nodeMeta,omitempty"` Datacenter string `json:"datacenter,omitempty"` Service Service `json:"service,omitempty"` SkipNodeUpdate bool `json:"skipNodeUpdate,omitempty"` Partition string `json:"partition,omitempty"` HealthCheck *HealthCheck `json:"check,omitempty"` Locality *Locality `json:"locality,omitempty"` }
RegistrationSpec specifies the desired state of the Config CRD.
func (*RegistrationSpec) DeepCopy ¶
func (in *RegistrationSpec) DeepCopy() *RegistrationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistrationSpec.
func (*RegistrationSpec) DeepCopyInto ¶
func (in *RegistrationSpec) DeepCopyInto(out *RegistrationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegistrationStatus ¶
type RegistrationStatus struct { // Conditions indicate the latest available observations of a resource's current state. // +optional // +patchMergeKey=type // +patchStrategy=merge Conditions Conditions `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` // LastSyncedTime is the last time the resource successfully synced with Consul. // +optional LastSyncedTime *metav1.Time `json:"lastSyncedTime,omitempty" description:"last time the condition transitioned from one status to another"` }
RegistrationStatus defines the observed state of Registration.
func (*RegistrationStatus) DeepCopy ¶
func (in *RegistrationStatus) DeepCopy() *RegistrationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistrationStatus.
func (*RegistrationStatus) DeepCopyInto ¶
func (in *RegistrationStatus) DeepCopyInto(out *RegistrationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegistrationWebhook ¶
type RegistrationWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*RegistrationWebhook) SetupWithManager ¶
func (v *RegistrationWebhook) SetupWithManager(mgr ctrl.Manager)
type RemoteJWKS ¶
type RemoteJWKS struct { // URI is the URI of the server to query for the JWKS. URI string `json:"uri,omitempty"` // RequestTimeoutMs is the number of milliseconds to // time out when making a request for the JWKS. RequestTimeoutMs int `json:"requestTimeoutMs,omitempty"` // CacheDuration is the duration after which cached keys // should be expired. // // Default value is 5 minutes. CacheDuration metav1.Duration `json:"cacheDuration,omitempty"` // FetchAsynchronously indicates that the JWKS should be fetched // when a client request arrives. Client requests will be paused // until the JWKS is fetched. // If false, the proxy listener will wait for the JWKS to be // fetched before being activated. // // Default value is false. FetchAsynchronously bool `json:"fetchAsynchronously,omitempty"` // RetryPolicy defines a retry policy for fetching JWKS. // // There is no retry by default. RetryPolicy *JWKSRetryPolicy `json:"retryPolicy,omitempty"` // JWKSCluster defines how the specified Remote JWKS URI is to be fetched. JWKSCluster *JWKSCluster `json:"jwksCluster,omitempty"` }
RemoteJWKS specifies how to fetch a JWKS from a remote server.
func (*RemoteJWKS) DeepCopy ¶
func (in *RemoteJWKS) DeepCopy() *RemoteJWKS
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteJWKS.
func (*RemoteJWKS) DeepCopyInto ¶
func (in *RemoteJWKS) DeepCopyInto(out *RemoteJWKS)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RequestNormalizationMeshConfig ¶
type RequestNormalizationMeshConfig struct { // InsecureDisablePathNormalization sets the value of the \`normalize_path\` option in the Envoy listener's // `HttpConnectionManager`. The default value is \`false\`. When set to \`true\` in Consul, \`normalize_path\` is // set to \`false\` for the Envoy proxy. This parameter disables the normalization of request URL paths according to // RFC 3986, conversion of \`\\\` to \`/\`, and decoding non-reserved %-encoded characters. When using L7 intentions // with path match rules, we recommend enabling path normalization in order to avoid match rule circumvention with // non-normalized path values. InsecureDisablePathNormalization bool `json:"insecureDisablePathNormalization,omitempty"` // MergeSlashes sets the value of the \`merge_slashes\` option in the Envoy listener's \`HttpConnectionManager\`. // The default value is \`false\`. This option controls the normalization of request URL paths by merging // consecutive \`/\` characters. This normalization is not part of RFC 3986. When using L7 intentions with path // match rules, we recommend enabling this setting to avoid match rule circumvention through non-normalized path // values, unless legitimate service traffic depends on allowing for repeat \`/\` characters, or upstream services // are configured to differentiate between single and multiple slashes. MergeSlashes bool `json:"mergeSlashes,omitempty"` // PathWithEscapedSlashesAction sets the value of the \`path_with_escaped_slashes_action\` option in the Envoy // listener's \`HttpConnectionManager\`. The default value of this option is empty, which is equivalent to // \`IMPLEMENTATION_SPECIFIC_DEFAULT\`. This parameter controls the action taken in response to request URL paths // with escaped slashes in the path. When using L7 intentions with path match rules, we recommend enabling this // setting to avoid match rule circumvention through non-normalized path values, unless legitimate service traffic // depends on allowing for escaped \`/\` or \`\\\` characters, or upstream services are configured to differentiate // between escaped and unescaped slashes. Refer to the Envoy documentation for more information on available // options. PathWithEscapedSlashesAction string `json:"pathWithEscapedSlashesAction,omitempty"` // HeadersWithUnderscoresAction sets the value of the \`headers_with_underscores_action\` option in the Envoy // listener's \`HttpConnectionManager\` under \`common_http_protocol_options\`. The default value of this option is // empty, which is equivalent to \`ALLOW\`. Refer to the Envoy documentation for more information on available // options. HeadersWithUnderscoresAction string `json:"headersWithUnderscoresAction,omitempty"` }
RequestNormalizationMeshConfig contains options pertaining to the normalization of HTTP requests processed by mesh proxies.
type RetryPolicyBackOff ¶
type RetryPolicyBackOff struct { // BaseInterval to be used for the next back off computation. // // The default value from envoy is 1s. BaseInterval metav1.Duration `json:"baseInterval,omitempty"` // MaxInternal to be used to specify the maximum interval between retries. // Optional but should be greater or equal to BaseInterval. // // Defaults to 10 times BaseInterval. MaxInterval metav1.Duration `json:"maxInterval,omitempty"` }
RetryPolicyBackOff defines retry's policy backoff.
Defaults to Envoy's backoff policy.
func (*RetryPolicyBackOff) DeepCopy ¶
func (in *RetryPolicyBackOff) DeepCopy() *RetryPolicyBackOff
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetryPolicyBackOff.
func (*RetryPolicyBackOff) DeepCopyInto ¶
func (in *RetryPolicyBackOff) DeepCopyInto(out *RetryPolicyBackOff)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RingHashConfig ¶
type RingHashConfig struct { // MinimumRingSize determines the minimum number of entries in the hash ring. MinimumRingSize uint64 `json:"minimumRingSize,omitempty"` // MaximumRingSize determines the maximum number of entries in the hash ring. MaximumRingSize uint64 `json:"maximumRingSize,omitempty"` }
func (*RingHashConfig) DeepCopy ¶
func (in *RingHashConfig) DeepCopy() *RingHashConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RingHashConfig.
func (*RingHashConfig) DeepCopyInto ¶
func (in *RingHashConfig) DeepCopyInto(out *RingHashConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteAuthFilter ¶
type RouteAuthFilter struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RouteAuthFilterSpec `json:"spec,omitempty"` Status RouteAuthFilterStatus `json:"status,omitempty"` }
RouteAuthFilter is the Schema for the routeauthfilters API. +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource"
func (*RouteAuthFilter) DeepCopy ¶
func (in *RouteAuthFilter) DeepCopy() *RouteAuthFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteAuthFilter.
func (*RouteAuthFilter) DeepCopyInto ¶
func (in *RouteAuthFilter) DeepCopyInto(out *RouteAuthFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteAuthFilter) DeepCopyObject ¶
func (in *RouteAuthFilter) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RouteAuthFilterList ¶
type RouteAuthFilterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RouteAuthFilter `json:"items"` }
RouteAuthFilterList contains a list of RouteAuthFilter.
func (*RouteAuthFilterList) DeepCopy ¶
func (in *RouteAuthFilterList) DeepCopy() *RouteAuthFilterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteAuthFilterList.
func (*RouteAuthFilterList) DeepCopyInto ¶
func (in *RouteAuthFilterList) DeepCopyInto(out *RouteAuthFilterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteAuthFilterList) DeepCopyObject ¶
func (in *RouteAuthFilterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RouteAuthFilterSpec ¶
type RouteAuthFilterSpec struct { // This re-uses the JWT requirement type from Gateway Policy Types. //+kubebuilder:validation:Optional JWT *GatewayJWTRequirement `json:"jwt,omitempty"` }
RouteAuthFilterSpec defines the desired state of RouteAuthFilter.
func (*RouteAuthFilterSpec) DeepCopy ¶
func (in *RouteAuthFilterSpec) DeepCopy() *RouteAuthFilterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteAuthFilterSpec.
func (*RouteAuthFilterSpec) DeepCopyInto ¶
func (in *RouteAuthFilterSpec) DeepCopyInto(out *RouteAuthFilterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteAuthFilterStatus ¶
type RouteAuthFilterStatus struct { // Conditions describe the current conditions of the Filter. // // // Known condition types are: // // * "Accepted" // * "ResolvedRefs" // // +optional // +listType=map // +listMapKey=type // +kubebuilder:validation:MaxItems=8 // +kubebuilder:default={{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"},{type: "ResolvedRefs", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}} Conditions []metav1.Condition `json:"conditions,omitempty"` }
RouteAuthFilterStatus defines the observed state of the gateway.
func (*RouteAuthFilterStatus) DeepCopy ¶
func (in *RouteAuthFilterStatus) DeepCopy() *RouteAuthFilterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteAuthFilterStatus.
func (*RouteAuthFilterStatus) DeepCopyInto ¶
func (in *RouteAuthFilterStatus) DeepCopyInto(out *RouteAuthFilterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteRetryFilter ¶
type RouteRetryFilter struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RouteRetryFilterSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
RouteRetryFilter is the Schema for the routeretryfilters API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource"
func (*RouteRetryFilter) DeepCopy ¶
func (in *RouteRetryFilter) DeepCopy() *RouteRetryFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteRetryFilter.
func (*RouteRetryFilter) DeepCopyInto ¶
func (in *RouteRetryFilter) DeepCopyInto(out *RouteRetryFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteRetryFilter) DeepCopyObject ¶
func (in *RouteRetryFilter) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RouteRetryFilter) GetNamespace ¶
func (h *RouteRetryFilter) GetNamespace() string
type RouteRetryFilterList ¶
type RouteRetryFilterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RouteRetryFilter `json:"items"` }
RouteRetryFilterList contains a list of RouteRetryFilter.
func (*RouteRetryFilterList) DeepCopy ¶
func (in *RouteRetryFilterList) DeepCopy() *RouteRetryFilterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteRetryFilterList.
func (*RouteRetryFilterList) DeepCopyInto ¶
func (in *RouteRetryFilterList) DeepCopyInto(out *RouteRetryFilterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteRetryFilterList) DeepCopyObject ¶
func (in *RouteRetryFilterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RouteRetryFilterSpec ¶
type RouteRetryFilterSpec struct { // +kubebuilder:validation:Minimum:=0 // +kubebuilder:validation:Optional NumRetries *uint32 `json:"numRetries"` // +kubebuilder:validation:Optional RetryOn []string `json:"retryOn"` // +kubebuilder:validation:Optional RetryOnStatusCodes []uint32 `json:"retryOnStatusCodes"` // +kubebuilder:validation:Optional RetryOnConnectFailure *bool `json:"retryOnConnectFailure"` }
RouteRetryFilterSpec defines the desired state of RouteRetryFilter.
func (*RouteRetryFilterSpec) DeepCopy ¶
func (in *RouteRetryFilterSpec) DeepCopy() *RouteRetryFilterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteRetryFilterSpec.
func (*RouteRetryFilterSpec) DeepCopyInto ¶
func (in *RouteRetryFilterSpec) DeepCopyInto(out *RouteRetryFilterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteTimeoutFilter ¶
type RouteTimeoutFilter struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RouteTimeoutFilterSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
RouteTimeoutFilter is the Schema for the httproutetimeoutfilters API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource"
func (*RouteTimeoutFilter) DeepCopy ¶
func (in *RouteTimeoutFilter) DeepCopy() *RouteTimeoutFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTimeoutFilter.
func (*RouteTimeoutFilter) DeepCopyInto ¶
func (in *RouteTimeoutFilter) DeepCopyInto(out *RouteTimeoutFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteTimeoutFilter) DeepCopyObject ¶
func (in *RouteTimeoutFilter) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RouteTimeoutFilter) GetNamespace ¶
func (h *RouteTimeoutFilter) GetNamespace() string
type RouteTimeoutFilterList ¶
type RouteTimeoutFilterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RouteTimeoutFilter `json:"items"` }
RouteTimeoutFilterList contains a list of RouteTimeoutFilter.
func (*RouteTimeoutFilterList) DeepCopy ¶
func (in *RouteTimeoutFilterList) DeepCopy() *RouteTimeoutFilterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTimeoutFilterList.
func (*RouteTimeoutFilterList) DeepCopyInto ¶
func (in *RouteTimeoutFilterList) DeepCopyInto(out *RouteTimeoutFilterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteTimeoutFilterList) DeepCopyObject ¶
func (in *RouteTimeoutFilterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RouteTimeoutFilterSpec ¶
type RouteTimeoutFilterSpec struct { // +kubebuilder:validation:Optional // +kubebuilder:validation:Type=string // +kubebuilder:validation:Format=duration RequestTimeout metav1.Duration `json:"requestTimeout"` // +kubebuilder:validation:Optional // +kubebuilder:validation:Type=string // +kubebuilder:validation:Format=duration IdleTimeout metav1.Duration `json:"idleTimeout"` }
RouteTimeoutFilterSpec defines the desired state of RouteTimeoutFilter.
func (*RouteTimeoutFilterSpec) DeepCopy ¶
func (in *RouteTimeoutFilterSpec) DeepCopy() *RouteTimeoutFilterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTimeoutFilterSpec.
func (*RouteTimeoutFilterSpec) DeepCopyInto ¶
func (in *RouteTimeoutFilterSpec) DeepCopyInto(out *RouteTimeoutFilterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SamenessGroup ¶
type SamenessGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SamenessGroupSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
SamenessGroup is the Schema for the samenessgroups API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="sameness-group"
func (*SamenessGroup) AddFinalizer ¶
func (in *SamenessGroup) AddFinalizer(name string)
func (*SamenessGroup) ConsulGlobalResource ¶
func (in *SamenessGroup) ConsulGlobalResource() bool
func (*SamenessGroup) ConsulKind ¶
func (in *SamenessGroup) ConsulKind() string
func (*SamenessGroup) ConsulMirroringNS ¶
func (in *SamenessGroup) ConsulMirroringNS() string
func (*SamenessGroup) ConsulName ¶
func (in *SamenessGroup) ConsulName() string
func (*SamenessGroup) DeepCopy ¶
func (in *SamenessGroup) DeepCopy() *SamenessGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SamenessGroup.
func (*SamenessGroup) DeepCopyInto ¶
func (in *SamenessGroup) DeepCopyInto(out *SamenessGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SamenessGroup) DeepCopyObject ¶
func (in *SamenessGroup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*SamenessGroup) DefaultNamespaceFields ¶
func (in *SamenessGroup) DefaultNamespaceFields(_ common.ConsulMeta)
DefaultNamespaceFields has no behaviour here as sameness-groups have no namespace specific fields.
func (*SamenessGroup) Finalizers ¶
func (in *SamenessGroup) Finalizers() []string
func (*SamenessGroup) GetObjectMeta ¶
func (in *SamenessGroup) GetObjectMeta() metav1.ObjectMeta
func (*SamenessGroup) KubeKind ¶
func (in *SamenessGroup) KubeKind() string
func (*SamenessGroup) KubernetesName ¶
func (in *SamenessGroup) KubernetesName() string
func (*SamenessGroup) MatchesConsul ¶
func (in *SamenessGroup) MatchesConsul(candidate api.ConfigEntry) bool
func (*SamenessGroup) RemoveFinalizer ¶
func (in *SamenessGroup) RemoveFinalizer(name string)
func (*SamenessGroup) SetLastSyncedTime ¶
func (in *SamenessGroup) SetLastSyncedTime(time *metav1.Time)
func (*SamenessGroup) SetSyncedCondition ¶
func (in *SamenessGroup) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
func (*SamenessGroup) SyncedCondition ¶
func (in *SamenessGroup) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
func (*SamenessGroup) SyncedConditionStatus ¶
func (in *SamenessGroup) SyncedConditionStatus() corev1.ConditionStatus
func (*SamenessGroup) ToConsul ¶
func (in *SamenessGroup) ToConsul(datacenter string) api.ConfigEntry
func (*SamenessGroup) Validate ¶
func (in *SamenessGroup) Validate(consulMeta common.ConsulMeta) error
type SamenessGroupList ¶
type SamenessGroupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SamenessGroup `json:"items"` }
SamenessGroupList contains a list of SamenessGroup.
func (*SamenessGroupList) DeepCopy ¶
func (in *SamenessGroupList) DeepCopy() *SamenessGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SamenessGroupList.
func (*SamenessGroupList) DeepCopyInto ¶
func (in *SamenessGroupList) DeepCopyInto(out *SamenessGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SamenessGroupList) DeepCopyObject ¶
func (in *SamenessGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SamenessGroupMember ¶
type SamenessGroupMember struct { // The partitions and peers that are part of the sameness group. // A sameness group member cannot define both peer and partition at the same time. Partition string `json:"partition,omitempty"` Peer string `json:"peer,omitempty"` }
func (*SamenessGroupMember) DeepCopy ¶
func (in *SamenessGroupMember) DeepCopy() *SamenessGroupMember
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SamenessGroupMember.
func (*SamenessGroupMember) DeepCopyInto ¶
func (in *SamenessGroupMember) DeepCopyInto(out *SamenessGroupMember)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SamenessGroupMembers ¶
type SamenessGroupMembers []SamenessGroupMember
func (SamenessGroupMembers) DeepCopy ¶
func (in SamenessGroupMembers) DeepCopy() SamenessGroupMembers
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SamenessGroupMembers.
func (SamenessGroupMembers) DeepCopyInto ¶
func (in SamenessGroupMembers) DeepCopyInto(out *SamenessGroupMembers)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SamenessGroupSpec ¶
type SamenessGroupSpec struct { // DefaultForFailover indicates that upstream requests to members of the given sameness group will implicitly failover between members of this sameness group. // When DefaultForFailover is true, the local partition must be a member of the sameness group or IncludeLocal must be set to true. DefaultForFailover bool `json:"defaultForFailover,omitempty"` // IncludeLocal is used to include the local partition as the first member of the sameness group. // The local partition can only be a member of a single sameness group. IncludeLocal bool `json:"includeLocal,omitempty"` // Members are the partitions and peers that are part of the sameness group. // If a member of a sameness group does not exist, it will be ignored. Members []SamenessGroupMember `json:"members,omitempty"` }
SamenessGroupSpec defines the desired state of SamenessGroup.
func (*SamenessGroupSpec) DeepCopy ¶
func (in *SamenessGroupSpec) DeepCopy() *SamenessGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SamenessGroupSpec.
func (*SamenessGroupSpec) DeepCopyInto ¶
func (in *SamenessGroupSpec) DeepCopyInto(out *SamenessGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SamenessGroupWebhook ¶
type SamenessGroupWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*SamenessGroupWebhook) List ¶
func (v *SamenessGroupWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*SamenessGroupWebhook) SetupWithManager ¶
func (v *SamenessGroupWebhook) SetupWithManager(mgr ctrl.Manager)
type Secret ¶
type Secret struct { // Name is the name of the secret generated. Name string `json:"name,omitempty"` // Key is the key of the secret generated. Key string `json:"key,omitempty"` // Backend is where the generated secret is stored. Currently supports the value: "kubernetes". Backend string `json:"backend,omitempty"` }
func (*Secret) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Secret.
func (*Secret) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretRefStatus ¶
type SecretRefStatus struct { Secret `json:",inline"` // ResourceVersion is the resource version for the secret. ResourceVersion string `json:"resourceVersion,omitempty"` }
func (*SecretRefStatus) DeepCopy ¶
func (in *SecretRefStatus) DeepCopy() *SecretRefStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretRefStatus.
func (*SecretRefStatus) DeepCopyInto ¶
func (in *SecretRefStatus) DeepCopyInto(out *SecretRefStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Service ¶
type Service struct { ID string `json:"id,omitempty"` Name string `json:"name"` Tags []string `json:"tags,omitempty"` Meta map[string]string `json:"meta,omitempty"` Port int `json:"port"` Address string `json:"address,omitempty"` SocketPath string `json:"socketPath,omitempty"` TaggedAddresses map[string]ServiceAddress `json:"taggedAddresses,omitempty"` Weights Weights `json:"weights,omitempty"` EnableTagOverride bool `json:"enableTagOverride,omitempty"` Locality *Locality `json:"locality,omitempty"` Namespace string `json:"namespace,omitempty"` Partition string `json:"partition,omitempty"` }
func (*Service) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.
func (*Service) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceAddress ¶
func (*ServiceAddress) DeepCopy ¶
func (in *ServiceAddress) DeepCopy() *ServiceAddress
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAddress.
func (*ServiceAddress) DeepCopyInto ¶
func (in *ServiceAddress) DeepCopyInto(out *ServiceAddress)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceConsumer ¶
type ServiceConsumer struct { // Partition is the admin partition to export the service to. Partition string `json:"partition,omitempty"` // Peer is the name of the peer to export the service to. Peer string `json:"peer,omitempty"` // SamenessGroup is the name of the sameness group to export the service to. SamenessGroup string `json:"samenessGroup,omitempty"` }
ServiceConsumer represents a downstream consumer of the service to be exported.
func (*ServiceConsumer) DeepCopy ¶
func (in *ServiceConsumer) DeepCopy() *ServiceConsumer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceConsumer.
func (*ServiceConsumer) DeepCopyInto ¶
func (in *ServiceConsumer) DeepCopyInto(out *ServiceConsumer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceDefaults ¶
type ServiceDefaults struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ServiceDefaultsSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
ServiceDefaults is the Schema for the servicedefaults API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="service-defaults"
func (*ServiceDefaults) AddFinalizer ¶
func (in *ServiceDefaults) AddFinalizer(name string)
func (*ServiceDefaults) ConsulGlobalResource ¶
func (in *ServiceDefaults) ConsulGlobalResource() bool
func (*ServiceDefaults) ConsulKind ¶
func (in *ServiceDefaults) ConsulKind() string
func (*ServiceDefaults) ConsulMirroringNS ¶
func (in *ServiceDefaults) ConsulMirroringNS() string
func (*ServiceDefaults) ConsulName ¶
func (in *ServiceDefaults) ConsulName() string
func (*ServiceDefaults) DeepCopy ¶
func (in *ServiceDefaults) DeepCopy() *ServiceDefaults
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDefaults.
func (*ServiceDefaults) DeepCopyInto ¶
func (in *ServiceDefaults) DeepCopyInto(out *ServiceDefaults)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceDefaults) DeepCopyObject ¶
func (in *ServiceDefaults) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ServiceDefaults) DefaultNamespaceFields ¶
func (in *ServiceDefaults) DefaultNamespaceFields(_ common.ConsulMeta)
DefaultNamespaceFields has no behaviour here as service-defaults have no namespace specific fields.
func (*ServiceDefaults) Finalizers ¶
func (in *ServiceDefaults) Finalizers() []string
func (*ServiceDefaults) GetObjectMeta ¶
func (in *ServiceDefaults) GetObjectMeta() metav1.ObjectMeta
func (*ServiceDefaults) KubeKind ¶
func (in *ServiceDefaults) KubeKind() string
func (*ServiceDefaults) KubernetesName ¶
func (in *ServiceDefaults) KubernetesName() string
func (*ServiceDefaults) MatchesConsul ¶
func (in *ServiceDefaults) MatchesConsul(candidate capi.ConfigEntry) bool
MatchesConsul returns true if entry has the same config as this struct.
func (*ServiceDefaults) RemoveFinalizer ¶
func (in *ServiceDefaults) RemoveFinalizer(name string)
func (*ServiceDefaults) SetLastSyncedTime ¶
func (in *ServiceDefaults) SetLastSyncedTime(time *metav1.Time)
func (*ServiceDefaults) SetSyncedCondition ¶
func (in *ServiceDefaults) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
func (*ServiceDefaults) SyncedCondition ¶
func (in *ServiceDefaults) SyncedCondition() (status corev1.ConditionStatus, reason string, message string)
func (*ServiceDefaults) SyncedConditionStatus ¶
func (in *ServiceDefaults) SyncedConditionStatus() corev1.ConditionStatus
func (*ServiceDefaults) ToConsul ¶
func (in *ServiceDefaults) ToConsul(datacenter string) capi.ConfigEntry
ToConsul converts the entry into it's Consul equivalent struct.
func (*ServiceDefaults) Validate ¶
func (in *ServiceDefaults) Validate(consulMeta common.ConsulMeta) error
Validate validates the fields provided in the spec of the ServiceDefaults and returns an error which lists all invalid fields in the resource spec.
type ServiceDefaultsDestination ¶
type ServiceDefaultsDestination struct { // Addresses is a list of IPs and/or hostnames that can be dialed // and routed through a terminating gateway. Addresses []string `json:"addresses,omitempty"` // Port is the port that can be dialed on any of the addresses in this // Destination. Port uint32 `json:"port,omitempty"` }
func (*ServiceDefaultsDestination) DeepCopy ¶
func (in *ServiceDefaultsDestination) DeepCopy() *ServiceDefaultsDestination
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDefaultsDestination.
func (*ServiceDefaultsDestination) DeepCopyInto ¶
func (in *ServiceDefaultsDestination) DeepCopyInto(out *ServiceDefaultsDestination)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceDefaultsList ¶
type ServiceDefaultsList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ServiceDefaults `json:"items"` }
ServiceDefaultsList contains a list of ServiceDefaults.
func (*ServiceDefaultsList) DeepCopy ¶
func (in *ServiceDefaultsList) DeepCopy() *ServiceDefaultsList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDefaultsList.
func (*ServiceDefaultsList) DeepCopyInto ¶
func (in *ServiceDefaultsList) DeepCopyInto(out *ServiceDefaultsList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceDefaultsList) DeepCopyObject ¶
func (in *ServiceDefaultsList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceDefaultsSpec ¶
type ServiceDefaultsSpec struct { // Protocol sets the protocol of the service. This is used by Connect proxies for // things like observability features and to unlock usage of the // service-splitter and service-router config entries for a service. Protocol string `json:"protocol,omitempty"` // Mode can be one of "direct" or "transparent". "transparent" represents that inbound and outbound // application traffic is being captured and redirected through the proxy. This mode does not // enable the traffic redirection itself. Instead it signals Consul to configure Envoy as if // traffic is already being redirected. "direct" represents that the proxy's listeners must be // dialed directly by the local application and other proxies. // Note: This cannot be set using the CRD and should be set using annotations on the // services that are part of the mesh. Mode *ProxyMode `json:"mode,omitempty"` // TransparentProxy controls configuration specific to proxies in transparent mode. // Note: This cannot be set using the CRD and should be set using annotations on the // services that are part of the mesh. TransparentProxy *TransparentProxy `json:"transparentProxy,omitempty"` // MutualTLSMode controls whether mutual TLS is required for all incoming // connections when transparent proxy is enabled. This can be set to // "permissive" or "strict". "strict" is the default which requires mutual // TLS for incoming connections. In the insecure "permissive" mode, // connections to the sidecar proxy public listener port require mutual // TLS, but connections to the service port do not require mutual TLS and // are proxied to the application unmodified. Note: Intentions are not // enforced for non-mTLS connections. To keep your services secure, we // recommend using "strict" mode whenever possible and enabling // "permissive" mode only when necessary. MutualTLSMode MutualTLSMode `json:"mutualTLSMode,omitempty"` // MeshGateway controls the default mesh gateway configuration for this service. MeshGateway MeshGateway `json:"meshGateway,omitempty"` // Expose controls the default expose path configuration for Envoy. Expose Expose `json:"expose,omitempty"` // ExternalSNI is an optional setting that allows for the TLS SNI value // to be changed to a non-connect value when federating with an external system. ExternalSNI string `json:"externalSNI,omitempty"` // UpstreamConfig controls default configuration settings that apply across all upstreams, // and per-upstream configuration overrides. Note that per-upstream configuration applies // across all federated datacenters to the pairing of source and upstream destination services. UpstreamConfig *Upstreams `json:"upstreamConfig,omitempty"` // Destination is an address(es)/port combination that represents an endpoint // outside the mesh. This is only valid when the mesh is configured in "transparent" // mode. Destinations live outside of Consul's catalog, and because of this, they // do not require an artificial node to be created. Destination *ServiceDefaultsDestination `json:"destination,omitempty"` // MaxInboundConnections is the maximum number of concurrent inbound connections to // each service instance. Defaults to 0 (using consul's default) if not set. MaxInboundConnections int `json:"maxInboundConnections,omitempty"` // LocalConnectTimeoutMs is the number of milliseconds allowed to make connections to the local application // instance before timing out. Defaults to 5000. LocalConnectTimeoutMs int `json:"localConnectTimeoutMs,omitempty"` // LocalRequestTimeoutMs is the timeout for HTTP requests to the local application instance in milliseconds. // Applies to HTTP-based protocols only. If not specified, inherits the Envoy default for // route timeouts (15s). LocalRequestTimeoutMs int `json:"localRequestTimeoutMs,omitempty"` // BalanceInboundConnections sets the strategy for allocating inbound connections to the service across // proxy threads. The only supported value is exact_balance. By default, no connection balancing is used. // Refer to the Envoy Connection Balance config for details. BalanceInboundConnections string `json:"balanceInboundConnections,omitempty"` // RateLimits is rate limiting configuration that is applied to // inbound traffic for a service. Rate limiting is a Consul enterprise feature. RateLimits *RateLimits `json:"rateLimits,omitempty"` // EnvoyExtensions are a list of extensions to modify Envoy proxy configuration. EnvoyExtensions EnvoyExtensions `json:"envoyExtensions,omitempty"` }
ServiceDefaultsSpec defines the desired state of ServiceDefaults.
func (*ServiceDefaultsSpec) DeepCopy ¶
func (in *ServiceDefaultsSpec) DeepCopy() *ServiceDefaultsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDefaultsSpec.
func (*ServiceDefaultsSpec) DeepCopyInto ¶
func (in *ServiceDefaultsSpec) DeepCopyInto(out *ServiceDefaultsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceDefaultsWebhook ¶
type ServiceDefaultsWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*ServiceDefaultsWebhook) List ¶
func (v *ServiceDefaultsWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*ServiceDefaultsWebhook) SetupWithManager ¶
func (v *ServiceDefaultsWebhook) SetupWithManager(mgr ctrl.Manager)
type ServiceIntentions ¶
type ServiceIntentions struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ServiceIntentionsSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
ServiceIntentions is the Schema for the serviceintentions API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="service-intentions"
func (*ServiceIntentions) AddFinalizer ¶
func (in *ServiceIntentions) AddFinalizer(f string)
func (*ServiceIntentions) ConsulGlobalResource ¶
func (in *ServiceIntentions) ConsulGlobalResource() bool
func (*ServiceIntentions) ConsulKind ¶
func (in *ServiceIntentions) ConsulKind() string
func (*ServiceIntentions) ConsulMirroringNS ¶
func (in *ServiceIntentions) ConsulMirroringNS() string
func (*ServiceIntentions) ConsulName ¶
func (in *ServiceIntentions) ConsulName() string
func (*ServiceIntentions) DeepCopy ¶
func (in *ServiceIntentions) DeepCopy() *ServiceIntentions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceIntentions.
func (*ServiceIntentions) DeepCopyInto ¶
func (in *ServiceIntentions) DeepCopyInto(out *ServiceIntentions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceIntentions) DeepCopyObject ¶
func (in *ServiceIntentions) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ServiceIntentions) DefaultNamespaceFields ¶
func (in *ServiceIntentions) DefaultNamespaceFields(consulMeta common.ConsulMeta)
DefaultNamespaceFields sets the namespace field on spec.destination to their default values if namespaces are enabled.
func (*ServiceIntentions) Finalizers ¶
func (in *ServiceIntentions) Finalizers() []string
func (*ServiceIntentions) GetObjectMeta ¶
func (in *ServiceIntentions) GetObjectMeta() metav1.ObjectMeta
func (*ServiceIntentions) KubeKind ¶
func (in *ServiceIntentions) KubeKind() string
func (*ServiceIntentions) KubernetesName ¶
func (in *ServiceIntentions) KubernetesName() string
func (*ServiceIntentions) MatchesConsul ¶
func (in *ServiceIntentions) MatchesConsul(candidate api.ConfigEntry) bool
func (*ServiceIntentions) RemoveFinalizer ¶
func (in *ServiceIntentions) RemoveFinalizer(f string)
func (*ServiceIntentions) SetLastSyncedTime ¶
func (in *ServiceIntentions) SetLastSyncedTime(time *metav1.Time)
func (*ServiceIntentions) SetSyncedCondition ¶
func (in *ServiceIntentions) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
func (*ServiceIntentions) SyncedCondition ¶
func (in *ServiceIntentions) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
func (*ServiceIntentions) SyncedConditionStatus ¶
func (in *ServiceIntentions) SyncedConditionStatus() corev1.ConditionStatus
func (*ServiceIntentions) ToConsul ¶
func (in *ServiceIntentions) ToConsul(datacenter string) api.ConfigEntry
func (*ServiceIntentions) Validate ¶
func (in *ServiceIntentions) Validate(consulMeta common.ConsulMeta) error
type ServiceIntentionsList ¶
type ServiceIntentionsList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ServiceIntentions `json:"items"` }
ServiceIntentionsList contains a list of ServiceIntentions.
func (*ServiceIntentionsList) DeepCopy ¶
func (in *ServiceIntentionsList) DeepCopy() *ServiceIntentionsList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceIntentionsList.
func (*ServiceIntentionsList) DeepCopyInto ¶
func (in *ServiceIntentionsList) DeepCopyInto(out *ServiceIntentionsList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceIntentionsList) DeepCopyObject ¶
func (in *ServiceIntentionsList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceIntentionsSpec ¶
type ServiceIntentionsSpec struct { // Destination is the intention destination that will have the authorization granted to. Destination IntentionDestination `json:"destination,omitempty"` // Sources is the list of all intention sources and the authorization granted to those sources. // The order of this list does not matter, but out of convenience Consul will always store this // reverse sorted by intention precedence, as that is the order that they will be evaluated at enforcement time. Sources SourceIntentions `json:"sources,omitempty"` // JWT specifies the configuration to validate a JSON Web Token for all incoming requests. JWT *IntentionJWTRequirement `json:"jwt,omitempty"` }
ServiceIntentionsSpec defines the desired state of ServiceIntentions.
func (*ServiceIntentionsSpec) DeepCopy ¶
func (in *ServiceIntentionsSpec) DeepCopy() *ServiceIntentionsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceIntentionsSpec.
func (*ServiceIntentionsSpec) DeepCopyInto ¶
func (in *ServiceIntentionsSpec) DeepCopyInto(out *ServiceIntentionsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceIntentionsWebhook ¶
type ServiceIntentionsWebhook struct { client.Client Logger logr.Logger ConsulMeta common.ConsulMeta // contains filtered or unexported fields }
func (*ServiceIntentionsWebhook) SetupWithManager ¶
func (v *ServiceIntentionsWebhook) SetupWithManager(mgr ctrl.Manager)
type ServiceResolver ¶
type ServiceResolver struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ServiceResolverSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
ServiceResolver is the Schema for the serviceresolvers API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="service-resolver"
func (*ServiceResolver) AddFinalizer ¶
func (in *ServiceResolver) AddFinalizer(f string)
func (*ServiceResolver) ConsulGlobalResource ¶
func (in *ServiceResolver) ConsulGlobalResource() bool
func (*ServiceResolver) ConsulKind ¶
func (in *ServiceResolver) ConsulKind() string
func (*ServiceResolver) ConsulMirroringNS ¶
func (in *ServiceResolver) ConsulMirroringNS() string
func (*ServiceResolver) ConsulName ¶
func (in *ServiceResolver) ConsulName() string
func (*ServiceResolver) DeepCopy ¶
func (in *ServiceResolver) DeepCopy() *ServiceResolver
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceResolver.
func (*ServiceResolver) DeepCopyInto ¶
func (in *ServiceResolver) DeepCopyInto(out *ServiceResolver)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceResolver) DeepCopyObject ¶
func (in *ServiceResolver) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ServiceResolver) DefaultNamespaceFields ¶
func (in *ServiceResolver) DefaultNamespaceFields(_ common.ConsulMeta)
DefaultNamespaceFields has no behaviour here as service-resolver have namespace fields that do not default.
func (*ServiceResolver) Finalizers ¶
func (in *ServiceResolver) Finalizers() []string
func (*ServiceResolver) GetObjectMeta ¶
func (in *ServiceResolver) GetObjectMeta() metav1.ObjectMeta
func (*ServiceResolver) KubeKind ¶
func (in *ServiceResolver) KubeKind() string
func (*ServiceResolver) KubernetesName ¶
func (in *ServiceResolver) KubernetesName() string
func (*ServiceResolver) MatchesConsul ¶
func (in *ServiceResolver) MatchesConsul(candidate capi.ConfigEntry) bool
func (*ServiceResolver) RemoveFinalizer ¶
func (in *ServiceResolver) RemoveFinalizer(f string)
func (*ServiceResolver) SetLastSyncedTime ¶
func (in *ServiceResolver) SetLastSyncedTime(time *metav1.Time)
func (*ServiceResolver) SetSyncedCondition ¶
func (in *ServiceResolver) SetSyncedCondition(status corev1.ConditionStatus, reason string, message string)
func (*ServiceResolver) SyncedCondition ¶
func (in *ServiceResolver) SyncedCondition() (status corev1.ConditionStatus, reason string, message string)
func (*ServiceResolver) SyncedConditionStatus ¶
func (in *ServiceResolver) SyncedConditionStatus() corev1.ConditionStatus
func (*ServiceResolver) ToConsul ¶
func (in *ServiceResolver) ToConsul(datacenter string) capi.ConfigEntry
ToConsul converts the entry into its Consul equivalent struct.
func (*ServiceResolver) Validate ¶
func (in *ServiceResolver) Validate(consulMeta common.ConsulMeta) error
type ServiceResolverFailover ¶
type ServiceResolverFailover struct { // Service is the service to resolve instead of the default as the failover // group of instances during failover. Service string `json:"service,omitempty"` // ServiceSubset is the named subset of the requested service to resolve as // the failover group of instances. If empty the default subset for the // requested service is used. ServiceSubset string `json:"serviceSubset,omitempty"` // Namespace is the namespace to resolve the requested service from to form // the failover group of instances. If empty the current namespace is used. Namespace string `json:"namespace,omitempty"` // Datacenters is a fixed list of datacenters to try during failover. Datacenters []string `json:"datacenters,omitempty"` // Targets specifies a fixed list of failover targets to try during failover. Targets []ServiceResolverFailoverTarget `json:"targets,omitempty"` // Policy specifies the exact mechanism used for failover. Policy *FailoverPolicy `json:"policy,omitempty"` // SamenessGroup is the name of the sameness group to try during failover. SamenessGroup string `json:"samenessGroup,omitempty"` }
func (*ServiceResolverFailover) DeepCopy ¶
func (in *ServiceResolverFailover) DeepCopy() *ServiceResolverFailover
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceResolverFailover.
func (*ServiceResolverFailover) DeepCopyInto ¶
func (in *ServiceResolverFailover) DeepCopyInto(out *ServiceResolverFailover)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceResolverFailoverMap ¶
type ServiceResolverFailoverMap map[string]ServiceResolverFailover
func (ServiceResolverFailoverMap) DeepCopy ¶
func (in ServiceResolverFailoverMap) DeepCopy() ServiceResolverFailoverMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceResolverFailoverMap.
func (ServiceResolverFailoverMap) DeepCopyInto ¶
func (in ServiceResolverFailoverMap) DeepCopyInto(out *ServiceResolverFailoverMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceResolverFailoverTarget ¶
type ServiceResolverFailoverTarget struct { // Service specifies the name of the service to try during failover. Service string `json:"service,omitempty"` // ServiceSubset specifies the service subset to try during failover. ServiceSubset string `json:"serviceSubset,omitempty"` // Partition specifies the partition to try during failover. Partition string `json:"partition,omitempty"` // Namespace specifies the namespace to try during failover. Namespace string `json:"namespace,omitempty"` // Datacenter specifies the datacenter to try during failover. Datacenter string `json:"datacenter,omitempty"` // Peer specifies the name of the cluster peer to try during failover. Peer string `json:"peer,omitempty"` }
func (*ServiceResolverFailoverTarget) DeepCopy ¶
func (in *ServiceResolverFailoverTarget) DeepCopy() *ServiceResolverFailoverTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceResolverFailoverTarget.
func (*ServiceResolverFailoverTarget) DeepCopyInto ¶
func (in *ServiceResolverFailoverTarget) DeepCopyInto(out *ServiceResolverFailoverTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceResolverList ¶
type ServiceResolverList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ServiceResolver `json:"items"` }
ServiceResolverList contains a list of ServiceResolver.
func (*ServiceResolverList) DeepCopy ¶
func (in *ServiceResolverList) DeepCopy() *ServiceResolverList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceResolverList.
func (*ServiceResolverList) DeepCopyInto ¶
func (in *ServiceResolverList) DeepCopyInto(out *ServiceResolverList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceResolverList) DeepCopyObject ¶
func (in *ServiceResolverList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceResolverRedirect ¶
type ServiceResolverRedirect struct { // Service is a service to resolve instead of the current service. Service string `json:"service,omitempty"` // ServiceSubset is a named subset of the given service to resolve instead // of one defined as that service's DefaultSubset If empty the default // subset is used. ServiceSubset string `json:"serviceSubset,omitempty"` // Namespace is the Consul namespace to resolve the service from instead of // the current namespace. If empty the current namespace is assumed. Namespace string `json:"namespace,omitempty"` // Partition is the Consul partition to resolve the service from instead of // the current partition. If empty the current partition is assumed. Partition string `json:"partition,omitempty"` // Datacenter is the datacenter to resolve the service from instead of the // current one. Datacenter string `json:"datacenter,omitempty"` // Peer is the name of the cluster peer to resolve the service from instead // of the current one. Peer string `json:"peer,omitempty"` // SamenessGroup is the name of the sameness group to resolve the service from instead of the current one. SamenessGroup string `json:"samenessGroup,omitempty"` }
func (*ServiceResolverRedirect) DeepCopy ¶
func (in *ServiceResolverRedirect) DeepCopy() *ServiceResolverRedirect
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceResolverRedirect.
func (*ServiceResolverRedirect) DeepCopyInto ¶
func (in *ServiceResolverRedirect) DeepCopyInto(out *ServiceResolverRedirect)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceResolverSpec ¶
type ServiceResolverSpec struct { // DefaultSubset is the subset to use when no explicit subset is requested. // If empty the unnamed subset is used. DefaultSubset string `json:"defaultSubset,omitempty"` // Subsets is map of subset name to subset definition for all usable named // subsets of this service. The map key is the name of the subset and all // names must be valid DNS subdomain elements. // This may be empty, in which case only the unnamed default subset will // be usable. Subsets ServiceResolverSubsetMap `json:"subsets,omitempty"` // Redirect when configured, all attempts to resolve the service this // resolver defines will be substituted for the supplied redirect // EXCEPT when the redirect has already been applied. // When substituting the supplied redirect, all other fields besides // Kind, Name, and Redirect will be ignored. Redirect *ServiceResolverRedirect `json:"redirect,omitempty"` // Failover controls when and how to reroute traffic to an alternate pool of // service instances. // The map is keyed by the service subset it applies to and the special // string "*" is a wildcard that applies to any subset not otherwise // specified here. Failover ServiceResolverFailoverMap `json:"failover,omitempty"` // ConnectTimeout is the timeout for establishing new network connections // to this service. ConnectTimeout metav1.Duration `json:"connectTimeout,omitempty"` // RequestTimeout is the timeout for receiving an HTTP response from this // service before the connection is terminated. RequestTimeout metav1.Duration `json:"requestTimeout,omitempty"` // LoadBalancer determines the load balancing policy and configuration for services // issuing requests to this upstream service. LoadBalancer *LoadBalancer `json:"loadBalancer,omitempty"` // PrioritizeByLocality controls whether the locality of services within the // local partition will be used to prioritize connectivity. PrioritizeByLocality *PrioritizeByLocality `json:"prioritizeByLocality,omitempty"` }
ServiceResolverSpec defines the desired state of ServiceResolver.
func (*ServiceResolverSpec) DeepCopy ¶
func (in *ServiceResolverSpec) DeepCopy() *ServiceResolverSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceResolverSpec.
func (*ServiceResolverSpec) DeepCopyInto ¶
func (in *ServiceResolverSpec) DeepCopyInto(out *ServiceResolverSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceResolverSubset ¶
type ServiceResolverSubset struct { // Filter is the filter expression to be used for selecting instances of the // requested service. If empty all healthy instances are returned. This // expression can filter on the same selectors as the Health API endpoint. Filter string `json:"filter,omitempty"` // OnlyPassing specifies the behavior of the resolver's health check // interpretation. If this is set to false, instances with checks in the // passing as well as the warning states will be considered healthy. If this // is set to true, only instances with checks in the passing state will be // considered healthy. OnlyPassing bool `json:"onlyPassing,omitempty"` }
func (*ServiceResolverSubset) DeepCopy ¶
func (in *ServiceResolverSubset) DeepCopy() *ServiceResolverSubset
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceResolverSubset.
func (*ServiceResolverSubset) DeepCopyInto ¶
func (in *ServiceResolverSubset) DeepCopyInto(out *ServiceResolverSubset)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceResolverSubsetMap ¶
type ServiceResolverSubsetMap map[string]ServiceResolverSubset
func (ServiceResolverSubsetMap) DeepCopy ¶
func (in ServiceResolverSubsetMap) DeepCopy() ServiceResolverSubsetMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceResolverSubsetMap.
func (ServiceResolverSubsetMap) DeepCopyInto ¶
func (in ServiceResolverSubsetMap) DeepCopyInto(out *ServiceResolverSubsetMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceResolverWebhook ¶
type ServiceResolverWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*ServiceResolverWebhook) List ¶
func (v *ServiceResolverWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*ServiceResolverWebhook) SetupWithManager ¶
func (v *ServiceResolverWebhook) SetupWithManager(mgr ctrl.Manager)
type ServiceRoute ¶
type ServiceRoute struct { // Match is a set of criteria that can match incoming L7 requests. // If empty or omitted it acts as a catch-all. Match *ServiceRouteMatch `json:"match,omitempty"` // Destination controls how to proxy the matching request(s) to a service. Destination *ServiceRouteDestination `json:"destination,omitempty"` }
func (*ServiceRoute) DeepCopy ¶
func (in *ServiceRoute) DeepCopy() *ServiceRoute
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceRoute.
func (*ServiceRoute) DeepCopyInto ¶
func (in *ServiceRoute) DeepCopyInto(out *ServiceRoute)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceRouteDestination ¶
type ServiceRouteDestination struct { // Service is the service to resolve instead of the default service. // If empty then the default service name is used. Service string `json:"service,omitempty"` // ServiceSubset is a named subset of the given service to resolve instead // of the one defined as that service's DefaultSubset. // If empty, the default subset is used. ServiceSubset string `json:"serviceSubset,omitempty"` // Namespace is the Consul namespace to resolve the service from instead of // the current namespace. If empty the current namespace is assumed. Namespace string `json:"namespace,omitempty"` // Partition is the Consul partition to resolve the service from instead of // the current partition. If empty the current partition is assumed. Partition string `json:"partition,omitempty"` // PrefixRewrite defines how to rewrite the HTTP request path before proxying // it to its final destination. // This requires that either match.http.pathPrefix or match.http.pathExact // be configured on this route. PrefixRewrite string `json:"prefixRewrite,omitempty"` // IdleTimeout is total amount of time permitted // for the request stream to be idle. IdleTimeout metav1.Duration `json:"idleTimeout,omitempty"` // RequestTimeout is the total amount of time permitted for the entire // downstream request (and retries) to be processed. RequestTimeout metav1.Duration `json:"requestTimeout,omitempty"` // NumRetries is the number of times to retry the request when a retryable result occurs NumRetries uint32 `json:"numRetries,omitempty"` // RetryOnConnectFailure allows for connection failure errors to trigger a retry. RetryOnConnectFailure bool `json:"retryOnConnectFailure,omitempty"` // RetryOn is a flat list of conditions for Consul to retry requests based on the response from an upstream service. // Refer to the valid conditions here: https://developer.hashicorp.com/consul/docs/connect/config-entries/service-router#routes-destination-retryon RetryOn []string `json:"retryOn,omitempty"` // RetryOnStatusCodes is a flat list of http response status codes that are eligible for retry. RetryOnStatusCodes []uint32 `json:"retryOnStatusCodes,omitempty"` // Allow HTTP header manipulation to be configured. RequestHeaders *HTTPHeaderModifiers `json:"requestHeaders,omitempty"` ResponseHeaders *HTTPHeaderModifiers `json:"responseHeaders,omitempty"` }
func (*ServiceRouteDestination) DeepCopy ¶
func (in *ServiceRouteDestination) DeepCopy() *ServiceRouteDestination
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceRouteDestination.
func (*ServiceRouteDestination) DeepCopyInto ¶
func (in *ServiceRouteDestination) DeepCopyInto(out *ServiceRouteDestination)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceRouteHTTPMatch ¶
type ServiceRouteHTTPMatch struct { // CaseInsensitive configures PathExact and PathPrefix matches to ignore upper/lower casing. CaseInsensitive bool `json:"caseInsensitive,omitempty"` // PathExact is an exact path to match on the HTTP request path. PathExact string `json:"pathExact,omitempty"` // PathPrefix is a path prefix to match on the HTTP request path. PathPrefix string `json:"pathPrefix,omitempty"` // PathRegex is a regular expression to match on the HTTP request path. PathRegex string `json:"pathRegex,omitempty"` // Header is a set of criteria that can match on HTTP request headers. // If more than one is configured all must match for the overall match to apply. Header []ServiceRouteHTTPMatchHeader `json:"header,omitempty"` // QueryParam is a set of criteria that can match on HTTP query parameters. // If more than one is configured all must match for the overall match to apply. QueryParam []ServiceRouteHTTPMatchQueryParam `json:"queryParam,omitempty"` // Methods is a list of HTTP methods for which this match applies. // If unspecified all http methods are matched. Methods []string `json:"methods,omitempty"` }
func (*ServiceRouteHTTPMatch) DeepCopy ¶
func (in *ServiceRouteHTTPMatch) DeepCopy() *ServiceRouteHTTPMatch
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceRouteHTTPMatch.
func (*ServiceRouteHTTPMatch) DeepCopyInto ¶
func (in *ServiceRouteHTTPMatch) DeepCopyInto(out *ServiceRouteHTTPMatch)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceRouteHTTPMatchHeader ¶
type ServiceRouteHTTPMatchHeader struct { // Name is the name of the header to match. Name string `json:"name"` // Present will match if the header with the given name is present with any value. Present bool `json:"present,omitempty"` // Exact will match if the header with the given name is this value. Exact string `json:"exact,omitempty"` // Prefix will match if the header with the given name has this prefix. Prefix string `json:"prefix,omitempty"` // Suffix will match if the header with the given name has this suffix. Suffix string `json:"suffix,omitempty"` // Regex will match if the header with the given name matches this pattern. Regex string `json:"regex,omitempty"` // Invert inverts the logic of the match. Invert bool `json:"invert,omitempty"` }
func (*ServiceRouteHTTPMatchHeader) DeepCopy ¶
func (in *ServiceRouteHTTPMatchHeader) DeepCopy() *ServiceRouteHTTPMatchHeader
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceRouteHTTPMatchHeader.
func (*ServiceRouteHTTPMatchHeader) DeepCopyInto ¶
func (in *ServiceRouteHTTPMatchHeader) DeepCopyInto(out *ServiceRouteHTTPMatchHeader)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceRouteHTTPMatchQueryParam ¶
type ServiceRouteHTTPMatchQueryParam struct { // Name is the name of the query parameter to match on. Name string `json:"name"` // Present will match if the query parameter with the given name is present // with any value. Present bool `json:"present,omitempty"` // Exact will match if the query parameter with the given name is this value. Exact string `json:"exact,omitempty"` // Regex will match if the query parameter with the given name matches this pattern. Regex string `json:"regex,omitempty"` }
func (*ServiceRouteHTTPMatchQueryParam) DeepCopy ¶
func (in *ServiceRouteHTTPMatchQueryParam) DeepCopy() *ServiceRouteHTTPMatchQueryParam
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceRouteHTTPMatchQueryParam.
func (*ServiceRouteHTTPMatchQueryParam) DeepCopyInto ¶
func (in *ServiceRouteHTTPMatchQueryParam) DeepCopyInto(out *ServiceRouteHTTPMatchQueryParam)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceRouteMatch ¶
type ServiceRouteMatch struct { // HTTP is a set of http-specific match criteria. HTTP *ServiceRouteHTTPMatch `json:"http,omitempty"` }
func (*ServiceRouteMatch) DeepCopy ¶
func (in *ServiceRouteMatch) DeepCopy() *ServiceRouteMatch
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceRouteMatch.
func (*ServiceRouteMatch) DeepCopyInto ¶
func (in *ServiceRouteMatch) DeepCopyInto(out *ServiceRouteMatch)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceRouter ¶
type ServiceRouter struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ServiceRouterSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
ServiceRouter is the Schema for the servicerouters API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="service-router"
func (*ServiceRouter) AddFinalizer ¶
func (in *ServiceRouter) AddFinalizer(name string)
func (*ServiceRouter) ConsulGlobalResource ¶
func (in *ServiceRouter) ConsulGlobalResource() bool
func (*ServiceRouter) ConsulKind ¶
func (in *ServiceRouter) ConsulKind() string
func (*ServiceRouter) ConsulMirroringNS ¶
func (in *ServiceRouter) ConsulMirroringNS() string
func (*ServiceRouter) ConsulName ¶
func (in *ServiceRouter) ConsulName() string
func (*ServiceRouter) DeepCopy ¶
func (in *ServiceRouter) DeepCopy() *ServiceRouter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceRouter.
func (*ServiceRouter) DeepCopyInto ¶
func (in *ServiceRouter) DeepCopyInto(out *ServiceRouter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceRouter) DeepCopyObject ¶
func (in *ServiceRouter) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ServiceRouter) DefaultNamespaceFields ¶
func (in *ServiceRouter) DefaultNamespaceFields(consulMeta common.ConsulMeta)
DefaultNamespaceFields sets the namespace field on spec.routes[].destination to their default values if namespaces are enabled.
func (*ServiceRouter) Finalizers ¶
func (in *ServiceRouter) Finalizers() []string
func (*ServiceRouter) GetObjectMeta ¶
func (in *ServiceRouter) GetObjectMeta() metav1.ObjectMeta
func (*ServiceRouter) KubeKind ¶
func (in *ServiceRouter) KubeKind() string
func (*ServiceRouter) KubernetesName ¶
func (in *ServiceRouter) KubernetesName() string
func (*ServiceRouter) MatchesConsul ¶
func (in *ServiceRouter) MatchesConsul(candidate capi.ConfigEntry) bool
func (*ServiceRouter) RemoveFinalizer ¶
func (in *ServiceRouter) RemoveFinalizer(name string)
func (*ServiceRouter) SetLastSyncedTime ¶
func (in *ServiceRouter) SetLastSyncedTime(time *metav1.Time)
func (*ServiceRouter) SetSyncedCondition ¶
func (in *ServiceRouter) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
func (*ServiceRouter) SyncedCondition ¶
func (in *ServiceRouter) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
func (*ServiceRouter) SyncedConditionStatus ¶
func (in *ServiceRouter) SyncedConditionStatus() corev1.ConditionStatus
func (*ServiceRouter) ToConsul ¶
func (in *ServiceRouter) ToConsul(datacenter string) capi.ConfigEntry
func (*ServiceRouter) Validate ¶
func (in *ServiceRouter) Validate(consulMeta common.ConsulMeta) error
type ServiceRouterList ¶
type ServiceRouterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ServiceRouter `json:"items"` }
ServiceRouterList contains a list of ServiceRouter.
func (*ServiceRouterList) DeepCopy ¶
func (in *ServiceRouterList) DeepCopy() *ServiceRouterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceRouterList.
func (*ServiceRouterList) DeepCopyInto ¶
func (in *ServiceRouterList) DeepCopyInto(out *ServiceRouterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceRouterList) DeepCopyObject ¶
func (in *ServiceRouterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceRouterSpec ¶
type ServiceRouterSpec struct { // Routes are the list of routes to consider when processing L7 requests. // The first route to match in the list is terminal and stops further // evaluation. Traffic that fails to match any of the provided routes will // be routed to the default service. Routes []ServiceRoute `json:"routes,omitempty"` }
ServiceRouterSpec defines the desired state of ServiceRouter.
func (*ServiceRouterSpec) DeepCopy ¶
func (in *ServiceRouterSpec) DeepCopy() *ServiceRouterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceRouterSpec.
func (*ServiceRouterSpec) DeepCopyInto ¶
func (in *ServiceRouterSpec) DeepCopyInto(out *ServiceRouterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceRouterWebhook ¶
type ServiceRouterWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*ServiceRouterWebhook) List ¶
func (v *ServiceRouterWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*ServiceRouterWebhook) SetupWithManager ¶
func (v *ServiceRouterWebhook) SetupWithManager(mgr ctrl.Manager)
type ServiceSplit ¶
type ServiceSplit struct { // Weight is a value between 0 and 100 reflecting what portion of traffic should be directed to this split. // The smallest representable weight is 1/10000 or .01%. Weight float32 `json:"weight,omitempty"` // Service is the service to resolve instead of the default. Service string `json:"service,omitempty"` // ServiceSubset is a named subset of the given service to resolve instead of one defined // as that service's DefaultSubset. If empty the default subset is used. ServiceSubset string `json:"serviceSubset,omitempty"` // Namespace is the Consul namespace to resolve the service from instead of // the current namespace. If empty the current namespace is assumed. Namespace string `json:"namespace,omitempty"` // Partition is the Consul partition to resolve the service from instead of // the current partition. If empty the current partition is assumed. Partition string `json:"partition,omitempty"` // Allow HTTP header manipulation to be configured. RequestHeaders *HTTPHeaderModifiers `json:"requestHeaders,omitempty"` ResponseHeaders *HTTPHeaderModifiers `json:"responseHeaders,omitempty"` }
func (*ServiceSplit) DeepCopy ¶
func (in *ServiceSplit) DeepCopy() *ServiceSplit
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSplit.
func (*ServiceSplit) DeepCopyInto ¶
func (in *ServiceSplit) DeepCopyInto(out *ServiceSplit)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceSplits ¶
type ServiceSplits []ServiceSplit
func (ServiceSplits) DeepCopy ¶
func (in ServiceSplits) DeepCopy() ServiceSplits
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSplits.
func (ServiceSplits) DeepCopyInto ¶
func (in ServiceSplits) DeepCopyInto(out *ServiceSplits)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceSplitter ¶
type ServiceSplitter struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ServiceSplitterSpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
ServiceSplitter is the Schema for the servicesplitters API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="service-splitter"
func (*ServiceSplitter) AddFinalizer ¶
func (in *ServiceSplitter) AddFinalizer(name string)
func (*ServiceSplitter) ConsulGlobalResource ¶
func (in *ServiceSplitter) ConsulGlobalResource() bool
func (*ServiceSplitter) ConsulKind ¶
func (in *ServiceSplitter) ConsulKind() string
func (*ServiceSplitter) ConsulMirroringNS ¶
func (in *ServiceSplitter) ConsulMirroringNS() string
func (*ServiceSplitter) ConsulName ¶
func (in *ServiceSplitter) ConsulName() string
func (*ServiceSplitter) DeepCopy ¶
func (in *ServiceSplitter) DeepCopy() *ServiceSplitter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSplitter.
func (*ServiceSplitter) DeepCopyInto ¶
func (in *ServiceSplitter) DeepCopyInto(out *ServiceSplitter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceSplitter) DeepCopyObject ¶
func (in *ServiceSplitter) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ServiceSplitter) DefaultNamespaceFields ¶
func (in *ServiceSplitter) DefaultNamespaceFields(_ common.ConsulMeta)
DefaultNamespaceFields has no behaviour here as service-splitter have namespace fields that do not default.
func (*ServiceSplitter) Finalizers ¶
func (in *ServiceSplitter) Finalizers() []string
func (*ServiceSplitter) GetObjectMeta ¶
func (in *ServiceSplitter) GetObjectMeta() metav1.ObjectMeta
func (*ServiceSplitter) KubeKind ¶
func (in *ServiceSplitter) KubeKind() string
func (*ServiceSplitter) KubernetesName ¶
func (in *ServiceSplitter) KubernetesName() string
func (*ServiceSplitter) MatchesConsul ¶
func (in *ServiceSplitter) MatchesConsul(candidate capi.ConfigEntry) bool
func (*ServiceSplitter) RemoveFinalizer ¶
func (in *ServiceSplitter) RemoveFinalizer(name string)
func (*ServiceSplitter) SetLastSyncedTime ¶
func (in *ServiceSplitter) SetLastSyncedTime(time *metav1.Time)
func (*ServiceSplitter) SetSyncedCondition ¶
func (in *ServiceSplitter) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
func (*ServiceSplitter) SyncedCondition ¶
func (in *ServiceSplitter) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
func (*ServiceSplitter) SyncedConditionStatus ¶
func (in *ServiceSplitter) SyncedConditionStatus() corev1.ConditionStatus
func (*ServiceSplitter) ToConsul ¶
func (in *ServiceSplitter) ToConsul(datacenter string) capi.ConfigEntry
func (*ServiceSplitter) Validate ¶
func (in *ServiceSplitter) Validate(consulMeta common.ConsulMeta) error
type ServiceSplitterList ¶
type ServiceSplitterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ServiceSplitter `json:"items"` }
ServiceSplitterList contains a list of ServiceSplitter.
func (*ServiceSplitterList) DeepCopy ¶
func (in *ServiceSplitterList) DeepCopy() *ServiceSplitterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSplitterList.
func (*ServiceSplitterList) DeepCopyInto ¶
func (in *ServiceSplitterList) DeepCopyInto(out *ServiceSplitterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceSplitterList) DeepCopyObject ¶
func (in *ServiceSplitterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceSplitterSpec ¶
type ServiceSplitterSpec struct { // Splits defines how much traffic to send to which set of service instances during a traffic split. // The sum of weights across all splits must add up to 100. Splits ServiceSplits `json:"splits,omitempty"` }
ServiceSplitterSpec defines the desired state of ServiceSplitter.
func (*ServiceSplitterSpec) DeepCopy ¶
func (in *ServiceSplitterSpec) DeepCopy() *ServiceSplitterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSplitterSpec.
func (*ServiceSplitterSpec) DeepCopyInto ¶
func (in *ServiceSplitterSpec) DeepCopyInto(out *ServiceSplitterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceSplitterWebhook ¶
type ServiceSplitterWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*ServiceSplitterWebhook) List ¶
func (v *ServiceSplitterWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*ServiceSplitterWebhook) SetupWithManager ¶
func (v *ServiceSplitterWebhook) SetupWithManager(mgr ctrl.Manager)
type SourceIntention ¶
type SourceIntention struct { // Name is the source of the intention. This is the name of a // Consul service. The service doesn't need to be registered. Name string `json:"name,omitempty"` // Namespace is the namespace for the Name parameter. Namespace string `json:"namespace,omitempty"` // Peer is the peer name for the Name parameter. Peer string `json:"peer,omitempty"` // Partition is the Admin Partition for the Name parameter. Partition string `json:"partition,omitempty"` // SamenessGroup is the name of the sameness group, if applicable. SamenessGroup string `json:"samenessGroup,omitempty"` // Action is required for an L4 intention, and should be set to one of // "allow" or "deny" for the action that should be taken if this intention matches a request. Action IntentionAction `json:"action,omitempty"` // Permissions is the list of all additional L7 attributes that extend the intention match criteria. // Permission precedence is applied top to bottom. For any given request the first permission to match // in the list is terminal and stops further evaluation. As with L4 intentions, traffic that fails to // match any of the provided permissions in this intention will be subject to the default intention // behavior is defined by the default ACL policy. This should be omitted for an L4 intention // as it is mutually exclusive with the Action field. Permissions IntentionPermissions `json:"permissions,omitempty"` // Description for the intention. This is not used by Consul, but is presented in API responses to assist tooling. Description string `json:"description,omitempty"` }
func (*SourceIntention) DeepCopy ¶
func (in *SourceIntention) DeepCopy() *SourceIntention
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIntention.
func (*SourceIntention) DeepCopyInto ¶
func (in *SourceIntention) DeepCopyInto(out *SourceIntention)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SourceIntentions ¶
type SourceIntentions []*SourceIntention
func (SourceIntentions) DeepCopy ¶
func (in SourceIntentions) DeepCopy() SourceIntentions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceIntentions.
func (SourceIntentions) DeepCopyInto ¶
func (in SourceIntentions) DeepCopyInto(out *SourceIntentions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Status ¶
type Status struct { // Conditions indicate the latest available observations of a resource's current state. // +optional // +patchMergeKey=type // +patchStrategy=merge Conditions Conditions `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` // LastSyncedTime is the last time the resource successfully synced with Consul. // +optional LastSyncedTime *metav1.Time `json:"lastSyncedTime,omitempty" description:"last time the condition transitioned from one status to another"` }
+k8s:deepcopy-gen=true +k8s:openapi-gen=true
func (*Status) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Status.
func (*Status) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Status) GetCondition ¶
func (s *Status) GetCondition(t ConditionType) *Condition
type TerminatingGateway ¶
type TerminatingGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TerminatingGatewaySpec `json:"spec,omitempty"` Status `json:"status,omitempty"` }
TerminatingGateway is the Schema for the terminatinggateways API +kubebuilder:printcolumn:name="Synced",type="string",JSONPath=".status.conditions[?(@.type==\"Synced\")].status",description="The sync status of the resource with Consul" +kubebuilder:printcolumn:name="Last Synced",type="date",JSONPath=".status.lastSyncedTime",description="The last successful synced time of the resource with Consul" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="The age of the resource" +kubebuilder:resource:shortName="terminating-gateway"
func (*TerminatingGateway) AddFinalizer ¶
func (in *TerminatingGateway) AddFinalizer(name string)
func (*TerminatingGateway) ConsulGlobalResource ¶
func (in *TerminatingGateway) ConsulGlobalResource() bool
func (*TerminatingGateway) ConsulKind ¶
func (in *TerminatingGateway) ConsulKind() string
func (*TerminatingGateway) ConsulMirroringNS ¶
func (in *TerminatingGateway) ConsulMirroringNS() string
func (*TerminatingGateway) ConsulName ¶
func (in *TerminatingGateway) ConsulName() string
func (*TerminatingGateway) DeepCopy ¶
func (in *TerminatingGateway) DeepCopy() *TerminatingGateway
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminatingGateway.
func (*TerminatingGateway) DeepCopyInto ¶
func (in *TerminatingGateway) DeepCopyInto(out *TerminatingGateway)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TerminatingGateway) DeepCopyObject ¶
func (in *TerminatingGateway) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*TerminatingGateway) DefaultNamespaceFields ¶
func (in *TerminatingGateway) DefaultNamespaceFields(consulMeta common.ConsulMeta)
DefaultNamespaceFields sets the namespace field on spec.services to their default values if namespaces are enabled.
func (*TerminatingGateway) Finalizers ¶
func (in *TerminatingGateway) Finalizers() []string
func (*TerminatingGateway) GetObjectMeta ¶
func (in *TerminatingGateway) GetObjectMeta() metav1.ObjectMeta
func (*TerminatingGateway) KubeKind ¶
func (in *TerminatingGateway) KubeKind() string
func (*TerminatingGateway) KubernetesName ¶
func (in *TerminatingGateway) KubernetesName() string
func (*TerminatingGateway) MatchesConsul ¶
func (in *TerminatingGateway) MatchesConsul(candidate capi.ConfigEntry) bool
func (*TerminatingGateway) RemoveFinalizer ¶
func (in *TerminatingGateway) RemoveFinalizer(name string)
func (*TerminatingGateway) SetACLStatusConditon ¶
func (in *TerminatingGateway) SetACLStatusConditon(status corev1.ConditionStatus, reason, message string)
func (*TerminatingGateway) SetLastSyncedTime ¶
func (in *TerminatingGateway) SetLastSyncedTime(time *metav1.Time)
func (*TerminatingGateway) SetSyncedCondition ¶
func (in *TerminatingGateway) SetSyncedCondition(status corev1.ConditionStatus, reason, message string)
func (*TerminatingGateway) SyncedCondition ¶
func (in *TerminatingGateway) SyncedCondition() (status corev1.ConditionStatus, reason, message string)
func (*TerminatingGateway) SyncedConditionStatus ¶
func (in *TerminatingGateway) SyncedConditionStatus() corev1.ConditionStatus
func (*TerminatingGateway) ToConsul ¶
func (in *TerminatingGateway) ToConsul(datacenter string) capi.ConfigEntry
func (*TerminatingGateway) Validate ¶
func (in *TerminatingGateway) Validate(consulMeta common.ConsulMeta) error
type TerminatingGatewayList ¶
type TerminatingGatewayList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []TerminatingGateway `json:"items"` }
TerminatingGatewayList contains a list of TerminatingGateway.
func (*TerminatingGatewayList) DeepCopy ¶
func (in *TerminatingGatewayList) DeepCopy() *TerminatingGatewayList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminatingGatewayList.
func (*TerminatingGatewayList) DeepCopyInto ¶
func (in *TerminatingGatewayList) DeepCopyInto(out *TerminatingGatewayList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TerminatingGatewayList) DeepCopyObject ¶
func (in *TerminatingGatewayList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TerminatingGatewaySpec ¶
type TerminatingGatewaySpec struct { // Services is a list of service names represented by the terminating gateway. Services []LinkedService `json:"services,omitempty"` }
TerminatingGatewaySpec defines the desired state of TerminatingGateway.
func (*TerminatingGatewaySpec) DeepCopy ¶
func (in *TerminatingGatewaySpec) DeepCopy() *TerminatingGatewaySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminatingGatewaySpec.
func (*TerminatingGatewaySpec) DeepCopyInto ¶
func (in *TerminatingGatewaySpec) DeepCopyInto(out *TerminatingGatewaySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TerminatingGatewayWebhook ¶
type TerminatingGatewayWebhook struct { Logger logr.Logger // ConsulMeta contains metadata specific to the Consul installation. ConsulMeta common.ConsulMeta client.Client // contains filtered or unexported fields }
func (*TerminatingGatewayWebhook) List ¶
func (v *TerminatingGatewayWebhook) List(ctx context.Context) ([]common.ConfigEntryResource, error)
func (*TerminatingGatewayWebhook) SetupWithManager ¶
func (v *TerminatingGatewayWebhook) SetupWithManager(mgr ctrl.Manager)
type TransparentProxy ¶
type TransparentProxy struct { // OutboundListenerPort is the port of the listener where outbound application // traffic is being redirected to. OutboundListenerPort int `json:"outboundListenerPort,omitempty"` // DialedDirectly indicates whether transparent proxies can dial this proxy instance directly. // The discovery chain is not considered when dialing a service instance directly. // This setting is useful when addressing stateful services, such as a database cluster with a leader node. DialedDirectly bool `json:"dialedDirectly,omitempty"` }
func (*TransparentProxy) DeepCopy ¶
func (in *TransparentProxy) DeepCopy() *TransparentProxy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransparentProxy.
func (*TransparentProxy) DeepCopyInto ¶
func (in *TransparentProxy) DeepCopyInto(out *TransparentProxy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TransparentProxyMeshConfig ¶
type TransparentProxyMeshConfig struct { // MeshDestinationsOnly determines whether sidecar proxies operating in "transparent" mode can proxy traffic // to IP addresses not registered in Consul's catalog. If enabled, traffic will only be proxied to upstreams // with service registrations in the catalog. MeshDestinationsOnly bool `json:"meshDestinationsOnly,omitempty"` }
TransparentProxyMeshConfig controls configuration specific to proxies in "transparent" mode. Added in v1.10.0.
func (*TransparentProxyMeshConfig) DeepCopy ¶
func (in *TransparentProxyMeshConfig) DeepCopy() *TransparentProxyMeshConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransparentProxyMeshConfig.
func (*TransparentProxyMeshConfig) DeepCopyInto ¶
func (in *TransparentProxyMeshConfig) DeepCopyInto(out *TransparentProxyMeshConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Upstream ¶
type Upstream struct { // Name is only accepted within service ServiceDefaultsSpec.UpstreamConfig.Overrides config entry. Name string `json:"name,omitempty"` // Namespace is only accepted within service ServiceDefaultsSpec.UpstreamConfig.Overrides config entry. Namespace string `json:"namespace,omitempty"` // Partition is only accepted within service ServiceDefaultsSpec.UpstreamConfig.Overrides config entry. Partition string `json:"partition,omitempty"` // Peer is only accepted within service ServiceDefaultsSpec.UpstreamConfig.Overrides config entry. Peer string `json:"peer,omitempty"` // EnvoyListenerJSON is a complete override ("escape hatch") for the upstream's // listener. // Note: This escape hatch is NOT compatible with the discovery chain and // will be ignored if a discovery chain is active. EnvoyListenerJSON string `json:"envoyListenerJSON,omitempty"` // EnvoyClusterJSON is a complete override ("escape hatch") for the upstream's // cluster. The Connect client TLS certificate and context will be injected // overriding any TLS settings present. // Note: This escape hatch is NOT compatible with the discovery chain and // will be ignored if a discovery chain is active. EnvoyClusterJSON string `json:"envoyClusterJSON,omitempty"` // Protocol describes the upstream's service protocol. Valid values are "tcp", // "http" and "grpc". Anything else is treated as tcp. This enables protocol // aware features like per-request metrics and connection pooling, tracing, // routing etc. Protocol string `json:"protocol,omitempty"` // ConnectTimeoutMs is the number of milliseconds to timeout making a new // connection to this upstream. Defaults to 5000 (5 seconds) if not set. ConnectTimeoutMs int `json:"connectTimeoutMs,omitempty"` // Limits are the set of limits that are applied to the proxy for a specific upstream of a // service instance. Limits *UpstreamLimits `json:"limits,omitempty"` // PassiveHealthCheck configuration determines how upstream proxy instances will // be monitored for removal from the load balancing pool. PassiveHealthCheck *PassiveHealthCheck `json:"passiveHealthCheck,omitempty"` // MeshGatewayConfig controls how Mesh Gateways are configured and used. MeshGateway MeshGateway `json:"meshGateway,omitempty"` }
func (*Upstream) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Upstream.
func (*Upstream) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UpstreamLimits ¶
type UpstreamLimits struct { // MaxConnections is the maximum number of connections the local proxy can // make to the upstream service. MaxConnections *int `json:"maxConnections,omitempty"` // MaxPendingRequests is the maximum number of requests that will be queued // waiting for an available connection. This is mostly applicable to HTTP/1.1 // clusters since all HTTP/2 requests are streamed over a single // connection. MaxPendingRequests *int `json:"maxPendingRequests,omitempty"` // MaxConcurrentRequests is the maximum number of in-flight requests that will be allowed // to the upstream cluster at a point in time. This is mostly applicable to HTTP/2 // clusters since all HTTP/1.1 requests are limited by MaxConnections. MaxConcurrentRequests *int `json:"maxConcurrentRequests,omitempty"` }
UpstreamLimits describes the limits that are associated with a specific upstream of a service instance.
func (*UpstreamLimits) DeepCopy ¶
func (in *UpstreamLimits) DeepCopy() *UpstreamLimits
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpstreamLimits.
func (*UpstreamLimits) DeepCopyInto ¶
func (in *UpstreamLimits) DeepCopyInto(out *UpstreamLimits)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Upstreams ¶
type Upstreams struct { // Defaults contains default configuration for all upstreams of a given // service. The name field must be empty. Defaults *Upstream `json:"defaults,omitempty"` // Overrides is a slice of per-service configuration. The name field is // required. Overrides []*Upstream `json:"overrides,omitempty"` }
func (*Upstreams) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Upstreams.
func (*Upstreams) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- api_gateway_types.go
- controlplanerequestlimit_types.go
- controlplanerequestlimit_webhook.go
- exportedservices_types.go
- exportedservices_webhook.go
- gatewaypolicy_types.go
- gatewaypolicy_webhook.go
- groupversion_info.go
- ingressgateway_types.go
- ingressgateway_webhook.go
- jwtprovider_types.go
- jwtprovider_webhook.go
- mesh_types.go
- mesh_webhook.go
- peeringacceptor_types.go
- peeringacceptor_webhook.go
- peeringdialer_types.go
- peeringdialer_webhook.go
- proxydefaults_types.go
- proxydefaults_webhook.go
- registration_types.go
- registration_webhook.go
- routeauthfilter_types.go
- routeretryfilter_types.go
- routetimeoutfilter_types.go
- samenessgroup_types.go
- samenessgroup_webhook.go
- servicedefaults_types.go
- servicedefaults_webhook.go
- serviceintentions_types.go
- serviceintentions_webhook.go
- serviceresolver_types.go
- serviceresolver_webhook.go
- servicerouter_types.go
- servicerouter_webhook.go
- servicesplitter_types.go
- servicesplitter_webhook.go
- shared_types.go
- status.go
- terminatinggateway_types.go
- terminatinggateway_webhook.go
- zz_generated.deepcopy.go