Documentation
¶
Overview ¶
Package v1 houses version 1 of the alb controller CRDs.
Package v1 contains API Schema definitions for the alb.networking.azure.io v1 API group +kubebuilder:object:generate=true +groupName=alb.networking.azure.io
Index ¶
- Constants
- Variables
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type AffinityType
- type AlbConditionReason
- type AlbConditionType
- type AlbSpec
- type AlbStatus
- type ApplicationLoadBalancer
- type ApplicationLoadBalancerList
- type BackendLoadBalancingPolicy
- func (in *BackendLoadBalancingPolicy) DeepCopy() *BackendLoadBalancingPolicy
- func (in *BackendLoadBalancingPolicy) DeepCopyInto(out *BackendLoadBalancingPolicy)
- func (in *BackendLoadBalancingPolicy) DeepCopyObject() runtime.Object
- func (r BackendLoadBalancingPolicy) GetNamespacedName() types.NamespacedName
- type BackendLoadBalancingPolicyConditionReason
- type BackendLoadBalancingPolicyConditionType
- type BackendLoadBalancingPolicyList
- type BackendLoadBalancingPolicyPort
- type BackendLoadBalancingPolicySpec
- type BackendLoadBalancingPolicyStatus
- type BackendLoadBalancingPolicyTargetStatus
- type BackendTLSPolicy
- type BackendTLSPolicyConfig
- type BackendTLSPolicyList
- type BackendTLSPolicyPort
- type BackendTLSPolicySpec
- type BackendTLSPolicyStatus
- type CircuitBreakerConfig
- type CommonTLSPolicy
- type CommonTLSPolicyVerify
- type CustomTargetRef
- type FrontendTLSPolicy
- func (in *FrontendTLSPolicy) DeepCopy() *FrontendTLSPolicy
- func (in *FrontendTLSPolicy) DeepCopyInto(out *FrontendTLSPolicy)
- func (in *FrontendTLSPolicy) DeepCopyObject() runtime.Object
- func (f FrontendTLSPolicy) GetNamespacedName() types.NamespacedName
- func (f FrontendTLSPolicy) GetTargetRefs() []*CustomTargetRef
- type FrontendTLSPolicyConfig
- type FrontendTLSPolicyList
- type FrontendTLSPolicySpec
- type FrontendTLSPolicyStatus
- type FrontendTLSPolicyType
- type FrontendTLSPolicyTypeName
- type GRPCSpecifiers
- type HTTPHeader
- type HTTPHeaderName
- type HTTPMatch
- type HTTPPathModifier
- type HTTPPathModifierType
- type HTTPSpecifiers
- type HeaderFilter
- type HeaderName
- type HealthCheckPolicy
- type HealthCheckPolicyConditionReason
- type HealthCheckPolicyConditionType
- type HealthCheckPolicyConfig
- type HealthCheckPolicyList
- type HealthCheckPolicySpec
- type HealthCheckPolicyStatus
- type IngressBackendPort
- type IngressBackendSettingStatus
- type IngressBackendSettings
- type IngressExtension
- type IngressExtensionConditionReason
- type IngressExtensionConditionType
- type IngressExtensionList
- type IngressExtensionSpec
- type IngressExtensionStatus
- type IngressRewrites
- type IngressRuleSetting
- type IngressRuleStatus
- type IngressTimeouts
- type LoadAwareConfig
- type LoadBalancingConfig
- type LoadBalancingStrategy
- type MTLSPolicyVerify
- type PolicyConditionReason
- type PolicyConditionType
- type PolicyType
- type PortNumber
- type PreciseHostname
- type Protocol
- type Redirect
- type RewriteType
- type RoutePolicy
- type RoutePolicyConditionReason
- type RoutePolicyConditionType
- type RoutePolicyConfig
- type RoutePolicyList
- type RoutePolicySpec
- type RoutePolicyStatus
- type RouteTimeouts
- type SessionAffinity
- type SlowStartConfig
- type StatusCodes
- type TargetRefSpec
- type URLRewriteFilter
- type WebApplicationFirewallConfig
- type WebApplicationFirewallPolicy
- func (in *WebApplicationFirewallPolicy) DeepCopy() *WebApplicationFirewallPolicy
- func (in *WebApplicationFirewallPolicy) DeepCopyInto(out *WebApplicationFirewallPolicy)
- func (in *WebApplicationFirewallPolicy) DeepCopyObject() runtime.Object
- func (f WebApplicationFirewallPolicy) GetNamespacedName() types.NamespacedName
- func (f WebApplicationFirewallPolicy) GetWAFPolicyID() (string, bool)
- type WebApplicationFirewallPolicyList
- type WebApplicationFirewallPolicySpec
- type WebApplicationFirewallPolicyStatus
Constants ¶
const ( // AlbConditionTypeAccepted indicates whether the Application Gateway for Containers resource // are accepted by the controller. AlbConditionTypeAccepted AlbConditionType = "Accepted" // AlbConditionTypeDeployment indicates the deployment status of the Application Gateway for Containers resource. AlbConditionTypeDeployment AlbConditionType = "Deployment" // AlbReasonAccepted indicates that the Application Gateway for Containers resource // are accepted by the controller. AlbReasonAccepted AlbConditionReason = "Accepted" // AlbReasonDeploymentReady indicates the Application Gateway for Containers resource // deployment status. AlbReasonDeploymentReady AlbConditionReason = "Ready" // AlbReasonInProgress indicates whether the Application Gateway for Containers resource // is in the process of being created, updated, or deleted. AlbReasonInProgress AlbConditionReason = "InProgress" )
const ( // BackendLoadBalancingPolicyConditionAccepted is used to set the BackendLoadBalancingPolicyConditionType to Accepted BackendLoadBalancingPolicyConditionAccepted BackendLoadBalancingPolicyConditionType = "Accepted" // BackendLoadBalancingPolicyConditionResolvedRefs is used to set the BackendLoadBalancingPolicyCondition to ResolvedRefs BackendLoadBalancingPolicyConditionResolvedRefs BackendLoadBalancingPolicyConditionType = "ResolvedRefs" // BackendLoadBalancingPolicyReasonAccepted is used to set the BackendLoadBalancingPolicyConditionReason to Accepted // When the given BackendLoadBalancingPolicy is correctly configured BackendLoadBalancingPolicyReasonAccepted BackendLoadBalancingPolicyConditionReason = "Accepted" // BackendLoadBalancingPolicyReasonResolvedRefs is used to set the BackendLoadBalancingPolicyConditionReason to ResolvedRefs // when the given BackendLoadBalancingPolicy has correct references BackendLoadBalancingPolicyReasonResolvedRefs BackendLoadBalancingPolicyConditionReason = "ResolvedRefs" // BackendLoadBalancingPolicyReasonInvalid is the reason when the BackendLoadBalancingPolicy isn't Accepted BackendLoadBalancingPolicyReasonInvalid BackendLoadBalancingPolicyConditionReason = "InvalidBackendLoadBalancingPolicy" // BackendLoadBalancingPolicyReasonRefNotPermitted is used when the ref isn't permitted BackendLoadBalancingPolicyReasonRefNotPermitted BackendLoadBalancingPolicyConditionReason = "RefNotPermitted" // BackendLoadBalancingPolicyReasonInvalidGroup is used when the group is invalid BackendLoadBalancingPolicyReasonInvalidGroup BackendLoadBalancingPolicyConditionReason = "InvalidGroup" // BackendLoadBalancingPolicyReasonInvalidKind is used when the kind/group is invalid BackendLoadBalancingPolicyReasonInvalidKind BackendLoadBalancingPolicyConditionReason = "InvalidKind" // BackendLoadBalancingPolicyReasonInvalidName is used when the name is invalid BackendLoadBalancingPolicyReasonInvalidName BackendLoadBalancingPolicyConditionReason = "InvalidName" // BackendLoadBalancingPolicyReasonNoTargetReference is used when there's no target reference BackendLoadBalancingPolicyReasonNoTargetReference BackendLoadBalancingPolicyConditionReason = "NoTargetReference" // BackendLoadBalancingPolicyReasonInvalidService is used when the Service is invalid BackendLoadBalancingPolicyReasonInvalidService BackendLoadBalancingPolicyConditionReason = "InvalidService" // BackendLoadBalancingPolicyReasonConflicted is used when the target ref conflicts with a pre-existing policy target BackendLoadBalancingPolicyReasonConflicted BackendLoadBalancingPolicyConditionReason = "Conflicted" )
const ( // HealthCheckPolicyConditionAccepted is used to set the HealthCheckPolicyConditionType to Accepted. HealthCheckPolicyConditionAccepted HealthCheckPolicyConditionType = "Accepted" // HealthCheckPolicyConditionResolvedRefs is used to set the HealthCheckPolicyCondition to ResolvedRefs. HealthCheckPolicyConditionResolvedRefs HealthCheckPolicyConditionType = "ResolvedRefs" // HealthCheckPolicyReasonAccepted is used to set the HealthCheckPolicyConditionReason to Accepted. // When the given HealthCheckPolicy is correctly configured. HealthCheckPolicyReasonAccepted HealthCheckPolicyConditionReason = "Accepted" // HealthCheckPolicyReasonInvalid is the reason when the HealthCheckPolicy isn't Accepted. HealthCheckPolicyReasonInvalid HealthCheckPolicyConditionReason = "InvalidHealthCheckPolicy" // HealthCheckPolicyReasonUnsupportedStatusCodes is used when the HealthCheckPolicy match StatusCodes are not supported. HealthCheckPolicyReasonUnsupportedStatusCodes HealthCheckPolicyConditionReason = "UnsupportedStatusCodes" // HealthCheckPolicyReasonResolvedRefs is used when the targetRef was resolved successfully. HealthCheckPolicyReasonResolvedRefs HealthCheckPolicyConditionReason = "ResolvedRefs" // HealthCheckPolicyReasonRefNotPermitted is used when the ref isn't permitted. HealthCheckPolicyReasonRefNotPermitted HealthCheckPolicyConditionReason = "RefNotPermitted" // HealthCheckPolicyReasonInvalidGroup is used when the group is invalid. HealthCheckPolicyReasonInvalidGroup HealthCheckPolicyConditionReason = "InvalidGroup" // HealthCheckPolicyReasonInvalidKind is used when the kind/group is invalid. HealthCheckPolicyReasonInvalidKind HealthCheckPolicyConditionReason = "InvalidKind" // HealthCheckPolicyReasonInvalidName is used when the name is invalid. HealthCheckPolicyReasonInvalidName HealthCheckPolicyConditionReason = "InvalidName" // HealthCheckPolicyReasonNoTargetReference is used when there's no target reference. HealthCheckPolicyReasonNoTargetReference HealthCheckPolicyConditionReason = "NoTargetReference" // HealthCheckPolicyReasonInvalidService is used when the Service is invalid. HealthCheckPolicyReasonInvalidService HealthCheckPolicyConditionReason = "InvalidService" // HealthCheckPolicyReasonInvalidPort is used when the port is invalid. HealthCheckPolicyReasonInvalidPort HealthCheckPolicyConditionReason = "InvalidPort" // HealthCheckPolicyReasonSectionNamesNotPermitted is used when the section names aren't permitted. HealthCheckPolicyReasonSectionNamesNotPermitted HealthCheckPolicyConditionReason = "SectionNamesNotPermitted" // HealthCheckPolicyReasonOverrideNotSupported is used when the override isn't supported. HealthCheckPolicyReasonOverrideNotSupported HealthCheckPolicyConditionReason = "OverrideNotSupported" // BackendTLSPolicyConditionNotFound is used when the BackendTLSPolicy is not found for the service. BackendTLSPolicyConditionNotFound HealthCheckPolicyConditionReason = "BackendTLSPolicyNotFound" )
const ( // IngressExtensionConditionAccepted indicates if the IngressExtension is accepted (reconciled) by the controller IngressExtensionConditionAccepted IngressExtensionConditionType = "Accepted" // IngressExtensionReasonAccepted is used to set the IngressExtensionConditionAccepted to Accepted IngressExtensionReasonAccepted IngressExtensionConditionReason = "Accepted" // IngressExtensionReasonPartiallyAccepted is used to set the IngressExtensionConditionAccepted to Accepted, but with nonfatal validation errors IngressExtensionReasonPartiallyAccepted IngressExtensionConditionReason = "PartiallyAcceptedWithErrors" // IngressExtensionConditionErrors indicates if there are validation or build errors on the extension IngressExtensionConditionErrors IngressExtensionConditionType = "Errors" // IngressExtensionReasonNoErrors indicates there are no validation errors IngressExtensionReasonNoErrors IngressExtensionConditionReason = "NoValidationErrors" // IngressExtensionReasonHasErrors indicates there are some validation errors IngressExtensionReasonHasErrors IngressExtensionConditionReason = "HasValidationErrors" // IngressExtensionMessageAcceptedNoErrors is applicable when an IngressExtension has been accepted and no errors are present IngressExtensionMessageAcceptedNoErrors = "Accepted and validated successfully" // IngressExtensionMessageErrorsPresent is applicable to the Errors condition when errors are present IngressExtensionMessageErrorsPresent = "Validation errors encountered, see rules and backend settings status for details" // IngressExtensionMessageAcceptedPartially is application to the Accepted condition when errors are present IngressExtensionMessageAcceptedPartially = "Partially accepted with some validation errors" // IngressExtensionMessageErrorsNoErrors is application to the Errors condition when no errors are present IngressExtensionMessageErrorsNoErrors = "No validation errors" )
const ( // RoutePolicyConditionAccepted is used to set the RoutePolicyConditionType to Accepted RoutePolicyConditionAccepted RoutePolicyConditionType = "Accepted" // RoutePolicyConditionResolvedRefs is used to set the RoutePolicyCondition to ResolvedRefs RoutePolicyConditionResolvedRefs RoutePolicyConditionType = "ResolvedRefs" // RoutePolicyReasonAccepted is used to set the RoutePolicyConditionReason to Accepted // When the given RoutePolicy is correctly configured RoutePolicyReasonAccepted RoutePolicyConditionReason = "Accepted" // RoutePolicyReasonAcceptedWithTimeoutConflict is used to set the RoutePolicyConditionReason to AcceptedWithTimeoutConflict // When the given RoutePolicy is correctly configured but has a timeout conflict with the target route RoutePolicyReasonAcceptedWithTimeoutConflict RoutePolicyConditionReason = "AcceptedWithTimeoutConflict" // RoutePolicyReasonInvalid is the reason when the RoutePolicy isn't Accepted RoutePolicyReasonInvalid RoutePolicyConditionReason = "InvalidRoutePolicy" // RoutePolicyReasonRefNotPermitted is used when the ref isn't permitted RoutePolicyReasonRefNotPermitted RoutePolicyConditionReason = "RefNotPermitted" // RoutePolicyReasonInvalidGroup is used when the group is invalid RoutePolicyReasonInvalidGroup RoutePolicyConditionReason = "InvalidGroup" // RoutePolicyReasonInvalidKind is used when the kind/group is invalid RoutePolicyReasonInvalidKind RoutePolicyConditionReason = "InvalidKind" // RoutePolicyReasonInvalidName is used when the name is invalid RoutePolicyReasonInvalidName RoutePolicyConditionReason = "InvalidName" // RoutePolicyReasonNoTargetReference is used when there's no target reference RoutePolicyReasonNoTargetReference RoutePolicyConditionReason = "NoTargetReference" // RoutePolicyReasonInvalidHTTPRoute is used when the HTTPRoute is invalid RoutePolicyReasonInvalidHTTPRoute RoutePolicyConditionReason = "InvalidHTTPRoute" // RoutePolicyReasonInvalidGRPCRoute is used when the GRPCRoute is invalid RoutePolicyReasonInvalidGRPCRoute RoutePolicyConditionReason = "InvalidGRPCRoute" // RoutePolicyReasonSectionNamesNotPermitted is used when the section names aren't permitted RoutePolicyReasonSectionNamesNotPermitted RoutePolicyConditionReason = "SectionNamesNotPermitted" // RoutePolicyReasonOverrideNotSupported is used when the override isn't supported RoutePolicyReasonOverrideNotSupported RoutePolicyConditionReason = "OverrideNotSupported" )
const ( // ALBFinalizerDeploymentExists should be added as a finalizer to the // ApplicationLoadBalancer whenever am ARM deployment exists. ALBFinalizerDeploymentExists = "alb-deployment-exists-finalizer.alb.networking.azure.io" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "alb.networking.azure.io", Version: "v1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type AffinityType ¶
type AffinityType string
AffinityType defines the affinity type for the Service
+kubebuilder:validation:Enum=application-cookie;managed-cookie
const ( // AffinityTypeApplicationCookie is a session affinity type for an application cookie AffinityTypeApplicationCookie AffinityType = "application-cookie" // AffinityTypeManagedCookie is a session affinity type for a managed cookie AffinityTypeManagedCookie AffinityType = "managed-cookie" )
type AlbConditionReason ¶
type AlbConditionReason string
AlbConditionReason defines the set of reasons that explain why a particular condition type are raised by the Application Gateway for Containers resource.
type AlbConditionType ¶
type AlbConditionType string
AlbConditionType is a type of condition associated with an Application Gateway for Containers resource. This type should be used with the AlbStatus.Conditions field.
type AlbSpec ¶
type AlbSpec struct {
// Associations are subnet resource IDs the Application Gateway for Containers resource are associated with.
Associations []string `json:"associations,omitempty"`
}
AlbSpec defines the specifications for the Application Gateway for Containers resource.
func (*AlbSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlbSpec.
func (*AlbSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AlbStatus ¶
type AlbStatus struct {
// +optional
// Known condition types are:
//
// * "Accepted"
// * "Ready"
//
// +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"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
AlbStatus defines the observed state of Application Gateway for Containers resource.
func (*AlbStatus) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlbStatus.
func (*AlbStatus) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationLoadBalancer ¶
type ApplicationLoadBalancer struct {
// Object's type metadata.
metav1.TypeMeta `json:",inline"`
// Object's metadata.
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the specifications for Application Gateway for Containers resource.
Spec AlbSpec `json:"spec,omitempty"`
// Status defines the current state of Application Gateway for Containers resource.
//
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status AlbStatus `json:"status,omitempty"`
}
ApplicationLoadBalancer is the schema for the Application Gateway for Containers resource.
func (*ApplicationLoadBalancer) DeepCopy ¶
func (in *ApplicationLoadBalancer) DeepCopy() *ApplicationLoadBalancer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) DeepCopyInto ¶
func (in *ApplicationLoadBalancer) DeepCopyInto(out *ApplicationLoadBalancer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApplicationLoadBalancer) DeepCopyObject ¶
func (in *ApplicationLoadBalancer) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ApplicationLoadBalancerList ¶
type ApplicationLoadBalancerList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ApplicationLoadBalancer `json:"items"`
}
ApplicationLoadBalancerList lists the ApplicationLoadBalancer objects. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*ApplicationLoadBalancerList) DeepCopy ¶
func (in *ApplicationLoadBalancerList) DeepCopy() *ApplicationLoadBalancerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLoadBalancerList.
func (*ApplicationLoadBalancerList) DeepCopyInto ¶
func (in *ApplicationLoadBalancerList) DeepCopyInto(out *ApplicationLoadBalancerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApplicationLoadBalancerList) DeepCopyObject ¶
func (in *ApplicationLoadBalancerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackendLoadBalancingPolicy ¶
type BackendLoadBalancingPolicy struct {
// Object's type metadata.
metav1.TypeMeta `json:",inline"`
// Object's metadata.
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the BackendLoadBalancingPolicy specification.
Spec BackendLoadBalancingPolicySpec `json:"spec,omitempty"`
// Status defines the current state of BackendLoadBalancingPolicy.
Status BackendLoadBalancingPolicyStatus `json:"status,omitempty"`
}
BackendLoadBalancingPolicy represents the configuration for backend load balancing.
func (*BackendLoadBalancingPolicy) DeepCopy ¶
func (in *BackendLoadBalancingPolicy) DeepCopy() *BackendLoadBalancingPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendLoadBalancingPolicy.
func (*BackendLoadBalancingPolicy) DeepCopyInto ¶
func (in *BackendLoadBalancingPolicy) DeepCopyInto(out *BackendLoadBalancingPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackendLoadBalancingPolicy) DeepCopyObject ¶
func (in *BackendLoadBalancingPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (BackendLoadBalancingPolicy) GetNamespacedName ¶
func (r BackendLoadBalancingPolicy) GetNamespacedName() types.NamespacedName
GetNamespacedName returns the policy's name
type BackendLoadBalancingPolicyConditionReason ¶
type BackendLoadBalancingPolicyConditionReason string
BackendLoadBalancingPolicyConditionReason defines the set of reasons that explain why a particular BackendLoadBalancingPolicy condition type is raised.
type BackendLoadBalancingPolicyConditionType ¶
type BackendLoadBalancingPolicyConditionType string
BackendLoadBalancingPolicyConditionType is a type of condition associated with a BackendLoadBalancingPolicy. This type should be used with the BackendLoadBalancingPolicyStatus.Conditions field.
type BackendLoadBalancingPolicyList ¶
type BackendLoadBalancingPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []BackendLoadBalancingPolicy `json:"items"`
}
BackendLoadBalancingPolicyList contains a list of BackendLoadBalancingPolicy. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*BackendLoadBalancingPolicyList) DeepCopy ¶
func (in *BackendLoadBalancingPolicyList) DeepCopy() *BackendLoadBalancingPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendLoadBalancingPolicyList.
func (*BackendLoadBalancingPolicyList) DeepCopyInto ¶
func (in *BackendLoadBalancingPolicyList) DeepCopyInto(out *BackendLoadBalancingPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackendLoadBalancingPolicyList) DeepCopyObject ¶
func (in *BackendLoadBalancingPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackendLoadBalancingPolicyPort ¶
type BackendLoadBalancingPolicyPort struct {
// Port is the port to use for connection to the backend
//
// +kubebuilder:validation:Minimum=1
Port int32 `json:"port,omitempty"`
}
BackendLoadBalancingPolicyPort defines the port configuration for the backend load balancing policy.
func (*BackendLoadBalancingPolicyPort) DeepCopy ¶
func (in *BackendLoadBalancingPolicyPort) DeepCopy() *BackendLoadBalancingPolicyPort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendLoadBalancingPolicyPort.
func (*BackendLoadBalancingPolicyPort) DeepCopyInto ¶
func (in *BackendLoadBalancingPolicyPort) DeepCopyInto(out *BackendLoadBalancingPolicyPort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendLoadBalancingPolicySpec ¶
type BackendLoadBalancingPolicySpec struct {
// TargetRefs identifies a list of API objects to apply policy to.
TargetRefs []TargetRefSpec `json:"targetRefs"`
// CircuitBreaker defines the schema for configuring Circuit Breaking
// +optional
CircuitBreaker *CircuitBreakerConfig `json:"circuitBreaker,omitempty"`
// LoadBalancing defines the schema for configuring Load Balancing options
// +optional
LoadBalancing *LoadBalancingConfig `json:"loadBalancing,omitempty"`
}
BackendLoadBalancingPolicySpec defines the specification for BackendLoadBalancingPolicy.
func (*BackendLoadBalancingPolicySpec) DeepCopy ¶
func (in *BackendLoadBalancingPolicySpec) DeepCopy() *BackendLoadBalancingPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendLoadBalancingPolicySpec.
func (*BackendLoadBalancingPolicySpec) DeepCopyInto ¶
func (in *BackendLoadBalancingPolicySpec) DeepCopyInto(out *BackendLoadBalancingPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendLoadBalancingPolicyStatus ¶
type BackendLoadBalancingPolicyStatus struct {
Targets []BackendLoadBalancingPolicyTargetStatus `json:"targets"`
}
BackendLoadBalancingPolicyStatus defines the observed state of BackendLoadBalancingPolicy.
func (*BackendLoadBalancingPolicyStatus) DeepCopy ¶
func (in *BackendLoadBalancingPolicyStatus) DeepCopy() *BackendLoadBalancingPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendLoadBalancingPolicyStatus.
func (*BackendLoadBalancingPolicyStatus) DeepCopyInto ¶
func (in *BackendLoadBalancingPolicyStatus) DeepCopyInto(out *BackendLoadBalancingPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendLoadBalancingPolicyTargetStatus ¶
type BackendLoadBalancingPolicyTargetStatus struct {
TargetRef CustomTargetRef `json:"targetRef"`
// +listType=map
// +listMapKey=type
// +kubebuilder:validation:MinItems=1
// +kubebuilder:validation:MaxItems=8
// +kubebuilder:default={{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
BackendLoadBalancingPolicyTargetStatus defines the observed status for a target ref
func (*BackendLoadBalancingPolicyTargetStatus) DeepCopy ¶
func (in *BackendLoadBalancingPolicyTargetStatus) DeepCopy() *BackendLoadBalancingPolicyTargetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendLoadBalancingPolicyTargetStatus.
func (*BackendLoadBalancingPolicyTargetStatus) DeepCopyInto ¶
func (in *BackendLoadBalancingPolicyTargetStatus) DeepCopyInto(out *BackendLoadBalancingPolicyTargetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendTLSPolicy ¶
type BackendTLSPolicy struct {
// Object's type metadata.
metav1.TypeMeta `json:",inline"`
// Object's metadata.
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the BackendTLSPolicy specification.
Spec BackendTLSPolicySpec `json:"spec,omitempty"`
// Status defines the current state of BackendTLSPolicy.
//
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status BackendTLSPolicyStatus `json:"status,omitempty"`
}
BackendTLSPolicy is the schema for the BackendTLSPolicies API.
func (*BackendTLSPolicy) DeepCopy ¶
func (in *BackendTLSPolicy) DeepCopy() *BackendTLSPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTLSPolicy.
func (*BackendTLSPolicy) DeepCopyInto ¶
func (in *BackendTLSPolicy) DeepCopyInto(out *BackendTLSPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackendTLSPolicy) DeepCopyObject ¶
func (in *BackendTLSPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (BackendTLSPolicy) GetNamespacedName ¶
func (b BackendTLSPolicy) GetNamespacedName() types.NamespacedName
GetNamespacedName returns the policy's name
type BackendTLSPolicyConfig ¶
type BackendTLSPolicyConfig struct {
CommonTLSPolicy `json:",inline"`
// Sni is the server name to use for the TLS connection to the backend.
//
// +optional
Sni string `json:"sni,omitempty"`
// Ports specifies the list of ports where the policy is applied.
Ports []BackendTLSPolicyPort `json:"ports,omitempty"`
// ClientCertificateRef is the reference to the client certificate to
// use for the TLS connection to the backend.
//
// +optional
ClientCertificateRef *gatewayapi_v1.SecretObjectReference `json:"clientCertificateRef,omitempty"`
}
BackendTLSPolicyConfig defines the policy specification for the Backend TLS Policy.
func (*BackendTLSPolicyConfig) DeepCopy ¶
func (in *BackendTLSPolicyConfig) DeepCopy() *BackendTLSPolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTLSPolicyConfig.
func (*BackendTLSPolicyConfig) DeepCopyInto ¶
func (in *BackendTLSPolicyConfig) DeepCopyInto(out *BackendTLSPolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendTLSPolicyList ¶
type BackendTLSPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []BackendTLSPolicy `json:"items"`
}
BackendTLSPolicyList lists the BackendTLSPolicy objects. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*BackendTLSPolicyList) DeepCopy ¶
func (in *BackendTLSPolicyList) DeepCopy() *BackendTLSPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTLSPolicyList.
func (*BackendTLSPolicyList) DeepCopyInto ¶
func (in *BackendTLSPolicyList) DeepCopyInto(out *BackendTLSPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackendTLSPolicyList) DeepCopyObject ¶
func (in *BackendTLSPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackendTLSPolicyPort ¶
type BackendTLSPolicyPort struct {
// Port is the port to use for the TLS connection to the backend
//
// +kubebuilder:validation:Minimum=1
Port int `json:"port,omitempty"`
}
BackendTLSPolicyPort defines the port to use for the TLS connection to the backend
func (*BackendTLSPolicyPort) DeepCopy ¶
func (in *BackendTLSPolicyPort) DeepCopy() *BackendTLSPolicyPort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTLSPolicyPort.
func (*BackendTLSPolicyPort) DeepCopyInto ¶
func (in *BackendTLSPolicyPort) DeepCopyInto(out *BackendTLSPolicyPort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendTLSPolicySpec ¶
type BackendTLSPolicySpec struct {
// TargetRef identifies an API object to apply policy to.
TargetRef CustomTargetRef `json:"targetRef"`
// Override defines policy configuration that should override policy
// configuration attached below the targeted resource in the hierarchy.
//
// Note: Override is currently not supported and result in a validation error.
// Support for Override will be added in a future release.
//
// +optional
Override *BackendTLSPolicyConfig `json:"override,omitempty"`
// Default defines default policy configuration for the targeted resource.
//
// +optional
Default *BackendTLSPolicyConfig `json:"default,omitempty"`
}
BackendTLSPolicySpec defines the desired state of BackendTLSPolicy.
func (*BackendTLSPolicySpec) DeepCopy ¶
func (in *BackendTLSPolicySpec) DeepCopy() *BackendTLSPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTLSPolicySpec.
func (*BackendTLSPolicySpec) DeepCopyInto ¶
func (in *BackendTLSPolicySpec) DeepCopyInto(out *BackendTLSPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendTLSPolicyStatus ¶
type BackendTLSPolicyStatus struct {
// Conditions describe the current conditions of the BackendTLSPolicy.
//
// Implementations should prefer to express BackendTLSPolicy conditions
// using the `BackendTLSPolicyConditionType` and `BackendTLSPolicyConditionReason`
// constants so that operators and tools can converge on a common
// vocabulary to describe BackendTLSPolicy state.
//
// +optional
// 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"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
BackendTLSPolicyStatus defines the observed state of BackendTLSPolicy.
func (*BackendTLSPolicyStatus) DeepCopy ¶
func (in *BackendTLSPolicyStatus) DeepCopy() *BackendTLSPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTLSPolicyStatus.
func (*BackendTLSPolicyStatus) DeepCopyInto ¶
func (in *BackendTLSPolicyStatus) DeepCopyInto(out *BackendTLSPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CircuitBreakerConfig ¶
type CircuitBreakerConfig struct {
// The maximum number of connections that will be made to the backend service.
// Default is 1000000000 (disabled).
//
// +optional
// +kubebuilder:default=1000000000
// +kubebuilder:validation:Minimum=0
MaxConnections uint32 `json:"maxConnections,omitempty"`
// Maximum number of parallel requests that will be made to the backend service.
// Default is 1000000000 (disabled).
//
// +optional
// +kubebuilder:default=1000000000
// +kubebuilder:validation:Minimum=0
MaxRequests uint32 `json:"maxRequests,omitempty"`
// Maximum number of pending requests that will be made to the backend service.
// Default is 1000000000 (disabled).
//
// +optional
// +kubebuilder:default=1000000000
// +kubebuilder:validation:Minimum=0
MaxPendingRequests uint32 `json:"maxPendingRequests,omitempty"`
// The maximum number of parallel retries allowed to the backend service.
// Default is 1000000000 (disabled).
//
// +optional
// +kubebuilder:default=1000000000
// +kubebuilder:validation:Minimum=0
MaxRetries uint32 `json:"maxRetries,omitempty"`
}
CircuitBreakerConfig defines the configuration for circuit breaking.
func (*CircuitBreakerConfig) DeepCopy ¶
func (in *CircuitBreakerConfig) DeepCopy() *CircuitBreakerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CircuitBreakerConfig.
func (*CircuitBreakerConfig) DeepCopyInto ¶
func (in *CircuitBreakerConfig) DeepCopyInto(out *CircuitBreakerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CommonTLSPolicy ¶
type CommonTLSPolicy struct {
// Verify provides the options to verify the peer certificate.
//
// +optional
Verify *CommonTLSPolicyVerify `json:"verify,omitempty"`
}
CommonTLSPolicy is the schema for the CommonTLSPolicy API.
func (*CommonTLSPolicy) DeepCopy ¶
func (in *CommonTLSPolicy) DeepCopy() *CommonTLSPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonTLSPolicy.
func (*CommonTLSPolicy) DeepCopyInto ¶
func (in *CommonTLSPolicy) DeepCopyInto(out *CommonTLSPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CommonTLSPolicyVerify ¶
type CommonTLSPolicyVerify struct {
// CaCertificateRef is the CA certificate used to verify peer certificate.
//
// +kubebuilder:validation:Required
CaCertificateRef *gatewayapi_v1.SecretObjectReference `json:"caCertificateRef,omitempty"`
// SubjectAltName is the subject alternative name used to verify peer
// certificate.
//
// +optional
SubjectAltName string `json:"subjectAltName,omitempty"`
}
CommonTLSPolicyVerify defines the schema for the CommonTLSPolicyVerify API.
func (*CommonTLSPolicyVerify) DeepCopy ¶
func (in *CommonTLSPolicyVerify) DeepCopy() *CommonTLSPolicyVerify
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonTLSPolicyVerify.
func (*CommonTLSPolicyVerify) DeepCopyInto ¶
func (in *CommonTLSPolicyVerify) DeepCopyInto(out *CommonTLSPolicyVerify)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CustomTargetRef ¶
type CustomTargetRef struct {
gatewayapi_v1alpha2.NamespacedPolicyTargetReference `json:",inline"`
// SectionNames is the name of the section within the target resource. When
// unspecified, this targetRef targets the entire resource. In the following
// resources, SectionNames is interpreted as the following:
//
// * Gateway: Listener Name
// * Service: Port Name
//
// If a SectionNames is specified, but doesn't exist on the targeted object,
// the Policy fails to attach, and the policy implementation will record
// a `ResolvedRefs` or similar Condition in the Policy's status.
//
//
// +optional
SectionNames []string `json:"sectionNames"`
}
CustomTargetRef is a reference to a custom resource that isn't part of the Kubernetes core API.
func (*CustomTargetRef) DeepCopy ¶
func (in *CustomTargetRef) DeepCopy() *CustomTargetRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomTargetRef.
func (*CustomTargetRef) DeepCopyInto ¶
func (in *CustomTargetRef) DeepCopyInto(out *CustomTargetRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FrontendTLSPolicy ¶
type FrontendTLSPolicy struct {
// Object's type metadata.
metav1.TypeMeta `json:",inline"`
// Object's metadata.
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the FrontendTLSPolicy specification.
Spec FrontendTLSPolicySpec `json:"spec,omitempty"`
// Status defines the current state of FrontendTLSPolicy.
//
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status FrontendTLSPolicyStatus `json:"status,omitempty"`
}
FrontendTLSPolicy is the schema for the FrontendTLSPolicy API
func (*FrontendTLSPolicy) DeepCopy ¶
func (in *FrontendTLSPolicy) DeepCopy() *FrontendTLSPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendTLSPolicy.
func (*FrontendTLSPolicy) DeepCopyInto ¶
func (in *FrontendTLSPolicy) DeepCopyInto(out *FrontendTLSPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FrontendTLSPolicy) DeepCopyObject ¶
func (in *FrontendTLSPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (FrontendTLSPolicy) GetNamespacedName ¶
func (f FrontendTLSPolicy) GetNamespacedName() types.NamespacedName
GetNamespacedName returns the policy's name
func (FrontendTLSPolicy) GetTargetRefs ¶
func (f FrontendTLSPolicy) GetTargetRefs() []*CustomTargetRef
GetTargetRefs returns the target reference of the FrontendTLSPolicy.
type FrontendTLSPolicyConfig ¶
type FrontendTLSPolicyConfig struct {
// Verify provides the options to verify the peer certificate.
//
// +optional
Verify *MTLSPolicyVerify `json:"verify,omitempty"`
// Type is the type of the policy.
//
// +optional
// +kubebuilder:default={name: "2023-06", type: "predefined"}
FrontendTLSPolicyType *PolicyType `json:"policyType"`
}
FrontendTLSPolicyConfig defines the policy specification for the Frontend TLS Policy.
func (*FrontendTLSPolicyConfig) DeepCopy ¶
func (in *FrontendTLSPolicyConfig) DeepCopy() *FrontendTLSPolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendTLSPolicyConfig.
func (*FrontendTLSPolicyConfig) DeepCopyInto ¶
func (in *FrontendTLSPolicyConfig) DeepCopyInto(out *FrontendTLSPolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FrontendTLSPolicyList ¶
type FrontendTLSPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []FrontendTLSPolicy `json:"items"`
}
FrontendTLSPolicyList lists the FrontendTLSPolicy objects. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*FrontendTLSPolicyList) DeepCopy ¶
func (in *FrontendTLSPolicyList) DeepCopy() *FrontendTLSPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendTLSPolicyList.
func (*FrontendTLSPolicyList) DeepCopyInto ¶
func (in *FrontendTLSPolicyList) DeepCopyInto(out *FrontendTLSPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FrontendTLSPolicyList) DeepCopyObject ¶
func (in *FrontendTLSPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FrontendTLSPolicySpec ¶
type FrontendTLSPolicySpec struct {
// TargetRef identifies an API object to apply policy to.
TargetRef CustomTargetRef `json:"targetRef"`
// Default defines default policy configuration for the targeted resource.
//
// +optional
Default *FrontendTLSPolicyConfig `json:"default,omitempty"`
// Override defines policy configuration that should override policy
// configuration attached below the targeted resource in the hierarchy.
//
// Note: Override is currently not supported and result in a validation error.
// Support for Override will be added in a future release.
//
// +optional
Override *FrontendTLSPolicyConfig `json:"override,omitempty"`
}
FrontendTLSPolicySpec defines the desired state of FrontendTLSPolicy
func (*FrontendTLSPolicySpec) DeepCopy ¶
func (in *FrontendTLSPolicySpec) DeepCopy() *FrontendTLSPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendTLSPolicySpec.
func (*FrontendTLSPolicySpec) DeepCopyInto ¶
func (in *FrontendTLSPolicySpec) DeepCopyInto(out *FrontendTLSPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FrontendTLSPolicyStatus ¶
type FrontendTLSPolicyStatus struct {
// Conditions describe the current conditions of the FrontendTLSPolicy.
//
// Implementations should prefer to express FrontendTLSPolicy conditions
// using the `FrontendTLSPolicyConditionType` and `FrontendTLSPolicyConditionReason`
// constants so that operators and tools can converge on a common
// vocabulary to describe FrontendTLSPolicy state.
//
// +optional
// Known condition types are:
//
// * "Accepted"
//
// +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"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
FrontendTLSPolicyStatus defines the observed state of FrontendTLSPolicy.
func (*FrontendTLSPolicyStatus) DeepCopy ¶
func (in *FrontendTLSPolicyStatus) DeepCopy() *FrontendTLSPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendTLSPolicyStatus.
func (*FrontendTLSPolicyStatus) DeepCopyInto ¶
func (in *FrontendTLSPolicyStatus) DeepCopyInto(out *FrontendTLSPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FrontendTLSPolicyType ¶
type FrontendTLSPolicyType string
FrontendTLSPolicyType is the type of the Frontend TLS Policy.
const ( // PredefinedFrontendTLSPolicyType is the type of the predefined Frontend TLS Policy. PredefinedFrontendTLSPolicyType FrontendTLSPolicyType = "predefined" )
type FrontendTLSPolicyTypeName ¶
type FrontendTLSPolicyTypeName string
FrontendTLSPolicyTypeName is the name of the Frontend TLS Policy.
const ( // PredefinedPolicy202306 is the name of the predefined Frontend TLS Policy for the policy "2023-06". PredefinedPolicy202306 FrontendTLSPolicyTypeName = "2023-06" // PredefinedPolicy202306Strict is the name of the predefined Frontend TLS Policy for the policy "2023-06-S". // This is a strict version of the policy "2023-06". PredefinedPolicy202306Strict FrontendTLSPolicyTypeName = "2023-06-S" )
type GRPCSpecifiers ¶
type GRPCSpecifiers struct {
// Authority if present is used as the value of the Authority header in the health check.
//
// +optional
Authority string `json:"authority,omitempty"`
// Service allows the configuration of a Health check registered under a different service name.
//
// +optional
Service string `json:"service,omitempty"`
}
GRPCSpecifiers defines the schema for GRPC HealthCheck.
func (*GRPCSpecifiers) DeepCopy ¶
func (in *GRPCSpecifiers) DeepCopy() *GRPCSpecifiers
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GRPCSpecifiers.
func (*GRPCSpecifiers) DeepCopyInto ¶
func (in *GRPCSpecifiers) DeepCopyInto(out *GRPCSpecifiers)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTPHeader ¶
type HTTPHeader struct {
// Name is the name of the HTTP Header to be matched. Name matching MUST be
// case insensitive. (See https://tools.ietf.org/html/rfc7230#section-3.2).
//
// If multiple entries specify equivalent header names, the first entry with
// an equivalent name MUST be considered for a match. Subsequent entries
// with an equivalent header name MUST be ignored. Due to the
// case-insensitivity of header names, "foo" and "Foo" are considered
// equivalent.
Name HTTPHeaderName `json:"name"`
// Value is the value of HTTP Header to be matched.
//
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=4096
Value string `json:"value"`
}
HTTPHeader represents an HTTP Header name and value as defined by RFC 7230.
func (*HTTPHeader) DeepCopy ¶
func (in *HTTPHeader) DeepCopy() *HTTPHeader
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPHeader.
func (*HTTPHeader) DeepCopyInto ¶
func (in *HTTPHeader) DeepCopyInto(out *HTTPHeader)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTPHeaderName ¶
type HTTPHeaderName HeaderName
HTTPHeaderName is the name of an HTTP header.
Valid values include:
* "Authorization" * "Set-Cookie"
Invalid values include:
- ":method" - ":" is an invalid character. This means that HTTP/2 pseudo headers aren't currently supported by this type.
- "/invalid" - "/ " is an invalid character
type HTTPMatch ¶
type HTTPMatch struct {
// Body defines the HTTP body matchers to use for HealthCheck checks.
//
// +optional
Body string `json:"body,omitempty"`
// StatusCodes defines the HTTP status code matchers to use for HealthCheck checks.
//
// +optional
StatusCodes []*StatusCodes `json:"statusCodes,omitempty"`
}
HTTPMatch defines the HTTP matchers to use for HealthCheck checks.
func (*HTTPMatch) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPMatch.
func (*HTTPMatch) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTPPathModifier ¶
type HTTPPathModifier struct {
// Type defines the type of path modifier. More types may be
// added in a future release of the API.
//
// Values may be added to this enum, implementations
// must ensure unknown values won't cause a crash.
//
// Unknown values here must result in the implementation setting the
// Accepted Condition for the rule to be false
//
// +kubebuilder:validation:Enum=ReplaceFullPath;ReplacePrefixMatch
Type HTTPPathModifierType `json:"type"`
// ReplaceFullPath specifies the value with which to replace the full path
// of a request during a rewrite or redirect.
//
// +kubebuilder:validation:MaxLength=1024
// +optional
ReplaceFullPath *string `json:"replaceFullPath,omitempty"`
// ReplacePrefixMatch specifies the value with which to replace the prefix
// match of a request during a rewrite or redirect. For example, a request
// to "/foo/bar" with a prefix match of "/foo" and a ReplacePrefixMatch
// of "/xyz" would be modified to "/xyz/bar".
//
// This matches the behavior of the PathPrefix match type. This
// matches full path elements. A path element refers to the list of labels
// in the path split by the `/` separator. When specified, a trailing `/` is
// ignored. For example, the paths `/abc`, `/abc/`, and `/abc/def` would all
// match the prefix `/abc`, but the path `/abcd` wouldn't.
//
// ReplacePrefixMatch is only compatible with a `PathPrefix` HTTPRouteMatch.
// Using any other HTTPRouteMatch type on the same HTTPRouteRule results in
// the implementation setting the Accepted Condition for the Route to `status: False`.
//
// Request Path | Prefix Match | Replace Prefix | Modified Path
// |------------|--------------|----------------|----------
// /foo/bar | /foo | /xyz | /xyz/bar
// /foo/bar | /foo | /xyz/ | /xyz/bar
// /foo/bar | /foo/ | /xyz | /xyz/bar
// /foo/bar | /foo/ | /xyz/ | /xyz/bar
// /foo | /foo | /xyz | /xyz
// /foo/ | /foo | /xyz | /xyz/
// /foo/bar | /foo | <empty string> | /bar
// /foo/ | /foo | <empty string> | /
// /foo | /foo | <empty string> | /
// /foo/ | /foo | / | /
// /foo | /foo | / | /
//
// +kubebuilder:validation:MaxLength=1024
// +optional
ReplacePrefixMatch *string `json:"replacePrefixMatch,omitempty"`
}
HTTPPathModifier defines configuration for path modifiers.
func (*HTTPPathModifier) DeepCopy ¶
func (in *HTTPPathModifier) DeepCopy() *HTTPPathModifier
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPPathModifier.
func (*HTTPPathModifier) DeepCopyInto ¶
func (in *HTTPPathModifier) DeepCopyInto(out *HTTPPathModifier)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTPPathModifierType ¶
type HTTPPathModifierType string
HTTPPathModifierType defines the type of path redirect or rewrite.
const ( // FullPathHTTPPathModifier replaces the full path with the specified value. FullPathHTTPPathModifier HTTPPathModifierType = "ReplaceFullPath" // PrefixMatchHTTPPathModifier replaces any prefix path with the // substitution value. For example, a path with a prefix // match of "/foo" and a ReplacePrefixMatch substitution of "/bar" // replace "/foo" with "/bar" in matching requests. // // This matches the behavior of the PathPrefix match type. This // matches full path elements. A path element refers to the list of labels // in the path split by the `/` separator. When specified, a trailing `/` is // ignored. For example, the paths `/abc`, `/abc/`, and `/abc/def` would all // match the prefix `/abc`, but the path `/abcd` wouldn't. PrefixMatchHTTPPathModifier HTTPPathModifierType = "ReplacePrefixMatch" )
type HTTPSpecifiers ¶
type HTTPSpecifiers struct {
// Host is the host header value to use for HealthCheck checks.
//
// +optional
Host string `json:"host,omitempty"`
// Path is the path to use for HealthCheck checks.
//
// +optional
Path string `json:"path,omitempty"`
// Match defines the HTTP matchers to use for HealthCheck checks.
//
// +optional
Match *HTTPMatch `json:"match,omitempty"`
}
HTTPSpecifiers defines the schema for HTTP HealthCheck check specification.
func (*HTTPSpecifiers) DeepCopy ¶
func (in *HTTPSpecifiers) DeepCopy() *HTTPSpecifiers
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPSpecifiers.
func (*HTTPSpecifiers) DeepCopyInto ¶
func (in *HTTPSpecifiers) DeepCopyInto(out *HTTPSpecifiers)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeaderFilter ¶
type HeaderFilter struct {
// Set overwrites the request with the given header (name, value)
// before the action.
//
// Input:
// GET /foo HTTP/1.1
// my-header: foo
//
// Config:
// set:
// - name: "my-header"
// value: "bar"
//
// Output:
// GET /foo HTTP/1.1
// my-header: bar
//
// +optional
// +listType=map
// +listMapKey=name
// +kubebuilder:validation:MaxItems=16
Set []HTTPHeader `json:"set,omitempty"`
// Add adds the given header(s) (name, value) to the request
// before the action. It appends to any existing values associated
// with the header name.
//
// Input:
// GET /foo HTTP/1.1
// my-header: foo
//
// Config:
// add:
// - name: "my-header"
// value: "bar,baz"
//
// Output:
// GET /foo HTTP/1.1
// my-header: foo,bar,baz
//
// +optional
// +listType=map
// +listMapKey=name
// +kubebuilder:validation:MaxItems=16
Add []HTTPHeader `json:"add,omitempty"`
// Remove the given header(s) from the HTTP request before the action. The
// value of Remove is a list of HTTP header names. Header names
// are case-insensitive (see
// https://datatracker.ietf.org/doc/html/rfc2616#section-4.2).
//
// Input:
// GET /foo HTTP/1.1
// my-header1: foo
// my-header2: bar
// my-header3: baz
//
// Config:
// remove: ["my-header1", "my-header3"]
//
// Output:
// GET /foo HTTP/1.1
// my-header2: bar
//
// +optional
// +kubebuilder:validation:MaxItems=16
Remove []string `json:"remove,omitempty"`
}
HeaderFilter defines a filter that modifies the headers of an HTTP request or response. Only one action for a given header name is permitted. Filters specifying multiple actions of the same or different type for any one header name are invalid and rejected. Configuration to set or add multiple values for a header must use RFC 7230 header value formatting, separating each value with a comma.
func (*HeaderFilter) DeepCopy ¶
func (in *HeaderFilter) DeepCopy() *HeaderFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderFilter.
func (*HeaderFilter) DeepCopyInto ¶
func (in *HeaderFilter) DeepCopyInto(out *HeaderFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeaderName ¶
type HeaderName string
HeaderName is the name of a header or query parameter.
+kubebuilder:validation:MinLength=1 +kubebuilder:validation:MaxLength=256 +kubebuilder:validation:Pattern=`^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$` +k8s:deepcopy-gen=false
type HealthCheckPolicy ¶
type HealthCheckPolicy struct {
// Object's type metadata.
metav1.TypeMeta `json:",inline"`
// Object's metadata.
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the HealthCheckPolicy specification.
Spec HealthCheckPolicySpec `json:"spec,omitempty"`
// Status defines the current state of HealthCheckPolicy.
//
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status HealthCheckPolicyStatus `json:"status,omitempty"`
}
HealthCheckPolicy is the schema for the HealthCheckPolicy API.
func (*HealthCheckPolicy) DeepCopy ¶
func (in *HealthCheckPolicy) DeepCopy() *HealthCheckPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheckPolicy.
func (*HealthCheckPolicy) DeepCopyInto ¶
func (in *HealthCheckPolicy) DeepCopyInto(out *HealthCheckPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HealthCheckPolicy) DeepCopyObject ¶
func (in *HealthCheckPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (HealthCheckPolicy) GetNamespacedName ¶
func (h HealthCheckPolicy) GetNamespacedName() types.NamespacedName
GetNamespacedName returns the policy's name.
type HealthCheckPolicyConditionReason ¶
type HealthCheckPolicyConditionReason string
HealthCheckPolicyConditionReason defines the set of reasons that explain why a particular HealthCheckPolicy condition type is raised.
type HealthCheckPolicyConditionType ¶
type HealthCheckPolicyConditionType string
HealthCheckPolicyConditionType is a type of condition associated with a HealthCheckPolicy. This type should be used with the HealthCheckPolicyStatus.Conditions field.
type HealthCheckPolicyConfig ¶
type HealthCheckPolicyConfig struct {
// Interval is the number of seconds between HealthCheck checks.
//
// +optional
Interval metav1.Duration `json:"interval,omitempty"`
// Timeout is the number of seconds after which the HealthCheck check is
// considered failed.
//
// +optional
Timeout metav1.Duration `json:"timeout,omitempty"`
// Port is the port to use for HealthCheck checks.
//
// +optional
Port int32 `json:"port,omitempty"`
// UnhealthyThreshold is the number of consecutive failed HealthCheck checks.
//
// +optional
UnhealthyThreshold int32 `json:"unhealthyThreshold,omitempty"`
// HealthyThreshold is the number of consecutive successful HealthCheck checks.
//
// +optional
HealthyThreshold int32 `json:"healthyThreshold,omitempty"`
// UseTLS indicates whether health check should enforce TLS.
// By default, health check will use the same protocol as the
// service if the same port is used for health check. If the port
// is different, health check will be plaintext.
//
// +optional
UseTLS bool `json:"useTLS,omitempty"`
// HTTP defines the HTTP constraint specification for the HealthCheck of a
// target resource.
//
// +optional
HTTP *HTTPSpecifiers `json:"http,omitempty"`
// GRPC configures a gRPC v1 HealthCheck (https://github.com/grpc/grpc-proto/blob/master/grpc/health/v1/health.proto)
// against the target resource.
GRPC *GRPCSpecifiers `json:"grpc,omitempty"`
}
HealthCheckPolicyConfig defines the schema for HealthCheck check specification.
func (*HealthCheckPolicyConfig) DeepCopy ¶
func (in *HealthCheckPolicyConfig) DeepCopy() *HealthCheckPolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheckPolicyConfig.
func (*HealthCheckPolicyConfig) DeepCopyInto ¶
func (in *HealthCheckPolicyConfig) DeepCopyInto(out *HealthCheckPolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheckPolicyList ¶
type HealthCheckPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []HealthCheckPolicy `json:"items"`
}
HealthCheckPolicyList contains a list of HealthCheckPolicy. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*HealthCheckPolicyList) DeepCopy ¶
func (in *HealthCheckPolicyList) DeepCopy() *HealthCheckPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheckPolicyList.
func (*HealthCheckPolicyList) DeepCopyInto ¶
func (in *HealthCheckPolicyList) DeepCopyInto(out *HealthCheckPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HealthCheckPolicyList) DeepCopyObject ¶
func (in *HealthCheckPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HealthCheckPolicySpec ¶
type HealthCheckPolicySpec struct {
// TargetRef identifies an API object to apply policy to.
TargetRef CustomTargetRef `json:"targetRef"`
// Override defines policy configuration that should override policy
// configuration attached below the targeted resource in the hierarchy.
//
// Note: Override is currently not supported and will result in a validation error.
// Support for Override will be added in a future release.
//
// +optional
Override *HealthCheckPolicyConfig `json:"override,omitempty"`
// Default defines default policy configuration for the targeted resource.
//
// +optional
Default *HealthCheckPolicyConfig `json:"default,omitempty"`
}
HealthCheckPolicySpec defines the desired state of HealthCheckPolicy.
func (*HealthCheckPolicySpec) DeepCopy ¶
func (in *HealthCheckPolicySpec) DeepCopy() *HealthCheckPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheckPolicySpec.
func (*HealthCheckPolicySpec) DeepCopyInto ¶
func (in *HealthCheckPolicySpec) DeepCopyInto(out *HealthCheckPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheckPolicyStatus ¶
type HealthCheckPolicyStatus struct {
// Conditions describe the current conditions of the HealthCheckPolicy.
//
// Implementations should prefer to express HealthCheckPolicy conditions
// using the `HealthCheckPolicyConditionType` and `HealthCheckPolicyConditionReason`
// constants so that operators and tools can converge on a common
// vocabulary to describe HealthCheckPolicy state.
//
// +optional
// Known condition types are:
//
// * "Accepted"
//
// +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"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
HealthCheckPolicyStatus defines the observed state of HealthCheckPolicy.
func (*HealthCheckPolicyStatus) DeepCopy ¶
func (in *HealthCheckPolicyStatus) DeepCopy() *HealthCheckPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheckPolicyStatus.
func (*HealthCheckPolicyStatus) DeepCopyInto ¶
func (in *HealthCheckPolicyStatus) DeepCopyInto(out *HealthCheckPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressBackendPort ¶
type IngressBackendPort struct {
// Port indicates the port on the backend service
// +optional
Port *int32 `json:"port"`
// Name must refer to a name on a port on the backend service
// +optional
Name *string `json:"name"`
// Protocol should be one of "HTTP", "HTTPS"
// +kubebuilder:validation:Enum=HTTP;HTTPS
Protocol Protocol `json:"protocol"`
}
IngressBackendPort describes a port on a backend. Only one of Name/Number should be defined.
func (*IngressBackendPort) DeepCopy ¶
func (in *IngressBackendPort) DeepCopy() *IngressBackendPort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressBackendPort.
func (*IngressBackendPort) DeepCopyInto ¶
func (in *IngressBackendPort) DeepCopyInto(out *IngressBackendPort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressBackendSettingStatus ¶
type IngressBackendSettingStatus struct {
// Service identifies the BackendSetting this status describes
Service string `json:"service"`
// Errors are a list of errors relating to this setting
// +optional
Errors []string `json:"validationErrors"`
// Valid indicates that there are no validation errors present on this BackendSetting
Valid bool `json:"valid"`
}
IngressBackendSettingStatus describes the state of a BackendSetting
func (*IngressBackendSettingStatus) DeepCopy ¶
func (in *IngressBackendSettingStatus) DeepCopy() *IngressBackendSettingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressBackendSettingStatus.
func (*IngressBackendSettingStatus) DeepCopyInto ¶
func (in *IngressBackendSettingStatus) DeepCopyInto(out *IngressBackendSettingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressBackendSettings ¶
type IngressBackendSettings struct {
// Service is the name of a backend service that this configuration applies to
Service string `json:"service"`
// Ports can be used to indicate if the backend service is listening on HTTP or HTTPS
// +optional
Ports []IngressBackendPort `json:"ports,omitempty"`
// TrustedRootCertificate can be used to supply a certificate for the gateway to trust when communicating to the
// backend on a port specified as https
// +optional
TrustedRootCertificate string `json:"trustedRootCertificate,omitempty"`
// SessionAffinity allows client requests to be consistently given to the same backend
// +optional
*SessionAffinity `json:"sessionAffinity,omitempty"`
// Timeouts define a set of timeout parameters to be applied to an Ingress
// +optional
Timeouts IngressTimeouts `json:"timeouts,omitempty"`
// LoadBalancing defines the load balancing policy for the backend service
// +optional
*BackendLoadBalancingPolicySpec `json:"loadBalancingPolicySpec,omitempty"`
}
IngressBackendSettings provides extended configuration options for a backend service
func (*IngressBackendSettings) DeepCopy ¶
func (in *IngressBackendSettings) DeepCopy() *IngressBackendSettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressBackendSettings.
func (*IngressBackendSettings) DeepCopyInto ¶
func (in *IngressBackendSettings) DeepCopyInto(out *IngressBackendSettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressExtension ¶
type IngressExtension struct {
// Object's type metadata.
metav1.TypeMeta `json:",inline"`
// Object's metadata.
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the IngressExtension specification.
Spec IngressExtensionSpec `json:"spec,omitempty"`
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status IngressExtensionStatus `json:"status"`
}
IngressExtension is the schema for the IngressExtension API
func (*IngressExtension) DeepCopy ¶
func (in *IngressExtension) DeepCopy() *IngressExtension
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressExtension.
func (*IngressExtension) DeepCopyInto ¶
func (in *IngressExtension) DeepCopyInto(out *IngressExtension)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IngressExtension) DeepCopyObject ¶
func (in *IngressExtension) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IngressExtensionConditionReason ¶
type IngressExtensionConditionReason string
IngressExtensionConditionReason defines the set of reasons that explain why a particular IngressExtension condition type is raised.
type IngressExtensionConditionType ¶
type IngressExtensionConditionType string
IngressExtensionConditionType is a type of condition associated with a IngressExtension. This type should be used with the IngressExtensionStatus.Conditions field.
type IngressExtensionList ¶
type IngressExtensionList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []IngressExtension `json:"items"`
}
IngressExtensionList contains a list of IngressExtension. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*IngressExtensionList) DeepCopy ¶
func (in *IngressExtensionList) DeepCopy() *IngressExtensionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressExtensionList.
func (*IngressExtensionList) DeepCopyInto ¶
func (in *IngressExtensionList) DeepCopyInto(out *IngressExtensionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IngressExtensionList) DeepCopyObject ¶
func (in *IngressExtensionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IngressExtensionSpec ¶
type IngressExtensionSpec struct {
// Rules define the rules per host
// +optional
Rules []IngressRuleSetting `json:"rules,omitempty"`
// BackendSettings defines a set of configuration options for Ingress service backends
// +optional
BackendSettings []IngressBackendSettings `json:"backendSettings,omitempty"`
}
IngressExtensionSpec defines the desired configuration of IngressExtension
func (*IngressExtensionSpec) DeepCopy ¶
func (in *IngressExtensionSpec) DeepCopy() *IngressExtensionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressExtensionSpec.
func (*IngressExtensionSpec) DeepCopyInto ¶
func (in *IngressExtensionSpec) DeepCopyInto(out *IngressExtensionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressExtensionStatus ¶
type IngressExtensionStatus struct {
// Rules have detailed status information regarding each Rule
// +optional
Rules []IngressRuleStatus `json:"rules,omitempty"`
// BackendSettings has detailed status information regarding each BackendSettings
// +optional
BackendSettings []IngressBackendSettingStatus `json:"backendSettings,omitempty"`
// Conditions describe the current conditions of the IngressExtension.
// +optional
// Known condition types are:
//
// * "Accepted"
// * "Errors"
//
// +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: "ValidationErrors", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
IngressExtensionStatus describes the current state of the IngressExtension
func (*IngressExtensionStatus) DeepCopy ¶
func (in *IngressExtensionStatus) DeepCopy() *IngressExtensionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressExtensionStatus.
func (*IngressExtensionStatus) DeepCopyInto ¶
func (in *IngressExtensionStatus) DeepCopyInto(out *IngressExtensionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressRewrites ¶
type IngressRewrites struct {
// Type identifies the type of rewrite
// +kubebuilder:validation:Enum=RequestHeaderModifier;ResponseHeaderModifier;URLRewrite
Type RewriteType `json:"type"`
// RequestHeaderModifier defines a schema that modifies request headers.
// +optional
RequestHeaderModifier *HeaderFilter `json:"requestHeaderModifier,omitempty"`
// RequestHeaderModifier defines a schema that modifies response headers.
// +optional
ResponseHeaderModifier *HeaderFilter `json:"responseHeaderModifier,omitempty"`
// URLRewrite defines a schema that modifies a request during forwarding.
// +optional
URLRewrite *URLRewriteFilter `json:"urlRewrite,omitempty"`
}
IngressRewrites provides the various rewrites supported on a rule
func (*IngressRewrites) DeepCopy ¶
func (in *IngressRewrites) DeepCopy() *IngressRewrites
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressRewrites.
func (*IngressRewrites) DeepCopyInto ¶
func (in *IngressRewrites) DeepCopyInto(out *IngressRewrites)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressRuleSetting ¶
type IngressRuleSetting struct {
// Host is used to match against Ingress rules with the same hostname in order to identify which rules affect these settings
Host string `json:"host"`
// AdditionalHostnames specifies more hostnames to listen on
// +optional
AdditionalHostnames []string `json:"additionalHostnames,omitempty"`
// Rewrites defines the rewrites for the rule
// +optional
Rewrites []IngressRewrites `json:"rewrites,omitempty"`
// RequestRedirect defines the redirect behavior for the rule
// +optional
RequestRedirect *Redirect `json:"requestRedirect,omitempty"`
}
IngressRuleSetting provides configuration options for rules
func (*IngressRuleSetting) DeepCopy ¶
func (in *IngressRuleSetting) DeepCopy() *IngressRuleSetting
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressRuleSetting.
func (*IngressRuleSetting) DeepCopyInto ¶
func (in *IngressRuleSetting) DeepCopyInto(out *IngressRuleSetting)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressRuleStatus ¶
type IngressRuleStatus struct {
// Host identifies the rule this status describes
Host string `json:"host"`
// Errors are a list of errors relating to this setting
// +optional
Errors []string `json:"validationErrors"`
// Valid indicates that there are no validation errors present on this rule
// +optional
Valid bool `json:"valid"`
}
IngressRuleStatus describes the state of a rule
func (*IngressRuleStatus) DeepCopy ¶
func (in *IngressRuleStatus) DeepCopy() *IngressRuleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressRuleStatus.
func (*IngressRuleStatus) DeepCopyInto ¶
func (in *IngressRuleStatus) DeepCopyInto(out *IngressRuleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressTimeouts ¶
type IngressTimeouts struct {
// RequestTimeout defines the timeout used by the load balancer when forwarding requests to a backend service
// +optional
RequestTimeout metav1.Duration `json:"requestTimeout,omitempty"`
}
IngressTimeouts can be used to configure timeout properties for an Ingress
func (*IngressTimeouts) DeepCopy ¶
func (in *IngressTimeouts) DeepCopy() *IngressTimeouts
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressTimeouts.
func (*IngressTimeouts) DeepCopyInto ¶
func (in *IngressTimeouts) DeepCopyInto(out *IngressTimeouts)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadAwareConfig ¶
type LoadAwareConfig struct {
// An endpoint must report load metrics continuously for at least this long before the endpoint
// metrics will be used to influence load balancing decisions. Takes effect both immediately after
// we establish a connection to an endpoint and after `metricExpirationPeriod` has elapsed.
// Default is 10 seconds.
//
// +optional
BlackoutPeriod metav1.Duration `json:"blackoutPeriod"`
// If the endpoint does not report load metrics for this duration, metrics will stop
// being used to influence load balancing decisions. Default is 3 minutes.
//
// +optional
MetricExpirationPeriod metav1.Duration `json:"metricExpirationPeriod"`
// The multiplier used to adjust endpoint weights with the error rated calculated based
// on the reported `rps_fractional` and `eps` load metrics. Must not be a negative value.
// Default is 1.0.
//
// +optional
// +kubebuilder:default=`1.0`
// +kubebuilder:validation:Pattern=`^([0-9]+([.][0-9]+)?|[.][0-9]+)$`
ErrorUtilizationPenalty string `json:"errorUtilizationPenalty,omitempty"`
// A list of custom metrics reported by endpoints to be used for reporting utilization
// and influencing load balancing decisions. Utilization will be computed by taking the
// max of the values of metrics specified in this list.
//
// +optional
// +kubebuilder:validation:MaxItems=10
NamedMetrics []string `json:"namedMetrics,omitempty"`
}
LoadAwareConfig defines the configuration for load aware routing.
func (*LoadAwareConfig) DeepCopy ¶
func (in *LoadAwareConfig) DeepCopy() *LoadAwareConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadAwareConfig.
func (*LoadAwareConfig) DeepCopyInto ¶
func (in *LoadAwareConfig) DeepCopyInto(out *LoadAwareConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadBalancingConfig ¶
type LoadBalancingConfig struct {
// Strategy defines the policy to use when load balancing traffic to the backend service.
// Default is round-robin.
//
// +optional
Strategy LoadBalancingStrategy `json:"strategy,omitempty"`
// SlowStart defines the schema for Slow Start specification
// +optional
SlowStart *SlowStartConfig `json:"slowStart,omitempty"`
// LoadAware defines the schema for Load Aware Routing specification
// +optional
LoadAware *LoadAwareConfig `json:"loadAware,omitempty"`
}
LoadBalancingConfig defines the configuration for load balancing.
func (*LoadBalancingConfig) DeepCopy ¶
func (in *LoadBalancingConfig) DeepCopy() *LoadBalancingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancingConfig.
func (*LoadBalancingConfig) DeepCopyInto ¶
func (in *LoadBalancingConfig) DeepCopyInto(out *LoadBalancingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadBalancingStrategy ¶
type LoadBalancingStrategy string
LoadBalancingStrategy defines the policy to use when balancing traffic across a service
+kubebuilder:validation:Enum=round-robin;least-request;load-aware
const ( // LoadBalancingRoundRobin is used to set the LoadBalancingStrategy to round-robin LoadBalancingRoundRobin LoadBalancingStrategy = "round-robin" // LoadBalancingLeastRequest is used to set the LoadBalancingStrategy to least-request LoadBalancingLeastRequest LoadBalancingStrategy = "least-request" // LoadBalancingRingHash is used to set the LoadBalancingStrategy to ring-hash LoadBalancingRingHash LoadBalancingStrategy = "ring-hash" // LoadBalancingLoadAware is used to set the LoadBalancingStrategy to load-aware LoadBalancingLoadAware LoadBalancingStrategy = "load-aware" )
type MTLSPolicyVerify ¶
type MTLSPolicyVerify struct {
// CaCertificateRef is the CA certificate used to verify peer certificate.
//
// +kubebuilder:validation:Required
CaCertificateRef *gatewayapi_v1.SecretObjectReference `json:"caCertificateRef,omitempty"`
// SubjectAltNames is the list of subject alternative names used to verify peer
// certificate.
//
// +optional
SubjectAltNames []string `json:"subjectAltNames,omitempty"`
}
MTLSPolicyVerify defines the schema for the MTLSPolicyVerify API.
func (*MTLSPolicyVerify) DeepCopy ¶
func (in *MTLSPolicyVerify) DeepCopy() *MTLSPolicyVerify
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MTLSPolicyVerify.
func (*MTLSPolicyVerify) DeepCopyInto ¶
func (in *MTLSPolicyVerify) DeepCopyInto(out *MTLSPolicyVerify)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PolicyConditionReason ¶
type PolicyConditionReason string
PolicyConditionReason is the type of reason used for different ALB related policy CRDs.
const ( PolicyReasonPending PolicyConditionReason = "Pending" PolicyReasonInvalid PolicyConditionReason = "Invalid" )
Reasons applicable to each condition type
const ( PolicyReasonAccepted PolicyConditionReason = "Accepted" PolicyReasonOverrideNotSupported PolicyConditionReason = "OverrideNotSupported" )
Accepted Condition Reasons
const ( PolicyReasonResolvedRefs PolicyConditionReason = "ResolvedRefs" PolicyReasonConflicted PolicyConditionReason = "Conflicted" PolicyReasonRefNotPermitted PolicyConditionReason = "RefNotPermitted" PolicyReasonInvalidCertificateRef PolicyConditionReason = "InvalidCertificateRef" PolicyReasonNoTargetReference PolicyConditionReason = "NoTargetReference" PolicyReasonInvalidGroup PolicyConditionReason = "InvalidGroup" PolicyReasonInvalidKind PolicyConditionReason = "InvalidKind" PolicyReasonInvalidName PolicyConditionReason = "InvalidName" PolicyReasonInvalidTargetRef PolicyConditionReason = "InvalidTargetReference" PolicyReasonSectionNamesNotPermitted PolicyConditionReason = "SectionNamesNotPermitted" PolicyReasonInvalidService PolicyConditionReason = "InvalidService" )
ResolvedRefs Condition Reasons
const ( PolicyReasonDeployed PolicyConditionReason = "Deployed" PolicyReasonDeploymentFailed PolicyConditionReason = "DeploymentFailed" PolicyReasonNoDeployment PolicyConditionReason = "NoDeployment" )
Deployment Condition Reasons
const ( PolicyReasonProgrammed PolicyConditionReason = "Programmed" PolicyReasonProgrammingFailed PolicyConditionReason = "ProgrammingFailed" PolicyReasonOperationFailed PolicyConditionReason = "OperationFailed" )
Programmed Condition Reasons
type PolicyConditionType ¶
type PolicyConditionType string
PolicyConditionType is the type of conditions used for different ALB related policy CRDs.
const ( PolicyConditionTypeAccepted PolicyConditionType = "Accepted" PolicyConditionTypeResolvedRefs PolicyConditionType = "ResolvedRefs" PolicyConditionTypeProgrammed PolicyConditionType = "Programmed" PolicyConditionTypeDeployment PolicyConditionType = "Deployment" )
Policy Condition Types
type PolicyType ¶
type PolicyType struct {
// Name is the name of the policy.
Name FrontendTLSPolicyTypeName `json:"name"`
// FrontendTLSPolicyType specifies the frontend TLS policy type
FrontendTLSPolicyType FrontendTLSPolicyType `json:"type"`
}
PolicyType is the type of the policy.
func (*PolicyType) DeepCopy ¶
func (in *PolicyType) DeepCopy() *PolicyType
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyType.
func (*PolicyType) DeepCopyInto ¶
func (in *PolicyType) DeepCopyInto(out *PolicyType)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PortNumber ¶
type PortNumber int32
PortNumber defines a network port.
+kubebuilder:validation:Minimum=1 +kubebuilder:validation:Maximum=65535
type PreciseHostname ¶
type PreciseHostname string
PreciseHostname is the fully qualified domain name of a network host. This matches the RFC 1123 definition of a hostname with one notable exception that numeric IP addresses aren't allowed.
Per RFC1035 and RFC1123, a *label* must consist of lower case alphanumeric characters or '-', and must start and end with an alphanumeric character. No other punctuation is allowed.
+kubebuilder:validation:MinLength=1 +kubebuilder:validation:MaxLength=253 +kubebuilder:validation:Pattern=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$`
type Protocol ¶
type Protocol string
Protocol defines the protocol used for certain properties. Valid Protocol values are:
* HTTP * HTTPS * TCP
type Redirect ¶
type Redirect struct {
// Scheme is the scheme to be used in the value of the `Location` header in
// the response. When empty, the scheme of the request is used.
//
//
// +optional
// +kubebuilder:validation:Enum=http;https
Scheme *string `json:"scheme,omitempty"`
// Hostname is the hostname to be used in the value of the `Location`
// header in the response.
// When empty, the hostname in the `Host` header of the request is used.
//
// +optional
Hostname *PreciseHostname `json:"hostname,omitempty"`
// Path defines parameters used to modify the path of the incoming request.
// The modified path is then used to construct the `Location` header. When
// empty, the request path is used as-is.
//
// +optional
Path *HTTPPathModifier `json:"path,omitempty"`
// Port is the port to be used in the value of the `Location`
// header in the response.
//
// If no port is specified, the redirect port MUST be derived using the
// following rules:
//
// * If redirect scheme is not-empty, the redirect port MUST be the well-known
// port associated with the redirect scheme. Specifically "http" to port 80
// and "https" to port 443. If the redirect scheme doesn't have a
// well-known port, the listener port of the Gateway SHOULD be used.
// * If redirect scheme is empty, the redirect port MUST be the Gateway
// Listener port.
//
// Implementations SHOULD NOT add the port number in the 'Location'
// header in the following cases:
//
// * A Location header that uses HTTP (whether that is determined via
// the Listener protocol or the Scheme field) _and_ use port 80.
// * A Location header that uses HTTPS (whether that is determined via
// the Listener protocol or the Scheme field) _and_ use port 443.
//
// +optional
Port *PortNumber `json:"port,omitempty"`
// StatusCode is the HTTP status code to be used in response.
//
// Values may be added to this enum, implementations
// must ensure that unknown values won't cause a crash.
//
// +optional
// +kubebuilder:default=302
// +kubebuilder:validation:Enum=301;302;303;307;308
StatusCode *int `json:"statusCode,omitempty"`
}
Redirect defines a filter that redirects a request. This MUST NOT be used on the same rule that also has a URLRewriteFilter.
func (*Redirect) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Redirect.
func (*Redirect) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RewriteType ¶
type RewriteType string
RewriteType identifies the rewrite type
const ( // RequestHeaderModifier can be used to add or remove an HTTP // header from an HTTP request before it's sent to the upstream target. RequestHeaderModifier RewriteType = "RequestHeaderModifier" // ResponseHeaderModifier can be used to add or remove an HTTP // header from an HTTP response before it's sent to the client. ResponseHeaderModifier RewriteType = "ResponseHeaderModifier" // URLRewrite can be used to modify a request during forwarding. URLRewrite RewriteType = "URLRewrite" )
type RoutePolicy ¶
type RoutePolicy struct {
// Object's type metadata.
metav1.TypeMeta `json:",inline"`
// Object's metadata.
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the RoutePolicy specification.
Spec RoutePolicySpec `json:"spec,omitempty"`
// Status defines the current state of RoutePolicy.
//
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status RoutePolicyStatus `json:"status,omitempty"`
}
RoutePolicy is the schema for the RoutePolicy API.
func (*RoutePolicy) DeepCopy ¶
func (in *RoutePolicy) DeepCopy() *RoutePolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicy.
func (*RoutePolicy) DeepCopyInto ¶
func (in *RoutePolicy) DeepCopyInto(out *RoutePolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RoutePolicy) DeepCopyObject ¶
func (in *RoutePolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (RoutePolicy) GetNamespacedName ¶
func (r RoutePolicy) GetNamespacedName() types.NamespacedName
GetNamespacedName returns the policy's name
type RoutePolicyConditionReason ¶
type RoutePolicyConditionReason string
RoutePolicyConditionReason defines the set of reasons that explain why a particular RoutePolicy condition type is raised.
type RoutePolicyConditionType ¶
type RoutePolicyConditionType string
RoutePolicyConditionType is a type of condition associated with a RoutePolicy. This type should be used with the RoutePolicyStatus.Conditions field.
type RoutePolicyConfig ¶
type RoutePolicyConfig struct {
// Custom Timeouts
// Timeout for the target resource.
// +optional
RouteTimeouts *RouteTimeouts `json:"timeouts,omitempty"`
// SessionAffinity defines the schema for Session Affinity specification
// +optional
SessionAffinity *SessionAffinity `json:"sessionAffinity,omitempty"`
}
RoutePolicyConfig defines the schema for RoutePolicy specification. This allows the specification of the following attributes: * Timeouts * Session Affinity
func (*RoutePolicyConfig) DeepCopy ¶
func (in *RoutePolicyConfig) DeepCopy() *RoutePolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicyConfig.
func (*RoutePolicyConfig) DeepCopyInto ¶
func (in *RoutePolicyConfig) DeepCopyInto(out *RoutePolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RoutePolicyList ¶
type RoutePolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []RoutePolicy `json:"items"`
}
RoutePolicyList contains a list of RoutePolicy. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*RoutePolicyList) DeepCopy ¶
func (in *RoutePolicyList) DeepCopy() *RoutePolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicyList.
func (*RoutePolicyList) DeepCopyInto ¶
func (in *RoutePolicyList) DeepCopyInto(out *RoutePolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RoutePolicyList) DeepCopyObject ¶
func (in *RoutePolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RoutePolicySpec ¶
type RoutePolicySpec struct {
// TargetRef identifies an API object to apply policy to.
TargetRef CustomTargetRef `json:"targetRef"`
// Override defines policy configuration that should override policy
// configuration attached below the targeted resource in the hierarchy.
//
// Note: Override is currently not supported and result in a validation error.
// Support for Override will be added in a future release.
//
// +optional
Override *RoutePolicyConfig `json:"override,omitempty"`
// Default defines default policy configuration for the targeted resource.
//
// +optional
Default *RoutePolicyConfig `json:"default,omitempty"`
}
RoutePolicySpec defines the desired state of RoutePolicy.
func (*RoutePolicySpec) DeepCopy ¶
func (in *RoutePolicySpec) DeepCopy() *RoutePolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicySpec.
func (*RoutePolicySpec) DeepCopyInto ¶
func (in *RoutePolicySpec) DeepCopyInto(out *RoutePolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RoutePolicyStatus ¶
type RoutePolicyStatus struct {
// Conditions describe the current conditions of the RoutePolicy.
//
// Implementations should prefer to express RoutePolicy conditions
// using the `RoutePolicyConditionType` and `RoutePolicyConditionReason`
// constants so that operators and tools can converge on a common
// vocabulary to describe RoutePolicy state.
//
// +optional
// Known condition types are:
//
// * "Accepted"
//
// +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"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
RoutePolicyStatus defines the observed state of RoutePolicy.
func (*RoutePolicyStatus) DeepCopy ¶
func (in *RoutePolicyStatus) DeepCopy() *RoutePolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePolicyStatus.
func (*RoutePolicyStatus) DeepCopyInto ¶
func (in *RoutePolicyStatus) DeepCopyInto(out *RoutePolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteTimeouts ¶
type RouteTimeouts struct {
// RouteTimeout is the timeout for the route.
//
// +optional
RouteTimeout metav1.Duration `json:"routeTimeout,omitempty"`
}
RouteTimeouts defines the schema for Timeouts specification.
func (*RouteTimeouts) DeepCopy ¶
func (in *RouteTimeouts) DeepCopy() *RouteTimeouts
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTimeouts.
func (*RouteTimeouts) DeepCopyInto ¶
func (in *RouteTimeouts) DeepCopyInto(out *RouteTimeouts)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SessionAffinity ¶
type SessionAffinity struct {
// +kubebuilder:validation:Required
AffinityType AffinityType `json:"affinityType,omitempty"`
// +optional
CookieName string `json:"cookieName,omitempty"`
// +optional
CookieDuration metav1.Duration `json:"cookieDuration,omitempty"`
}
SessionAffinity defines the schema for Session Affinity specification.
func (*SessionAffinity) DeepCopy ¶
func (in *SessionAffinity) DeepCopy() *SessionAffinity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SessionAffinity.
func (*SessionAffinity) DeepCopyInto ¶
func (in *SessionAffinity) DeepCopyInto(out *SessionAffinity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SlowStartConfig ¶
type SlowStartConfig struct {
// The duration of the slow start window.
// +required
Window metav1.Duration `json:"window,omitempty"`
// The speed of traffic increase over the slow start window, must be greater than 0.0.
// Defaults to 1.0 if unspecified.
//
// +optional
// +kubebuilder:default=`1.0`
// +kubebuilder:validation:Pattern=`^([0-9]+([.][0-9]+)?|[.][0-9]+)$`
Aggression string `json:"aggression,omitempty"`
// The minimum or starting percentage of traffic to send to new endpoints.
// Defaults to 10% if unspecified.
//
// +optional
// +kubebuilder:default=10
// +kubebuilder:validation:Minimum=0
// +kubebuilder:validation:Maximum=100
StartWeightPercent uint32 `json:"startWeightPercent,omitempty"`
}
SlowStartConfig defines the configuration for slow start.
func (*SlowStartConfig) DeepCopy ¶
func (in *SlowStartConfig) DeepCopy() *SlowStartConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SlowStartConfig.
func (*SlowStartConfig) DeepCopyInto ¶
func (in *SlowStartConfig) DeepCopyInto(out *SlowStartConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StatusCodes ¶
type StatusCodes struct {
// Start defines the start of the range of status codes to use for HealthCheck checks.
// This is inclusive.
//
// +optional
Start int32 `json:"start,omitempty"`
// End defines the end of the range of status codes to use for HealthCheck checks.
// This is inclusive.
//
// +optional
End int32 `json:"end,omitempty"`
}
StatusCodes defines the HTTP status code matchers to use for HealthCheck checks.
func (*StatusCodes) DeepCopy ¶
func (in *StatusCodes) DeepCopy() *StatusCodes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatusCodes.
func (*StatusCodes) DeepCopyInto ¶
func (in *StatusCodes) DeepCopyInto(out *StatusCodes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetRefSpec ¶
type TargetRefSpec struct {
// TargetRef identifies an API object to apply policy to.
TargetRef CustomTargetRef `json:"targetRef"`
// Ports specifies the list of ports on the target where the policy is applied.
// +optional
Ports []BackendLoadBalancingPolicyPort `json:"ports,omitempty"`
}
TargetRefSpec defines the target reference and ports for the backend load balancing policy.
func (*TargetRefSpec) DeepCopy ¶
func (in *TargetRefSpec) DeepCopy() *TargetRefSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetRefSpec.
func (*TargetRefSpec) DeepCopyInto ¶
func (in *TargetRefSpec) DeepCopyInto(out *TargetRefSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type URLRewriteFilter ¶
type URLRewriteFilter struct {
// Hostname is the value to be used to replace the Host header value during
// forwarding.
// +optional
Hostname *PreciseHostname `json:"hostname,omitempty"`
// Path defines a path rewrite.
// +optional
Path *HTTPPathModifier `json:"path,omitempty"`
}
URLRewriteFilter defines a filter that modifies a request during forwarding. At most one of these filters may be used on a rule. This MUST NOT be used on the same rule having an sslRedirect.
func (*URLRewriteFilter) DeepCopy ¶
func (in *URLRewriteFilter) DeepCopy() *URLRewriteFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLRewriteFilter.
func (*URLRewriteFilter) DeepCopyInto ¶
func (in *URLRewriteFilter) DeepCopyInto(out *URLRewriteFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebApplicationFirewallConfig ¶
type WebApplicationFirewallConfig struct {
ID string `json:"id"`
}
WebApplicationFirewallConfig defines the web application firewall policy configuration for the Application Gateway for Containers Security Policy child resource.
func (*WebApplicationFirewallConfig) DeepCopy ¶
func (in *WebApplicationFirewallConfig) DeepCopy() *WebApplicationFirewallConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebApplicationFirewallConfig.
func (*WebApplicationFirewallConfig) DeepCopyInto ¶
func (in *WebApplicationFirewallConfig) DeepCopyInto(out *WebApplicationFirewallConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebApplicationFirewallPolicy ¶
type WebApplicationFirewallPolicy struct {
// Object's type metadata.
metav1.TypeMeta `json:",inline"`
// Object's metadata.
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the specifications for Application Gateway for Containers Security Policy child resource.
Spec WebApplicationFirewallPolicySpec `json:"spec,omitempty"`
// Status defines the current state of Application Gateway for Containers Security Policy child resource.
//
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status WebApplicationFirewallPolicyStatus `json:"status,omitempty"`
}
WebApplicationFirewallPolicy is the schema for the Application Gateway for Containers Security Policy child resource.
func (*WebApplicationFirewallPolicy) DeepCopy ¶
func (in *WebApplicationFirewallPolicy) DeepCopy() *WebApplicationFirewallPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebApplicationFirewallPolicy.
func (*WebApplicationFirewallPolicy) DeepCopyInto ¶
func (in *WebApplicationFirewallPolicy) DeepCopyInto(out *WebApplicationFirewallPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WebApplicationFirewallPolicy) DeepCopyObject ¶
func (in *WebApplicationFirewallPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (WebApplicationFirewallPolicy) GetNamespacedName ¶
func (f WebApplicationFirewallPolicy) GetNamespacedName() types.NamespacedName
GetNamespacedName returns the policy's name
func (WebApplicationFirewallPolicy) GetWAFPolicyID ¶
func (f WebApplicationFirewallPolicy) GetWAFPolicyID() (string, bool)
GetWAFPolicyID returns the ID of the WebApplicationFirewallPolicy
type WebApplicationFirewallPolicyList ¶
type WebApplicationFirewallPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []WebApplicationFirewallPolicy `json:"items"`
}
WebApplicationFirewallPolicyList lists the WebApplicationFirewallPolicy objects. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*WebApplicationFirewallPolicyList) DeepCopy ¶
func (in *WebApplicationFirewallPolicyList) DeepCopy() *WebApplicationFirewallPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebApplicationFirewallPolicyList.
func (*WebApplicationFirewallPolicyList) DeepCopyInto ¶
func (in *WebApplicationFirewallPolicyList) DeepCopyInto(out *WebApplicationFirewallPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WebApplicationFirewallPolicyList) DeepCopyObject ¶
func (in *WebApplicationFirewallPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WebApplicationFirewallPolicySpec ¶
type WebApplicationFirewallPolicySpec struct {
// TargetRef identifies an API object to apply policy to.
TargetRef CustomTargetRef `json:"targetRef"`
// WebApplicationFirewallPolicy is used to specify a WebApplicationPolicy resource
WebApplicationFirewallPolicy *WebApplicationFirewallConfig `json:"webApplicationFirewall,omitempty"`
}
WebApplicationFirewallPolicySpec defines the desired state of WebApplicationFirewallPolicy.
func (*WebApplicationFirewallPolicySpec) DeepCopy ¶
func (in *WebApplicationFirewallPolicySpec) DeepCopy() *WebApplicationFirewallPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebApplicationFirewallPolicySpec.
func (*WebApplicationFirewallPolicySpec) DeepCopyInto ¶
func (in *WebApplicationFirewallPolicySpec) DeepCopyInto(out *WebApplicationFirewallPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebApplicationFirewallPolicyStatus ¶
type WebApplicationFirewallPolicyStatus struct {
// +optional
// Known condition types are:
//
// * "Accepted"
// * "Deployment"
// * "ResolvedRefs"
// * "Programmed"
//
// +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"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
WebApplicationFirewallPolicyStatus defines the observed state of Application Gateway for Containers Security Policy child resource.
func (*WebApplicationFirewallPolicyStatus) DeepCopy ¶
func (in *WebApplicationFirewallPolicyStatus) DeepCopy() *WebApplicationFirewallPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebApplicationFirewallPolicyStatus.
func (*WebApplicationFirewallPolicyStatus) DeepCopyInto ¶
func (in *WebApplicationFirewallPolicyStatus) DeepCopyInto(out *WebApplicationFirewallPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.