Documentation
¶
Overview ¶
+kubebuilder:object:generate=true +groupName=application-networking.k8s.aws
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type AccessLogPolicy
- func (in *AccessLogPolicy) DeepCopy() *AccessLogPolicy
- func (in *AccessLogPolicy) DeepCopyInto(out *AccessLogPolicy)
- func (in *AccessLogPolicy) DeepCopyObject() runtime.Object
- func (p *AccessLogPolicy) GetNamespacedName() types.NamespacedName
- func (p *AccessLogPolicy) GetStatusConditions() []metav1.Condition
- func (p *AccessLogPolicy) GetTargetRef() *gwv1alpha2.NamespacedPolicyTargetReference
- func (p *AccessLogPolicy) SetStatusConditions(conditions []metav1.Condition)
- type AccessLogPolicyList
- type AccessLogPolicySpec
- type AccessLogPolicyStatus
- type ClusterStatus
- type ExportedPort
- type HealthCheckConfig
- type HealthCheckProtocol
- type HealthCheckProtocolVersion
- type IAMAuthPolicy
- func (in *IAMAuthPolicy) DeepCopy() *IAMAuthPolicy
- func (in *IAMAuthPolicy) DeepCopyInto(out *IAMAuthPolicy)
- func (in *IAMAuthPolicy) DeepCopyObject() runtime.Object
- func (p *IAMAuthPolicy) GetStatusConditions() *[]metav1.Condition
- func (p *IAMAuthPolicy) GetTargetRef() *gwv1alpha2.NamespacedPolicyTargetReference
- type IAMAuthPolicyList
- type IAMAuthPolicySpec
- type IAMAuthPolicyStatus
- type SecurityGroupId
- type ServiceExport
- type ServiceExportCondition
- type ServiceExportConditionType
- type ServiceExportList
- type ServiceExportSpec
- type ServiceExportStatus
- type ServiceImport
- type ServiceImportList
- type ServiceImportSpec
- type ServiceImportStatus
- type ServiceImportType
- type ServicePort
- type TargetGroupPolicy
- func (in *TargetGroupPolicy) DeepCopy() *TargetGroupPolicy
- func (in *TargetGroupPolicy) DeepCopyInto(out *TargetGroupPolicy)
- func (in *TargetGroupPolicy) DeepCopyObject() runtime.Object
- func (p *TargetGroupPolicy) GetStatusConditions() *[]metav1.Condition
- func (p *TargetGroupPolicy) GetTargetRef() *gwv1alpha2.NamespacedPolicyTargetReference
- type TargetGroupPolicyList
- type TargetGroupPolicySpec
- type TargetGroupPolicyStatus
- type VpcAssociationPolicy
- func (in *VpcAssociationPolicy) DeepCopy() *VpcAssociationPolicy
- func (in *VpcAssociationPolicy) DeepCopyInto(out *VpcAssociationPolicy)
- func (in *VpcAssociationPolicy) DeepCopyObject() runtime.Object
- func (p *VpcAssociationPolicy) GetStatusConditions() *[]metav1.Condition
- func (p *VpcAssociationPolicy) GetTargetRef() *gwv1alpha2.NamespacedPolicyTargetReference
- type VpcAssociationPolicyList
- type VpcAssociationPolicySpec
- type VpcAssociationPolicyStatus
Constants ¶
const (
AccessLogSubscriptionAnnotationKey = k8s.AnnotationPrefix + "accessLogSubscription"
)
const GroupName = "application-networking.k8s.aws"
GroupName specifies the group name used to register the objects.
const (
IAMAuthPolicyKind = "IAMAuthPolicy"
)
const (
TargetGroupPolicyKind = "TargetGroupPolicy"
)
const (
VpcAssociationPolicyKind = "VpcAssociationPolicy"
)
Variables ¶
var ( // localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes. SchemeBuilder runtime.SchemeBuilder // Deprecated: use Install instead AddToScheme = localSchemeBuilder.AddToScheme Install = localSchemeBuilder.AddToScheme )
var GroupVersion = v1.GroupVersion{Group: GroupName, Version: "v1alpha1"}
GroupVersion specifies the group and the version used to register the objects.
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
SchemeGroupVersion is group version used to register these objects Deprecated: use GroupVersion instead.
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type AccessLogPolicy ¶ added in v0.0.18
type AccessLogPolicy struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AccessLogPolicySpec `json:"spec"`
// Status defines the current state of AccessLogPolicy.
//
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"NotReconciled", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status AccessLogPolicyStatus `json:"status,omitempty"`
}
+kubebuilder:resource:categories=gateway-api,shortName=alp +kubebuilder:storageversion +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp` +kubebuilder:subresource:status
func (*AccessLogPolicy) DeepCopy ¶ added in v0.0.18
func (in *AccessLogPolicy) DeepCopy() *AccessLogPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessLogPolicy.
func (*AccessLogPolicy) DeepCopyInto ¶ added in v0.0.18
func (in *AccessLogPolicy) DeepCopyInto(out *AccessLogPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AccessLogPolicy) DeepCopyObject ¶ added in v0.0.18
func (in *AccessLogPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AccessLogPolicy) GetNamespacedName ¶ added in v0.0.18
func (p *AccessLogPolicy) GetNamespacedName() types.NamespacedName
func (*AccessLogPolicy) GetStatusConditions ¶ added in v0.0.18
func (p *AccessLogPolicy) GetStatusConditions() []metav1.Condition
func (*AccessLogPolicy) GetTargetRef ¶ added in v0.0.18
func (p *AccessLogPolicy) GetTargetRef() *gwv1alpha2.NamespacedPolicyTargetReference
func (*AccessLogPolicy) SetStatusConditions ¶ added in v0.0.18
func (p *AccessLogPolicy) SetStatusConditions(conditions []metav1.Condition)
type AccessLogPolicyList ¶ added in v0.0.18
type AccessLogPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AccessLogPolicy `json:"items"`
}
+kubebuilder:object:root=true AccessLogPolicyList contains a list of AccessLogPolicies.
func (*AccessLogPolicyList) DeepCopy ¶ added in v0.0.18
func (in *AccessLogPolicyList) DeepCopy() *AccessLogPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessLogPolicyList.
func (*AccessLogPolicyList) DeepCopyInto ¶ added in v0.0.18
func (in *AccessLogPolicyList) DeepCopyInto(out *AccessLogPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AccessLogPolicyList) DeepCopyObject ¶ added in v0.0.18
func (in *AccessLogPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AccessLogPolicyList) GetItems ¶ added in v0.0.18
func (pl *AccessLogPolicyList) GetItems() []core.Policy
type AccessLogPolicySpec ¶ added in v0.0.18
type AccessLogPolicySpec struct {
// The Amazon Resource Name (ARN) of the destination that will store access logs.
// Supported values are S3 Bucket, CloudWatch Log Group, and Firehose Delivery Stream ARNs.
//
// Changes to this value results in replacement of the VPC Lattice Access Log Subscription.
// +kubebuilder:validation:Pattern=`^arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:([^/].*)?`
DestinationArn *string `json:"destinationArn"`
// TargetRef points to the Kubernetes Gateway, HTTPRoute, or GRPCRoute resource that will have this policy attached.
//
// This field is following the guidelines of Kubernetes Gateway API policy attachment.
TargetRef *gwv1alpha2.NamespacedPolicyTargetReference `json:"targetRef"`
}
AccessLogPolicySpec defines the desired state of AccessLogPolicy.
func (*AccessLogPolicySpec) DeepCopy ¶ added in v0.0.18
func (in *AccessLogPolicySpec) DeepCopy() *AccessLogPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessLogPolicySpec.
func (*AccessLogPolicySpec) DeepCopyInto ¶ added in v0.0.18
func (in *AccessLogPolicySpec) DeepCopyInto(out *AccessLogPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AccessLogPolicyStatus ¶ added in v0.0.18
type AccessLogPolicyStatus struct {
// Conditions describe the current conditions of the AccessLogPolicy.
//
// Implementations should prefer to express Policy conditions
// using the `PolicyConditionType` and `PolicyConditionReason`
// constants so that operators and tools can converge on a common
// vocabulary to describe AccessLogPolicy state.
//
// 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"},{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
AccessLogPolicyStatus defines the observed state of AccessLogPolicy.
func (*AccessLogPolicyStatus) DeepCopy ¶ added in v0.0.18
func (in *AccessLogPolicyStatus) DeepCopy() *AccessLogPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessLogPolicyStatus.
func (*AccessLogPolicyStatus) DeepCopyInto ¶ added in v0.0.18
func (in *AccessLogPolicyStatus) DeepCopyInto(out *AccessLogPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶ added in v0.0.18
type ClusterStatus struct {
// cluster is the name of the exporting cluster. Must be a valid RFC-1123 DNS
// label.
Cluster string `json:"cluster"`
}
ClusterStatus contains service configuration mapped to a specific source cluster
func (*ClusterStatus) DeepCopy ¶ added in v0.0.18
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶ added in v0.0.18
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExportedPort ¶ added in v1.1.2
type ExportedPort struct {
// port is the port number to export
Port int32 `json:"port"`
// routeType is the type of route this port should be used with
// Valid values are "HTTP", "GRPC", "TLS"
// +kubebuilder:validation:Enum=HTTP;GRPC;TLS
RouteType string `json:"routeType"`
}
ExportedPort defines a port to be exported and the route type it should be used with
func (*ExportedPort) DeepCopy ¶ added in v1.1.2
func (in *ExportedPort) DeepCopy() *ExportedPort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExportedPort.
func (*ExportedPort) DeepCopyInto ¶ added in v1.1.2
func (in *ExportedPort) DeepCopyInto(out *ExportedPort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheckConfig ¶
type HealthCheckConfig struct {
// Indicates whether health checking is enabled.
// +optional
Enabled *bool `json:"enabled,omitempty"`
// The approximate amount of time, in seconds, between health checks of an individual target.
// +optional
// +kubebuilder:validation:Minimum=5
// +kubebuilder:validation:Maximum=300
IntervalSeconds *int64 `json:"intervalSeconds,omitempty"`
// The amount of time, in seconds, to wait before reporting a target as unhealthy.
// +optional
// +kubebuilder:validation:Minimum=1
// +kubebuilder:validation:Maximum=120
TimeoutSeconds *int64 `json:"timeoutSeconds,omitempty"`
// The number of consecutive successful health checks required before considering an unhealthy target healthy.
// +optional
// +kubebuilder:validation:Minimum=2
// +kubebuilder:validation:Maximum=10
HealthyThresholdCount *int64 `json:"healthyThresholdCount,omitempty"`
// The number of consecutive failed health checks required before considering a target unhealthy.
// +optional
// +kubebuilder:validation:Minimum=2
// +kubebuilder:validation:Maximum=10
UnhealthyThresholdCount *int64 `json:"unhealthyThresholdCount,omitempty"`
// A regular expression to match HTTP status codes when checking for successful response from a target.
// +optional
StatusMatch *string `json:"statusMatch,omitempty"`
// The destination for health checks on the targets.
// +optional
Path *string `json:"path,omitempty"`
// The port used when performing health checks on targets. If not specified, health check defaults to the
// port that a target receives traffic on.
// +kubebuilder:validation:Minimum=1
// +kubebuilder:validation:Maximum=65535
Port *int64 `json:"port,omitempty"`
// The protocol used when performing health checks on targets.
// +optional
Protocol *HealthCheckProtocol `json:"protocol,omitempty"`
// The protocol version used when performing health checks on targets.
// +optional
ProtocolVersion *HealthCheckProtocolVersion `json:"protocolVersion,omitempty"`
}
HealthCheckConfig defines health check configuration for given VPC Lattice target group. For the detailed explanation and supported values, please refer to [VPC Lattice health checks documentation](https://docs.aws.amazon.com/vpc-lattice/latest/ug/target-group-health-checks.html).
func (*HealthCheckConfig) DeepCopy ¶
func (in *HealthCheckConfig) DeepCopy() *HealthCheckConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheckConfig.
func (*HealthCheckConfig) DeepCopyInto ¶
func (in *HealthCheckConfig) DeepCopyInto(out *HealthCheckConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheckProtocol ¶
type HealthCheckProtocol string
+kubebuilder:validation:Enum=HTTP;HTTPS
const ( HealthCheckProtocolHTTP HealthCheckProtocol = "HTTP" HealthCheckProtocolHTTPS HealthCheckProtocol = "HTTPS" )
type HealthCheckProtocolVersion ¶
type HealthCheckProtocolVersion string
+kubebuilder:validation:Enum=HTTP1;HTTP2
const ( HealthCheckProtocolVersionHTTP1 HealthCheckProtocolVersion = "HTTP1" HealthCheckProtocolVersionHTTP2 HealthCheckProtocolVersion = "HTTP2" )
type IAMAuthPolicy ¶ added in v0.0.18
type IAMAuthPolicy struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec IAMAuthPolicySpec `json:"spec"`
// Status defines the current state of IAMAuthPolicy.
//
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"NotReconciled", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status IAMAuthPolicyStatus `json:"status,omitempty"`
}
+kubebuilder:resource:categories=gateway-api,shortName=iap +kubebuilder:storageversion +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp` +kubebuilder:subresource:status
func (*IAMAuthPolicy) DeepCopy ¶ added in v0.0.18
func (in *IAMAuthPolicy) DeepCopy() *IAMAuthPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAMAuthPolicy.
func (*IAMAuthPolicy) DeepCopyInto ¶ added in v0.0.18
func (in *IAMAuthPolicy) DeepCopyInto(out *IAMAuthPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IAMAuthPolicy) DeepCopyObject ¶ added in v0.0.18
func (in *IAMAuthPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*IAMAuthPolicy) GetStatusConditions ¶ added in v0.0.18
func (p *IAMAuthPolicy) GetStatusConditions() *[]metav1.Condition
func (*IAMAuthPolicy) GetTargetRef ¶ added in v0.0.18
func (p *IAMAuthPolicy) GetTargetRef() *gwv1alpha2.NamespacedPolicyTargetReference
type IAMAuthPolicyList ¶ added in v0.0.18
type IAMAuthPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []IAMAuthPolicy `json:"items"`
}
+kubebuilder:object:root=true IAMAuthPolicyList contains a list of IAMAuthPolicies.
func (*IAMAuthPolicyList) DeepCopy ¶ added in v0.0.18
func (in *IAMAuthPolicyList) DeepCopy() *IAMAuthPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAMAuthPolicyList.
func (*IAMAuthPolicyList) DeepCopyInto ¶ added in v0.0.18
func (in *IAMAuthPolicyList) DeepCopyInto(out *IAMAuthPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IAMAuthPolicyList) DeepCopyObject ¶ added in v0.0.18
func (in *IAMAuthPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*IAMAuthPolicyList) GetItems ¶ added in v0.0.18
func (pl *IAMAuthPolicyList) GetItems() []*IAMAuthPolicy
type IAMAuthPolicySpec ¶ added in v0.0.18
type IAMAuthPolicySpec struct {
// IAM auth policy content. It is a JSON string that uses the same syntax as AWS IAM policies. Please check the VPC Lattice documentation to get [the common elements in an auth policy](https://docs.aws.amazon.com/vpc-lattice/latest/ug/auth-policies.html#auth-policies-common-elements)
Policy string `json:"policy"`
// TargetRef points to the Kubernetes Gateway, HTTPRoute, or GRPCRoute resource that will have this policy attached.
//
// This field is following the guidelines of Kubernetes Gateway API policy attachment.
TargetRef *gwv1alpha2.NamespacedPolicyTargetReference `json:"targetRef"`
}
IAMAuthPolicySpec defines the desired state of IAMAuthPolicy. When the controller handles IAMAuthPolicy creation, if the targetRef k8s and VPC Lattice resource exists, the controller will change the auth_type of that VPC Lattice resource to AWS_IAM and attach this policy. When the controller handles IAMAuthPolicy deletion, if the targetRef k8s and VPC Lattice resource exists, the controller will change the auth_type of that VPC Lattice resource to NONE and detach this policy.
func (*IAMAuthPolicySpec) DeepCopy ¶ added in v0.0.18
func (in *IAMAuthPolicySpec) DeepCopy() *IAMAuthPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAMAuthPolicySpec.
func (*IAMAuthPolicySpec) DeepCopyInto ¶ added in v0.0.18
func (in *IAMAuthPolicySpec) DeepCopyInto(out *IAMAuthPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IAMAuthPolicyStatus ¶ added in v0.0.18
type IAMAuthPolicyStatus struct {
// Conditions describe the current conditions of the IAMAuthPolicy.
//
// Implementations should prefer to express Policy conditions
// using the `PolicyConditionType` and `PolicyConditionReason`
// constants so that operators and tools can converge on a common
// vocabulary to describe IAMAuthPolicy state.
//
// 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"},{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
IAMAuthPolicyStatus defines the observed state of IAMAuthPolicy.
func (*IAMAuthPolicyStatus) DeepCopy ¶ added in v0.0.18
func (in *IAMAuthPolicyStatus) DeepCopy() *IAMAuthPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAMAuthPolicyStatus.
func (*IAMAuthPolicyStatus) DeepCopyInto ¶ added in v0.0.18
func (in *IAMAuthPolicyStatus) DeepCopyInto(out *IAMAuthPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupId ¶ added in v0.0.17
type SecurityGroupId string
+kubebuilder:validation:MaxLength=32 +kubebuilder:validation:MinLength=3 +kubebuilder:validation:Pattern=`^sg-[0-9a-z]+$`
type ServiceExport ¶ added in v0.0.18
type ServiceExport struct {
apimachineryv1.TypeMeta `json:",inline"`
// +optional
apimachineryv1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state of ServiceExport
// +optional
Spec ServiceExportSpec `json:"spec,omitempty"`
// status describes the current state of an exported service.
// Service configuration comes from the Service that had the same
// name and namespace as this ServiceExport.
// Populated by the multi-cluster service implementation's controller.
// +optional
Status ServiceExportStatus `json:"status,omitempty"`
}
ServiceExport declares that the Service with the same name and namespace as this export should be consumable from other clusters.
func (*ServiceExport) DeepCopy ¶ added in v0.0.18
func (in *ServiceExport) DeepCopy() *ServiceExport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExport.
func (*ServiceExport) DeepCopyInto ¶ added in v0.0.18
func (in *ServiceExport) DeepCopyInto(out *ServiceExport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceExport) DeepCopyObject ¶ added in v0.0.18
func (in *ServiceExport) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceExportCondition ¶ added in v0.0.18
type ServiceExportCondition struct {
Type ServiceExportConditionType `json:"type"`
// Status is one of {"True", "False", "Unknown"}
// +kubebuilder:validation:Enum=True;False;Unknown
Status corev1.ConditionStatus `json:"status"`
// +optional
LastTransitionTime *apimachineryv1.Time `json:"lastTransitionTime,omitempty"`
// +optional
Reason *string `json:"reason,omitempty"`
// +optional
Message *string `json:"message,omitempty"`
}
ServiceExportCondition contains details for the current condition of this service export.
Once [KEP-1623](https://github.com/kubernetes/enhancements/tree/master/keps/sig-api-machinery/1623-standardize-conditions) is implemented, this will be replaced by metav1.Condition.
func (*ServiceExportCondition) DeepCopy ¶ added in v0.0.18
func (in *ServiceExportCondition) DeepCopy() *ServiceExportCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExportCondition.
func (*ServiceExportCondition) DeepCopyInto ¶ added in v0.0.18
func (in *ServiceExportCondition) DeepCopyInto(out *ServiceExportCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceExportConditionType ¶ added in v0.0.18
type ServiceExportConditionType string
ServiceExportConditionType identifies a specific condition.
const ( // ServiceExportValid means that the service referenced by this // service export has been recognized as valid by a controller. // This will be false if the service is found to be unexportable // (ExternalName, not found). ServiceExportValid ServiceExportConditionType = "Valid" // ServiceExportConflict means that there is a conflict between two // exports for the same Service. When "True", the condition message // should contain enough information to diagnose the conflict: // field(s) under contention, which cluster won, and why. // Users should not expect detailed per-cluster information in the // conflict message. ServiceExportConflict ServiceExportConditionType = "Conflict" )
type ServiceExportList ¶ added in v0.0.18
type ServiceExportList struct {
apimachineryv1.TypeMeta `json:",inline"`
// Standard list metadata.
// +optional
apimachineryv1.ListMeta `json:"metadata,omitempty"`
// List of endpoint slices
// +listType=set
Items []ServiceExport `json:"items"`
}
ServiceExportList represents a list of endpoint slices
func (*ServiceExportList) DeepCopy ¶ added in v0.0.18
func (in *ServiceExportList) DeepCopy() *ServiceExportList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExportList.
func (*ServiceExportList) DeepCopyInto ¶ added in v0.0.18
func (in *ServiceExportList) DeepCopyInto(out *ServiceExportList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceExportList) DeepCopyObject ¶ added in v0.0.18
func (in *ServiceExportList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceExportSpec ¶ added in v1.1.2
type ServiceExportSpec struct {
// exportedPorts defines which ports of the service should be exported and what route types they should be used with.
// If not specified, the controller will use the port from the annotation "application-networking.k8s.aws/port"
// and create HTTP target groups for backward compatibility.
// +optional
ExportedPorts []ExportedPort `json:"exportedPorts,omitempty"`
}
ServiceExportSpec defines the desired state of ServiceExport
func (*ServiceExportSpec) DeepCopy ¶ added in v1.1.2
func (in *ServiceExportSpec) DeepCopy() *ServiceExportSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExportSpec.
func (*ServiceExportSpec) DeepCopyInto ¶ added in v1.1.2
func (in *ServiceExportSpec) DeepCopyInto(out *ServiceExportSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceExportStatus ¶ added in v0.0.18
type ServiceExportStatus struct {
// +optional
// +patchStrategy=merge
// +patchMergeKey=type
// +listType=map
// +listMapKey=type
Conditions []ServiceExportCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
}
ServiceExportStatus contains the current status of an export.
func (*ServiceExportStatus) DeepCopy ¶ added in v0.0.18
func (in *ServiceExportStatus) DeepCopy() *ServiceExportStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExportStatus.
func (*ServiceExportStatus) DeepCopyInto ¶ added in v0.0.18
func (in *ServiceExportStatus) DeepCopyInto(out *ServiceExportStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceImport ¶ added in v0.0.18
type ServiceImport struct {
apimachineryv1.TypeMeta `json:",inline"`
// +optional
apimachineryv1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the behavior of a ServiceImport.
// +optional
Spec ServiceImportSpec `json:"spec,omitempty"`
// status contains information about the exported services that form
// the multi-cluster service referenced by this ServiceImport.
// +optional
Status ServiceImportStatus `json:"status,omitempty"`
}
ServiceImport describes a service imported from clusters in a ClusterSet.
func (*ServiceImport) DeepCopy ¶ added in v0.0.18
func (in *ServiceImport) DeepCopy() *ServiceImport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceImport.
func (*ServiceImport) DeepCopyInto ¶ added in v0.0.18
func (in *ServiceImport) DeepCopyInto(out *ServiceImport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceImport) DeepCopyObject ¶ added in v0.0.18
func (in *ServiceImport) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceImportList ¶ added in v0.0.18
type ServiceImportList struct {
apimachineryv1.TypeMeta `json:",inline"`
// Standard list metadata.
// +optional
apimachineryv1.ListMeta `json:"metadata,omitempty"`
// List of endpoint slices
// +listType=set
Items []ServiceImport `json:"items"`
}
ServiceImportList represents a list of endpoint slices
func (*ServiceImportList) DeepCopy ¶ added in v0.0.18
func (in *ServiceImportList) DeepCopy() *ServiceImportList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceImportList.
func (*ServiceImportList) DeepCopyInto ¶ added in v0.0.18
func (in *ServiceImportList) DeepCopyInto(out *ServiceImportList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceImportList) DeepCopyObject ¶ added in v0.0.18
func (in *ServiceImportList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceImportSpec ¶ added in v0.0.18
type ServiceImportSpec struct {
// +listType=atomic
Ports []ServicePort `json:"ports"`
// ip will be used as the VIP for this service when type is ClusterSetIP.
// +kubebuilder:validation:MaxItems:=1
// +optional
IPs []string `json:"ips,omitempty"`
// type defines the type of this service.
// Must be ClusterSetIP or Headless.
// +kubebuilder:validation:Enum=ClusterSetIP;Headless
Type ServiceImportType `json:"type"`
// Supports "ClientIP" and "None". Used to maintain session affinity.
// Enable client IP based session affinity.
// Must be ClientIP or None.
// Defaults to None.
// Ignored when type is Headless
// More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
// +optional
SessionAffinity corev1.ServiceAffinity `json:"sessionAffinity,omitempty"`
// sessionAffinityConfig contains session affinity configuration.
// +optional
SessionAffinityConfig *corev1.SessionAffinityConfig `json:"sessionAffinityConfig,omitempty"`
}
ServiceImportSpec describes an imported service and the information necessary to consume it.
func (*ServiceImportSpec) DeepCopy ¶ added in v0.0.18
func (in *ServiceImportSpec) DeepCopy() *ServiceImportSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceImportSpec.
func (*ServiceImportSpec) DeepCopyInto ¶ added in v0.0.18
func (in *ServiceImportSpec) DeepCopyInto(out *ServiceImportSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceImportStatus ¶ added in v0.0.18
type ServiceImportStatus struct {
// clusters is the list of exporting clusters from which this service
// was derived.
// +optional
// +patchStrategy=merge
// +patchMergeKey=cluster
// +listType=map
// +listMapKey=cluster
Clusters []ClusterStatus `json:"clusters,omitempty"`
}
ServiceImportStatus describes derived state of an imported service.
func (*ServiceImportStatus) DeepCopy ¶ added in v0.0.18
func (in *ServiceImportStatus) DeepCopy() *ServiceImportStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceImportStatus.
func (*ServiceImportStatus) DeepCopyInto ¶ added in v0.0.18
func (in *ServiceImportStatus) DeepCopyInto(out *ServiceImportStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceImportType ¶ added in v0.0.18
type ServiceImportType string
ServiceImportType designates the type of a ServiceImport
const ( // ClusterSetIP are only accessible via the ClusterSet IP. ClusterSetIP ServiceImportType = "ClusterSetIP" // Headless services allow backend pods to be addressed directly. Headless ServiceImportType = "Headless" )
type ServicePort ¶ added in v0.0.18
type ServicePort struct {
// The name of this port within the service. This must be a DNS_LABEL.
// All ports within a ServiceSpec must have unique names. When considering
// the endpoints for a Service, this must match the 'name' field in the
// EndpointPort.
// Optional if only one ServicePort is defined on this service.
// +optional
Name string `json:"name,omitempty"`
// The IP protocol for this port. Supports "TCP", "UDP", and "SCTP".
// Default is TCP.
// +optional
Protocol corev1.Protocol `json:"protocol,omitempty"`
// The application protocol for this port.
// This field follows standard Kubernetes label syntax.
// Un-prefixed names are reserved for IANA standard service names (as per
// RFC-6335 and http://www.iana.org/assignments/service-names).
// Non-standard protocols should use prefixed names such as
// mycompany.com/my-custom-protocol.
// Field can be enabled with ServiceAppProtocol feature gate.
// +optional
AppProtocol *string `json:"appProtocol,omitempty"`
// The port that will be exposed by this service.
Port int32 `json:"port"`
}
ServicePort represents the port on which the service is exposed
func (*ServicePort) DeepCopy ¶ added in v0.0.18
func (in *ServicePort) DeepCopy() *ServicePort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePort.
func (*ServicePort) DeepCopyInto ¶ added in v0.0.18
func (in *ServicePort) DeepCopyInto(out *ServicePort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroupPolicy ¶
type TargetGroupPolicy struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec TargetGroupPolicySpec `json:"spec"`
// Status defines the current state of TargetGroupPolicy.
//
// +kubebuilder:default={conditions: {{type: "Accepted", status: "Unknown", reason:"NotReconciled", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
Status TargetGroupPolicyStatus `json:"status,omitempty"`
}
+kubebuilder:resource:categories=gateway-api,shortName=tgp +kubebuilder:storageversion +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp` +kubebuilder:subresource:status
func (*TargetGroupPolicy) DeepCopy ¶
func (in *TargetGroupPolicy) DeepCopy() *TargetGroupPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupPolicy.
func (*TargetGroupPolicy) DeepCopyInto ¶
func (in *TargetGroupPolicy) DeepCopyInto(out *TargetGroupPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TargetGroupPolicy) DeepCopyObject ¶
func (in *TargetGroupPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*TargetGroupPolicy) GetStatusConditions ¶ added in v0.0.18
func (p *TargetGroupPolicy) GetStatusConditions() *[]metav1.Condition
func (*TargetGroupPolicy) GetTargetRef ¶ added in v0.0.17
func (p *TargetGroupPolicy) GetTargetRef() *gwv1alpha2.NamespacedPolicyTargetReference
type TargetGroupPolicyList ¶
type TargetGroupPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []TargetGroupPolicy `json:"items"`
}
+kubebuilder:object:root=true TargetGroupPolicyList contains a list of TargetGroupPolicies.
func (*TargetGroupPolicyList) DeepCopy ¶
func (in *TargetGroupPolicyList) DeepCopy() *TargetGroupPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupPolicyList.
func (*TargetGroupPolicyList) DeepCopyInto ¶
func (in *TargetGroupPolicyList) DeepCopyInto(out *TargetGroupPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TargetGroupPolicyList) DeepCopyObject ¶
func (in *TargetGroupPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*TargetGroupPolicyList) GetItems ¶ added in v0.0.17
func (pl *TargetGroupPolicyList) GetItems() []*TargetGroupPolicy
type TargetGroupPolicySpec ¶
type TargetGroupPolicySpec struct {
// The protocol to use for routing traffic to the targets. Supported values are HTTP (default), HTTPS and TCP.
//
// Changes to this value results in a replacement of VPC Lattice target group.
// +optional
Protocol *string `json:"protocol,omitempty"`
// The protocol version to use. Supported values are HTTP1 (default) and HTTP2.
// When a policy Protocol is TCP, you should not set this field. Otherwise, the whole TargetGroupPolicy will not take effect.
// When a policy is behind GRPCRoute, this field value will be ignored as GRPC is only supported through HTTP/2.
//
// Changes to this value results in a replacement of VPC Lattice target group.
// +optional
ProtocolVersion *string `json:"protocolVersion,omitempty"`
// TargetRef points to the kubernetes Service resource that will have this policy attached.
//
// This field is following the guidelines of Kubernetes Gateway API policy attachment.
TargetRef *gwv1alpha2.NamespacedPolicyTargetReference `json:"targetRef"`
// The health check configuration.
//
// Changes to this value will update VPC Lattice resource in place.
// +optional
HealthCheck *HealthCheckConfig `json:"healthCheck,omitempty"`
}
TargetGroupPolicySpec defines the desired state of TargetGroupPolicy.
func (*TargetGroupPolicySpec) DeepCopy ¶
func (in *TargetGroupPolicySpec) DeepCopy() *TargetGroupPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupPolicySpec.
func (*TargetGroupPolicySpec) DeepCopyInto ¶
func (in *TargetGroupPolicySpec) DeepCopyInto(out *TargetGroupPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroupPolicyStatus ¶ added in v0.0.18
type TargetGroupPolicyStatus struct {
// Conditions describe the current conditions of the TargetGroup.
//
// Implementations should prefer to express Policy conditions
// using the `PolicyConditionType` and `PolicyConditionReason`
// constants so that operators and tools can converge on a common
// vocabulary to describe TargetGroup state.
//
// 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"},{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
TargetGroupPolicyStatus defines the observed state of TargetGroup.
func (*TargetGroupPolicyStatus) DeepCopy ¶ added in v0.0.18
func (in *TargetGroupPolicyStatus) DeepCopy() *TargetGroupPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupPolicyStatus.
func (*TargetGroupPolicyStatus) DeepCopyInto ¶ added in v0.0.18
func (in *TargetGroupPolicyStatus) DeepCopyInto(out *TargetGroupPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VpcAssociationPolicy ¶ added in v0.0.17
type VpcAssociationPolicy struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec VpcAssociationPolicySpec `json:"spec"`
Status VpcAssociationPolicyStatus `json:"status,omitempty"`
}
+kubebuilder:resource:categories=gateway-api,shortName=vap +kubebuilder:storageversion +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp` +kubebuilder:subresource:status
func (*VpcAssociationPolicy) DeepCopy ¶ added in v0.0.17
func (in *VpcAssociationPolicy) DeepCopy() *VpcAssociationPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcAssociationPolicy.
func (*VpcAssociationPolicy) DeepCopyInto ¶ added in v0.0.17
func (in *VpcAssociationPolicy) DeepCopyInto(out *VpcAssociationPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VpcAssociationPolicy) DeepCopyObject ¶ added in v0.0.17
func (in *VpcAssociationPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*VpcAssociationPolicy) GetStatusConditions ¶ added in v0.0.18
func (p *VpcAssociationPolicy) GetStatusConditions() *[]metav1.Condition
func (*VpcAssociationPolicy) GetTargetRef ¶ added in v0.0.17
func (p *VpcAssociationPolicy) GetTargetRef() *gwv1alpha2.NamespacedPolicyTargetReference
type VpcAssociationPolicyList ¶ added in v0.0.17
type VpcAssociationPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []VpcAssociationPolicy `json:"items"`
}
+kubebuilder:object:root=true VpcAssociationPolicyList contains a list of VpcAssociationPolicies.
func (*VpcAssociationPolicyList) DeepCopy ¶ added in v0.0.17
func (in *VpcAssociationPolicyList) DeepCopy() *VpcAssociationPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcAssociationPolicyList.
func (*VpcAssociationPolicyList) DeepCopyInto ¶ added in v0.0.17
func (in *VpcAssociationPolicyList) DeepCopyInto(out *VpcAssociationPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VpcAssociationPolicyList) DeepCopyObject ¶ added in v0.0.17
func (in *VpcAssociationPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*VpcAssociationPolicyList) GetItems ¶ added in v0.0.17
func (pl *VpcAssociationPolicyList) GetItems() []*VpcAssociationPolicy
type VpcAssociationPolicySpec ¶ added in v0.0.17
type VpcAssociationPolicySpec struct {
// SecurityGroupIds defines the security groups enforced on the VpcServiceNetworkAssociation.
// Security groups does not take effect if AssociateWithVpc is set to false.
//
// For more details, please check the VPC Lattice documentation https://docs.aws.amazon.com/vpc-lattice/latest/ug/security-groups.html
//
// +optional
// +kubebuilder:validation:MinItems=1
SecurityGroupIds []SecurityGroupId `json:"securityGroupIds,omitempty"`
// AssociateWithVpc indicates whether the VpcServiceNetworkAssociation should be created for the current VPC of k8s cluster.
//
// This value will be considered true by default.
// +optional
AssociateWithVpc *bool `json:"associateWithVpc,omitempty"`
// TargetRef points to the kubernetes Gateway resource that will have this policy attached.
//
// This field is following the guidelines of Kubernetes Gateway API policy attachment.
TargetRef *gwv1alpha2.NamespacedPolicyTargetReference `json:"targetRef"`
}
VpcAssociationPolicySpec defines the desired state of VpcAssociationPolicy.
func (*VpcAssociationPolicySpec) DeepCopy ¶ added in v0.0.17
func (in *VpcAssociationPolicySpec) DeepCopy() *VpcAssociationPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcAssociationPolicySpec.
func (*VpcAssociationPolicySpec) DeepCopyInto ¶ added in v0.0.17
func (in *VpcAssociationPolicySpec) DeepCopyInto(out *VpcAssociationPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VpcAssociationPolicyStatus ¶ added in v0.0.18
type VpcAssociationPolicyStatus struct {
// Conditions describe the current conditions of the VpcAssociationPolicy.
//
// Implementations should prefer to express Policy conditions
// using the `PolicyConditionType` and `PolicyConditionReason`
// constants so that operators and tools can converge on a common
// vocabulary to describe VpcAssociationPolicy state.
//
// 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"`
}
VpcAssociationPolicyStatus defines the observed state of VpcAssociationPolicy.
func (*VpcAssociationPolicyStatus) DeepCopy ¶ added in v0.0.18
func (in *VpcAssociationPolicyStatus) DeepCopy() *VpcAssociationPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcAssociationPolicyStatus.
func (*VpcAssociationPolicyStatus) DeepCopyInto ¶ added in v0.0.18
func (in *VpcAssociationPolicyStatus) DeepCopyInto(out *VpcAssociationPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.