Documentation ¶
Overview ¶
Package v1alpha1 contains the v1alpha1 group ApplicationLoadBalancer resources of the IONOS Cloud provider. +kubebuilder:object:generate=true +groupName=alb.ionoscloud.crossplane.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- func ExtractApplicationLoadBalancerID() reference.ExtractValueFn
- func ExtractTargetGroupID() reference.ExtractValueFn
- type ApplicationLoadBalancer
- func (in *ApplicationLoadBalancer) DeepCopy() *ApplicationLoadBalancer
- func (in *ApplicationLoadBalancer) DeepCopyInto(out *ApplicationLoadBalancer)
- func (in *ApplicationLoadBalancer) DeepCopyObject() runtime.Object
- func (mg *ApplicationLoadBalancer) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *ApplicationLoadBalancer) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *ApplicationLoadBalancer) GetManagementPolicies() xpv1.ManagementPolicies
- func (mg *ApplicationLoadBalancer) GetProviderConfigReference() *xpv1.Reference
- func (mg *ApplicationLoadBalancer) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *ApplicationLoadBalancer) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *ApplicationLoadBalancer) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *ApplicationLoadBalancer) SetConditions(c ...xpv1.Condition)
- func (mg *ApplicationLoadBalancer) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *ApplicationLoadBalancer) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (mg *ApplicationLoadBalancer) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *ApplicationLoadBalancer) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *ApplicationLoadBalancer) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type ApplicationLoadBalancerConfig
- type ApplicationLoadBalancerHTTPRule
- type ApplicationLoadBalancerHTTPRuleCondition
- type ApplicationLoadBalancerList
- func (in *ApplicationLoadBalancerList) DeepCopy() *ApplicationLoadBalancerList
- func (in *ApplicationLoadBalancerList) DeepCopyInto(out *ApplicationLoadBalancerList)
- func (in *ApplicationLoadBalancerList) DeepCopyObject() runtime.Object
- func (l *ApplicationLoadBalancerList) GetItems() []resource.Managed
- type ApplicationLoadBalancerObservation
- type ApplicationLoadBalancerParameters
- type ApplicationLoadBalancerSpec
- type ApplicationLoadBalancerStatus
- type DatacenterConfig
- type ForwardingRule
- func (in *ForwardingRule) DeepCopy() *ForwardingRule
- func (in *ForwardingRule) DeepCopyInto(out *ForwardingRule)
- func (in *ForwardingRule) DeepCopyObject() runtime.Object
- func (mg *ForwardingRule) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *ForwardingRule) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *ForwardingRule) GetManagementPolicies() xpv1.ManagementPolicies
- func (mg *ForwardingRule) GetProviderConfigReference() *xpv1.Reference
- func (mg *ForwardingRule) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *ForwardingRule) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *ForwardingRule) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *ForwardingRule) SetConditions(c ...xpv1.Condition)
- func (mg *ForwardingRule) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *ForwardingRule) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (mg *ForwardingRule) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *ForwardingRule) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *ForwardingRule) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type ForwardingRuleList
- type ForwardingRuleObservation
- type ForwardingRuleParameters
- type ForwardingRuleSpec
- type ForwardingRuleStatus
- type IPBlockConfig
- type IPConfig
- type IPsBlockConfig
- type IPsConfigs
- type LanConfig
- type TargetGroup
- func (in *TargetGroup) DeepCopy() *TargetGroup
- func (in *TargetGroup) DeepCopyInto(out *TargetGroup)
- func (in *TargetGroup) DeepCopyObject() runtime.Object
- func (mg *TargetGroup) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *TargetGroup) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *TargetGroup) GetManagementPolicies() xpv1.ManagementPolicies
- func (mg *TargetGroup) GetProviderConfigReference() *xpv1.Reference
- func (mg *TargetGroup) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *TargetGroup) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *TargetGroup) SetConditions(c ...xpv1.Condition)
- func (mg *TargetGroup) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *TargetGroup) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (mg *TargetGroup) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *TargetGroup) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *TargetGroup) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type TargetGroupConfig
- type TargetGroupHTTPHealthCheck
- type TargetGroupHealthCheck
- type TargetGroupList
- type TargetGroupObservation
- type TargetGroupParameters
- type TargetGroupSpec
- type TargetGroupStatus
- type TargetGroupTarget
Constants ¶
const ( Group = "alb.ionoscloud.crossplane.io" Version = "v1alpha1" )
Package type metadata.
Variables ¶
var ( ApplicationLoadBalancerKind = reflect.TypeOf(ApplicationLoadBalancer{}).Name() ApplicationLoadBalancerGroupKind = schema.GroupKind{Group: Group, Kind: ApplicationLoadBalancerKind}.String() ApplicationLoadBalancerKindAPIVersion = ApplicationLoadBalancerKind + "." + SchemeGroupVersion.String() ApplicationLoadBalancerGroupVersionKind = SchemeGroupVersion.WithKind(ApplicationLoadBalancerKind) )
ApplicationLoadBalancer type metadata.
var ( ForwardingRuleKind = reflect.TypeOf(ForwardingRule{}).Name() ForwardingRuleGroupKind = schema.GroupKind{Group: Group, Kind: ForwardingRuleKind}.String() ForwardingRuleKindAPIVersion = ForwardingRuleKind + "." + SchemeGroupVersion.String() ForwardingRuleGroupVersionKind = SchemeGroupVersion.WithKind(ForwardingRuleKind) )
ApplicationLoadBalancer type metadata.
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var ( TargetGroupKind = reflect.TypeOf(TargetGroup{}).Name() TargetGroupGroupKind = schema.GroupKind{Group: Group, Kind: TargetGroupKind}.String() TargetGroupKindAPIVersion = TargetGroupKind + "." + SchemeGroupVersion.String() TargetGroupGroupVersionKind = SchemeGroupVersion.WithKind(TargetGroupKind) )
TargetGroup type metadata.
Functions ¶
func ExtractApplicationLoadBalancerID ¶
func ExtractApplicationLoadBalancerID() reference.ExtractValueFn
ExtractApplicationLoadBalancerID returns the externalName of a referenced ApplicationLoadBalancer.
func ExtractTargetGroupID ¶
func ExtractTargetGroupID() reference.ExtractValueFn
ExtractTargetGroupID returns the externalName of a referenced TargetGroup.
Types ¶
type ApplicationLoadBalancer ¶
type ApplicationLoadBalancer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ApplicationLoadBalancerSpec `json:"spec"` Status ApplicationLoadBalancerStatus `json:"status,omitempty"` }
An ApplicationLoadBalancer is an example API type. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="DATACENTER ID",type="string",JSONPath=".spec.forProvider.datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="APPLICATIONLOADBALANCER ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="APPLICATIONLOADBALANCER NAME",type="string",JSONPath=".spec.forProvider.name" +kubebuilder:printcolumn:name="LISTENER LAN",priority=1,type="string",JSONPath=".spec.forProvider.listenerLanConfig.lanId" +kubebuilder:printcolumn:name="TARGET LAN",priority=1,type="string",JSONPath=".spec.forProvider.targetLanConfig.lanId" +kubebuilder:printcolumn:name="IPS",priority=1,type="string",JSONPath=".status.atProvider.publicIps" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud},shortName=alb;applicationlb
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.
func (*ApplicationLoadBalancer) GetCondition ¶
func (mg *ApplicationLoadBalancer) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) GetDeletionPolicy ¶
func (mg *ApplicationLoadBalancer) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) GetManagementPolicies ¶ added in v1.0.6
func (mg *ApplicationLoadBalancer) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) GetProviderConfigReference ¶
func (mg *ApplicationLoadBalancer) GetProviderConfigReference() *xpv1.Reference
GetProviderConfigReference of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) GetPublishConnectionDetailsTo ¶ added in v1.0.2
func (mg *ApplicationLoadBalancer) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) GetWriteConnectionSecretToReference ¶
func (mg *ApplicationLoadBalancer) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) ResolveReferences ¶
ResolveReferences of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) SetConditions ¶
func (mg *ApplicationLoadBalancer) SetConditions(c ...xpv1.Condition)
SetConditions of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) SetDeletionPolicy ¶
func (mg *ApplicationLoadBalancer) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) SetManagementPolicies ¶ added in v1.0.6
func (mg *ApplicationLoadBalancer) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) SetProviderConfigReference ¶
func (mg *ApplicationLoadBalancer) SetProviderConfigReference(r *xpv1.Reference)
SetProviderConfigReference of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) SetPublishConnectionDetailsTo ¶ added in v1.0.2
func (mg *ApplicationLoadBalancer) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this ApplicationLoadBalancer.
func (*ApplicationLoadBalancer) SetWriteConnectionSecretToReference ¶
func (mg *ApplicationLoadBalancer) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this ApplicationLoadBalancer.
type ApplicationLoadBalancerConfig ¶
type ApplicationLoadBalancerConfig struct { // ApplicationLoadBalancerID is the ID of the ApplicationLoadBalancer on which the resource should have access. // It needs to be provided via directly or via reference. // // +immutable // +kubebuilder:validation:Format=uuid // +crossplane:generate:reference:type=ApplicationLoadBalancer // +crossplane:generate:reference:extractor=ExtractApplicationLoadBalancerID() ApplicationLoadBalancerID string `json:"applicationLoadBalancerId,omitempty"` // ApplicationLoadBalancerIDRef references to a Datacenter to retrieve its ID. // // +optional // +immutable ApplicationLoadBalancerIDRef *xpv1.Reference `json:"applicationLoadBalancerIdRef,omitempty"` // ApplicationLoadBalancerIDSelector selects reference to a Datacenter to retrieve its DatacenterID. // // +optional ApplicationLoadBalancerIDSelector *xpv1.Selector `json:"applicationLoadBalancerIdSelector,omitempty"` }
ApplicationLoadBalancerConfig is used by resources that need to link application load balancers via id or via reference.
func (*ApplicationLoadBalancerConfig) DeepCopy ¶
func (in *ApplicationLoadBalancerConfig) DeepCopy() *ApplicationLoadBalancerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLoadBalancerConfig.
func (*ApplicationLoadBalancerConfig) DeepCopyInto ¶
func (in *ApplicationLoadBalancerConfig) DeepCopyInto(out *ApplicationLoadBalancerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationLoadBalancerHTTPRule ¶
type ApplicationLoadBalancerHTTPRule struct { // The unique name of the Application Load Balancer HTTP rule. // // +kubebuilder:validation:Required Name string `json:"name"` // Type of the HTTP rule. // // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=FORWARD;STATIC;REDIRECT Type string `json:"type"` // The ID of the target group; mandatory and only valid for FORWARD actions. // The ID can be set directly or via reference. // // +kubebuilder:validation:Optional TargetGroupCfg TargetGroupConfig `json:"targetGroupConfig,omitempty"` // Default is false; valid only for REDIRECT actions. // // +kubebuilder:validation:Optional DropQuery bool `json:"dropQuery,omitempty"` // The location for redirecting; mandatory and valid only for REDIRECT actions. // Example: www.ionos.com // // +kubebuilder:validation:Optional Location string `json:"location,omitempty"` // Valid only for REDIRECT and STATIC actions. // For REDIRECT actions, default is 301 and possible values are 301, 302, 303, 307, and 308. // For STATIC actions, default is 503 and valid range is 200 to 599. // // +kubebuilder:validation:Optional // +kubebuilder:validation:Enum=301;302;303;307;308;200;503;599 StatusCode int32 `json:"statusCode,omitempty"` // The response message of the request; mandatory for STATIC actions. // // +kubebuilder:validation:Optional ResponseMessage string `json:"responseMessage,omitempty"` // Valid only for STATIC actions. Example: text/html // // +kubebuilder:validation:Optional ContentType string `json:"contentType,omitempty"` // An array of items in the collection. // The action is only performed if each and every condition is met; if no conditions are set, the rule will always be performed. // // +kubebuilder:validation:Optional Conditions []ApplicationLoadBalancerHTTPRuleCondition `json:"conditions,omitempty"` }
ApplicationLoadBalancerHTTPRule struct for Application Load Balancer HTTP Rule Required fields in order to create an ApplicationLoadBalancerHTTPRule: Name, Type, TargetGroup (via ID or via reference) - required only for FORWARD actions. Location - required only for REDIRECT actions. ResponseMessage - required only for STATIC actions.
func (*ApplicationLoadBalancerHTTPRule) DeepCopy ¶
func (in *ApplicationLoadBalancerHTTPRule) DeepCopy() *ApplicationLoadBalancerHTTPRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLoadBalancerHTTPRule.
func (*ApplicationLoadBalancerHTTPRule) DeepCopyInto ¶
func (in *ApplicationLoadBalancerHTTPRule) DeepCopyInto(out *ApplicationLoadBalancerHTTPRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationLoadBalancerHTTPRuleCondition ¶
type ApplicationLoadBalancerHTTPRuleCondition struct { // Type of the HTTP rule condition. // // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=HEADER;PATH;QUERY;METHOD;HOST;COOKIE;SOURCE_IP Type string `json:"type"` // Matching rule for the HTTP rule condition attribute; // Mandatory for HEADER, PATH, QUERY, METHOD, HOST, and COOKIE types; Must be null when type is SOURCE_IP. // // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=EXISTS;CONTAINS;EQUALS;MATCHES;STARTS_WITH;ENDS_WITH Condition string `json:"condition"` // Specifies whether the condition is negated or not; the default is False. // // +kubebuilder:validation:Optional Negate bool `json:"negate,omitempty"` // Must be null when type is PATH, METHOD, HOST, or SOURCE_IP. Key can only be set when type is COOKIES, HEADER, or QUERY. // // +kubebuilder:validation:Optional Key string `json:"key,omitempty"` // Mandatory for conditions CONTAINS, EQUALS, MATCHES, STARTS_WITH, ENDS_WITH; // Must be null when condition is EXISTS; should be a valid CIDR if provided and if type is SOURCE_IP. // // +kubebuilder:validation:Optional Value string `json:"value,omitempty"` }
ApplicationLoadBalancerHTTPRuleCondition struct for Application Load Balancer HTTP Rule Condition Required fields in order to create an ApplicationLoadBalancerHTTPRuleCondition: Type, Condition.
func (*ApplicationLoadBalancerHTTPRuleCondition) DeepCopy ¶
func (in *ApplicationLoadBalancerHTTPRuleCondition) DeepCopy() *ApplicationLoadBalancerHTTPRuleCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLoadBalancerHTTPRuleCondition.
func (*ApplicationLoadBalancerHTTPRuleCondition) DeepCopyInto ¶
func (in *ApplicationLoadBalancerHTTPRuleCondition) DeepCopyInto(out *ApplicationLoadBalancerHTTPRuleCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationLoadBalancerList ¶
type ApplicationLoadBalancerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ApplicationLoadBalancer `json:"items"` }
ApplicationLoadBalancerList contains a list of ApplicationLoadBalancer
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.
func (*ApplicationLoadBalancerList) GetItems ¶
func (l *ApplicationLoadBalancerList) GetItems() []resource.Managed
GetItems of this ApplicationLoadBalancerList.
type ApplicationLoadBalancerObservation ¶
type ApplicationLoadBalancerObservation struct { ApplicationLoadBalancerID string `json:"applicationLoadBalancerId,omitempty"` PublicIPs []string `json:"publicIps,omitempty"` State string `json:"state,omitempty"` AvailableUpgradeVersions []string `json:"availableUpgradeVersions,omitempty"` ViableNodePoolVersions []string `json:"viableNodePoolVersions,omitempty"` }
ApplicationLoadBalancerObservation are the observable fields of an ApplicationLoadBalancer.
func (*ApplicationLoadBalancerObservation) DeepCopy ¶
func (in *ApplicationLoadBalancerObservation) DeepCopy() *ApplicationLoadBalancerObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLoadBalancerObservation.
func (*ApplicationLoadBalancerObservation) DeepCopyInto ¶
func (in *ApplicationLoadBalancerObservation) DeepCopyInto(out *ApplicationLoadBalancerObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationLoadBalancerParameters ¶
type ApplicationLoadBalancerParameters struct { // A Datacenter, to which the user has access, to provision // the ApplicationLoadBalancer in. // // +immutable // +kubebuilder:validation:Required DatacenterCfg DatacenterConfig `json:"datacenterConfig"` // The name of the Application Load Balancer. // // +kubebuilder:validation:Required Name string `json:"name"` // ID of the listening (inbound) LAN. // Lan ID can be set directly or via reference. // // +kubebuilder:validation:Required ListenerLanCfg LanConfig `json:"listenerLanConfig"` // ID of the balanced private target LAN (outbound). // Lan ID can be set directly or via reference. // // +kubebuilder:validation:Required TargetLanCfg LanConfig `json:"targetLanConfig"` // Collection of the Application Load Balancer IP addresses. // (Inbound and outbound) IPs of the listenerLan are customer-reserved public IPs for // the public Load Balancers, and private IPs for the private Load Balancers. // The IPs can be set directly or using reference to the existing IPBlocks and indexes. // If no indexes are set, all IPs from the corresponding IPBlock will be assigned. // All IPs set on the Nic will be displayed on the status's ips field. // // +optional // +kubebuilder:validation:Optional IpsCfg IPsConfigs `json:"ipsConfig,omitempty"` // Collection of private IP addresses with the subnet mask of the Application Load Balancer. // IPs must contain valid a subnet mask. // If no IP is provided, the system will generate an IP with /24 subnet. // // +optional // +kubebuilder:validation:Optional LbPrivateIps []string `json:"lbPrivateIps,omitempty"` }
ApplicationLoadBalancerParameters are the observable fields of an ApplicationLoadBalancer. Required fields in order to create an ApplicationLoadBalancer: DatacenterConfig (via ID or via reference), Name, ListenerLanConfig (via ID or via reference), TargetLanConfig (via ID or via reference).
func (*ApplicationLoadBalancerParameters) DeepCopy ¶
func (in *ApplicationLoadBalancerParameters) DeepCopy() *ApplicationLoadBalancerParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLoadBalancerParameters.
func (*ApplicationLoadBalancerParameters) DeepCopyInto ¶
func (in *ApplicationLoadBalancerParameters) DeepCopyInto(out *ApplicationLoadBalancerParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationLoadBalancerSpec ¶
type ApplicationLoadBalancerSpec struct { xpv1.ResourceSpec `json:",inline"` ForProvider ApplicationLoadBalancerParameters `json:"forProvider"` }
ApplicationLoadBalancerSpec defines the desired state of an ApplicationLoadBalancer.
func (*ApplicationLoadBalancerSpec) DeepCopy ¶
func (in *ApplicationLoadBalancerSpec) DeepCopy() *ApplicationLoadBalancerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLoadBalancerSpec.
func (*ApplicationLoadBalancerSpec) DeepCopyInto ¶
func (in *ApplicationLoadBalancerSpec) DeepCopyInto(out *ApplicationLoadBalancerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationLoadBalancerStatus ¶
type ApplicationLoadBalancerStatus struct { xpv1.ResourceStatus `json:",inline"` AtProvider ApplicationLoadBalancerObservation `json:"atProvider,omitempty"` }
ApplicationLoadBalancerStatus represents the observed state of an ApplicationLoadBalancer.
func (*ApplicationLoadBalancerStatus) DeepCopy ¶
func (in *ApplicationLoadBalancerStatus) DeepCopy() *ApplicationLoadBalancerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLoadBalancerStatus.
func (*ApplicationLoadBalancerStatus) DeepCopyInto ¶
func (in *ApplicationLoadBalancerStatus) DeepCopyInto(out *ApplicationLoadBalancerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatacenterConfig ¶
type DatacenterConfig struct { // DatacenterID is the ID of the Datacenter on which the resource should have access. // It needs to be provided via directly or via reference. // // +immutable // +kubebuilder:validation:Format=uuid // +crossplane:generate:reference:type=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.Datacenter // +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.ExtractDatacenterID() DatacenterID string `json:"datacenterId,omitempty"` // DatacenterIDRef references to a Datacenter to retrieve its ID. // // +optional // +immutable DatacenterIDRef *xpv1.Reference `json:"datacenterIdRef,omitempty"` // DatacenterIDSelector selects reference to a Datacenter to retrieve its DatacenterID. // // +optional DatacenterIDSelector *xpv1.Selector `json:"datacenterIdSelector,omitempty"` }
DatacenterConfig is used by resources that need to link datacenters via id or via reference.
func (*DatacenterConfig) DeepCopy ¶
func (in *DatacenterConfig) DeepCopy() *DatacenterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatacenterConfig.
func (*DatacenterConfig) DeepCopyInto ¶
func (in *DatacenterConfig) DeepCopyInto(out *DatacenterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ForwardingRule ¶
type ForwardingRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ForwardingRuleSpec `json:"spec"` Status ForwardingRuleStatus `json:"status,omitempty"` }
An ForwardingRule is an example API type. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="DATACENTER ID",type="string",JSONPath=".spec.forProvider.datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="APPLICATIONLOADBALANCER ID",type="string",JSONPath=".spec.forProvider.applicationLoadBalancerConfig.applicationLoadBalancerId" +kubebuilder:printcolumn:name="FORWARDINGRULE ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="FORWARDINGRULE NAME",type="string",JSONPath=".spec.forProvider.name" +kubebuilder:printcolumn:name="PROTOCOL",priority=1,type="string",JSONPath=".spec.forProvider.protocol" +kubebuilder:printcolumn:name="LISTENER IP",priority=1,type="string",JSONPath=".status.atProvider.listenerIp" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}
func (*ForwardingRule) DeepCopy ¶
func (in *ForwardingRule) DeepCopy() *ForwardingRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardingRule.
func (*ForwardingRule) DeepCopyInto ¶
func (in *ForwardingRule) DeepCopyInto(out *ForwardingRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ForwardingRule) DeepCopyObject ¶
func (in *ForwardingRule) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ForwardingRule) GetCondition ¶
func (mg *ForwardingRule) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this ForwardingRule.
func (*ForwardingRule) GetDeletionPolicy ¶
func (mg *ForwardingRule) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this ForwardingRule.
func (*ForwardingRule) GetManagementPolicies ¶ added in v1.0.6
func (mg *ForwardingRule) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this ForwardingRule.
func (*ForwardingRule) GetProviderConfigReference ¶
func (mg *ForwardingRule) GetProviderConfigReference() *xpv1.Reference
GetProviderConfigReference of this ForwardingRule.
func (*ForwardingRule) GetPublishConnectionDetailsTo ¶ added in v1.0.2
func (mg *ForwardingRule) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this ForwardingRule.
func (*ForwardingRule) GetWriteConnectionSecretToReference ¶
func (mg *ForwardingRule) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this ForwardingRule.
func (*ForwardingRule) ResolveReferences ¶
ResolveReferences of this ForwardingRule.
func (*ForwardingRule) SetConditions ¶
func (mg *ForwardingRule) SetConditions(c ...xpv1.Condition)
SetConditions of this ForwardingRule.
func (*ForwardingRule) SetDeletionPolicy ¶
func (mg *ForwardingRule) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this ForwardingRule.
func (*ForwardingRule) SetManagementPolicies ¶ added in v1.0.6
func (mg *ForwardingRule) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this ForwardingRule.
func (*ForwardingRule) SetProviderConfigReference ¶
func (mg *ForwardingRule) SetProviderConfigReference(r *xpv1.Reference)
SetProviderConfigReference of this ForwardingRule.
func (*ForwardingRule) SetPublishConnectionDetailsTo ¶ added in v1.0.2
func (mg *ForwardingRule) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this ForwardingRule.
func (*ForwardingRule) SetWriteConnectionSecretToReference ¶
func (mg *ForwardingRule) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this ForwardingRule.
type ForwardingRuleList ¶
type ForwardingRuleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ForwardingRule `json:"items"` }
ForwardingRuleList contains a list of ApplicationLoadBalancer
func (*ForwardingRuleList) DeepCopy ¶
func (in *ForwardingRuleList) DeepCopy() *ForwardingRuleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardingRuleList.
func (*ForwardingRuleList) DeepCopyInto ¶
func (in *ForwardingRuleList) DeepCopyInto(out *ForwardingRuleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ForwardingRuleList) DeepCopyObject ¶
func (in *ForwardingRuleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ForwardingRuleList) GetItems ¶
func (l *ForwardingRuleList) GetItems() []resource.Managed
GetItems of this ForwardingRuleList.
type ForwardingRuleObservation ¶
type ForwardingRuleObservation struct { ForwardingRuleID string `json:"forwardingRuleId,omitempty"` ListenerIP string `json:"listenerIp,omitempty"` State string `json:"state,omitempty"` }
ForwardingRuleObservation are the observable fields of an ApplicationLoadBalancerForwardingRule.
func (*ForwardingRuleObservation) DeepCopy ¶
func (in *ForwardingRuleObservation) DeepCopy() *ForwardingRuleObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardingRuleObservation.
func (*ForwardingRuleObservation) DeepCopyInto ¶
func (in *ForwardingRuleObservation) DeepCopyInto(out *ForwardingRuleObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ForwardingRuleParameters ¶
type ForwardingRuleParameters struct { // A Datacenter, to which the user has access, to provision // the ApplicationLoadBalancer in. // // +immutable // +kubebuilder:validation:Required DatacenterCfg DatacenterConfig `json:"datacenterConfig"` // An ApplicationLoadBalancer, to which the user has access, to provision // the Forwarding Rule in. // // +immutable // +kubebuilder:validation:Required ALBCfg ApplicationLoadBalancerConfig `json:"applicationLoadBalancerConfig"` // The name of the Application Load Balancer Forwarding Rule. // // +kubebuilder:validation:Required Name string `json:"name"` // Balancing protocol // // +kubebuilder:validation:Enum=HTTP // +kubebuilder:validation:Required Protocol string `json:"protocol"` // Listening (inbound) IP. IP must be assigned to the listener NIC of the Application Load Balancer. // // +kubebuilder:validation:Required ListenerIP IPConfig `json:"listenerIpConfig"` // Listening (inbound) port number; valid range is 1 to 65535. // // +kubebuilder:validation:Minimum=1 // +kubebuilder:validation:Maximum=65535 // +kubebuilder:validation:Required ListenerPort int32 `json:"listenerPort"` // The maximum time in milliseconds to wait for the client to acknowledge or send data; // default is 50,000 (50 seconds). // // +kubebuilder:validation:Optional ClientTimeout int32 `json:"clientTimeout,omitempty"` // Array of items in the collection. // // +kubebuilder:validation:Optional ServerCertificatesIDs []string `json:"serverCertificatesIds,omitempty"` // An array of items in the collection. The original order of rules is preserved during processing, // except for Forward-type rules are processed after the rules with other action defined. // The relative order of Forward-type rules is also preserved during the processing. // // +kubebuilder:validation:Optional HTTPRules []ApplicationLoadBalancerHTTPRule `json:"httpRules,omitempty"` }
ForwardingRuleParameters are the observable fields of an ApplicationLoadBalancerForwardingRule. Required fields in order to create an ApplicationLoadBalancerForwardingRule: DatacenterConfig (via ID or via reference), ApplicationLoadBalancerConfig (via ID or via reference), Name, Protocol, ListenerIPConfig (via ID or via reference), ListenerPort.
func (*ForwardingRuleParameters) DeepCopy ¶
func (in *ForwardingRuleParameters) DeepCopy() *ForwardingRuleParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardingRuleParameters.
func (*ForwardingRuleParameters) DeepCopyInto ¶
func (in *ForwardingRuleParameters) DeepCopyInto(out *ForwardingRuleParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ForwardingRuleSpec ¶
type ForwardingRuleSpec struct { xpv1.ResourceSpec `json:",inline"` ForProvider ForwardingRuleParameters `json:"forProvider"` }
ForwardingRuleSpec defines the desired state of an ApplicationLoadBalancer.
func (*ForwardingRuleSpec) DeepCopy ¶
func (in *ForwardingRuleSpec) DeepCopy() *ForwardingRuleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardingRuleSpec.
func (*ForwardingRuleSpec) DeepCopyInto ¶
func (in *ForwardingRuleSpec) DeepCopyInto(out *ForwardingRuleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ForwardingRuleStatus ¶
type ForwardingRuleStatus struct { xpv1.ResourceStatus `json:",inline"` AtProvider ForwardingRuleObservation `json:"atProvider,omitempty"` }
ForwardingRuleStatus represents the observed state of an ApplicationLoadBalancer.
func (*ForwardingRuleStatus) DeepCopy ¶
func (in *ForwardingRuleStatus) DeepCopy() *ForwardingRuleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardingRuleStatus.
func (*ForwardingRuleStatus) DeepCopyInto ¶
func (in *ForwardingRuleStatus) DeepCopyInto(out *ForwardingRuleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPBlockConfig ¶
type IPBlockConfig struct { // IPBlockID is the ID of the IPBlock on which the resource will be created. // It needs to be provided via directly or via reference. // // +immutable // +kubebuilder:validation:Format=uuid // +crossplane:generate:reference:type=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.IPBlock // +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.ExtractIPBlockID() IPBlockID string `json:"ipBlockId,omitempty"` // IPBlockIDRef references to a IPBlock to retrieve its ID. // // +optional // +immutable IPBlockIDRef *xpv1.Reference `json:"ipBlockIdRef,omitempty"` // IPBlockIDSelector selects reference to a IPBlock to retrieve its IPBlockID. // // +optional IPBlockIDSelector *xpv1.Selector `json:"ipBlockIdSelector,omitempty"` // Index is referring to the IP index retrieved from the IPBlock. // Index starts from 0. // // +kubebuilder:validation:Required Index int `json:"index"` }
IPBlockConfig - used by resources that need to link IPBlock via id or via reference to get one single IP.
func (*IPBlockConfig) DeepCopy ¶
func (in *IPBlockConfig) DeepCopy() *IPBlockConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPBlockConfig.
func (*IPBlockConfig) DeepCopyInto ¶
func (in *IPBlockConfig) DeepCopyInto(out *IPBlockConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPConfig ¶
type IPConfig struct { // Use IP to set specific IP to the resource. If both IP and IPBlockConfig are set, // only `ip` field will be considered. // // +kubebuilder:validation:Pattern="^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$" IP string `json:"ip,omitempty"` // Use IpBlockConfig to reference existing IPBlock, and to mention the index for the IP. // Index starts from 0 and it must be provided. IPBlockCfg IPBlockConfig `json:"ipBlockConfig,omitempty"` }
IPConfig is used by resources that need to link ip directly or from IPBlock via id or via reference.
func (*IPConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPConfig.
func (*IPConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPsBlockConfig ¶
type IPsBlockConfig struct { // IPBlockID is the ID of the IPBlock on which the resource will be created. // It needs to be provided via directly or via reference. // // +immutable // +kubebuilder:validation:Format=uuid // +crossplane:generate:reference:type=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.IPBlock // +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.ExtractIPBlockID() IPBlockID string `json:"ipBlockId,omitempty"` // IPBlockIDRef references to a IPBlock to retrieve its ID. // // +optional // +immutable IPBlockIDRef *xpv1.Reference `json:"ipBlockIdRef,omitempty"` // IPBlockIDSelector selects reference to a IPBlock to retrieve its IPBlockID. // // +optional IPBlockIDSelector *xpv1.Selector `json:"ipBlockIdSelector,omitempty"` // Indexes are referring to the IPs indexes retrieved from the IPBlock. // Indexes are starting from 0. If no index is set, all IPs from the // corresponding IPBlock will be assigned. // // +optional Indexes []int `json:"indexes,omitempty"` }
IPsBlockConfig - used by resources that need to link IPBlock via id or via reference to get multiple IPs.
func (*IPsBlockConfig) DeepCopy ¶
func (in *IPsBlockConfig) DeepCopy() *IPsBlockConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPsBlockConfig.
func (*IPsBlockConfig) DeepCopyInto ¶
func (in *IPsBlockConfig) DeepCopyInto(out *IPsBlockConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPsConfigs ¶
type IPsConfigs struct { // Use IPs to set specific IPs to the resource. If both IPs and IPsBlockConfigs are set, // only `ips` field will be considered. IPs []string `json:"ips,omitempty"` // Use IpsBlockConfigs to reference existing IPBlocks, and to mention the indexes for the IPs. // Indexes start from 0, and multiple indexes can be set. If no index is set, all IPs from the // corresponding IPBlock will be assigned to the resource. IPBlockCfgs []IPsBlockConfig `json:"ipsBlockConfigs,omitempty"` }
IPsConfigs - used by resources that need to link multiple IPs directly or from IPBlock via id or via reference.
func (*IPsConfigs) DeepCopy ¶
func (in *IPsConfigs) DeepCopy() *IPsConfigs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPsConfigs.
func (*IPsConfigs) DeepCopyInto ¶
func (in *IPsConfigs) DeepCopyInto(out *IPsConfigs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LanConfig ¶
type LanConfig struct { // LanID is the ID of the Lan on which the resource will be created. // It needs to be provided via directly or via reference. // // +immutable // +crossplane:generate:reference:type=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.Lan // +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.ExtractLanID() LanID string `json:"lanId,omitempty"` // LanIDRef references to a Lan to retrieve its ID. // // +optional // +immutable LanIDRef *xpv1.Reference `json:"lanIdRef,omitempty"` // LanIDSelector selects reference to a Lan to retrieve its LanID. // // +optional LanIDSelector *xpv1.Selector `json:"lanIdSelector,omitempty"` }
LanConfig is used by resources that need to link lans via id or via reference.
func (*LanConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LanConfig.
func (*LanConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroup ¶
type TargetGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TargetGroupSpec `json:"spec"` Status TargetGroupStatus `json:"status,omitempty"` }
An TargetGroup is an example API type. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="TARGETGROUP ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="TARGETGROUP NAME",type="string",JSONPath=".spec.forProvider.name" +kubebuilder:printcolumn:name="PROTOCOL",priority=1,type="string",JSONPath=".spec.forProvider.protocol" +kubebuilder:printcolumn:name="ALGORITHM",priority=1,type="string",JSONPath=".spec.forProvider.algorithm" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}
func (*TargetGroup) DeepCopy ¶
func (in *TargetGroup) DeepCopy() *TargetGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroup.
func (*TargetGroup) DeepCopyInto ¶
func (in *TargetGroup) DeepCopyInto(out *TargetGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TargetGroup) DeepCopyObject ¶
func (in *TargetGroup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*TargetGroup) GetCondition ¶
func (mg *TargetGroup) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this TargetGroup.
func (*TargetGroup) GetDeletionPolicy ¶
func (mg *TargetGroup) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this TargetGroup.
func (*TargetGroup) GetManagementPolicies ¶ added in v1.0.6
func (mg *TargetGroup) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this TargetGroup.
func (*TargetGroup) GetProviderConfigReference ¶
func (mg *TargetGroup) GetProviderConfigReference() *xpv1.Reference
GetProviderConfigReference of this TargetGroup.
func (*TargetGroup) GetPublishConnectionDetailsTo ¶ added in v1.0.2
func (mg *TargetGroup) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this TargetGroup.
func (*TargetGroup) GetWriteConnectionSecretToReference ¶
func (mg *TargetGroup) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this TargetGroup.
func (*TargetGroup) SetConditions ¶
func (mg *TargetGroup) SetConditions(c ...xpv1.Condition)
SetConditions of this TargetGroup.
func (*TargetGroup) SetDeletionPolicy ¶
func (mg *TargetGroup) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this TargetGroup.
func (*TargetGroup) SetManagementPolicies ¶ added in v1.0.6
func (mg *TargetGroup) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this TargetGroup.
func (*TargetGroup) SetProviderConfigReference ¶
func (mg *TargetGroup) SetProviderConfigReference(r *xpv1.Reference)
SetProviderConfigReference of this TargetGroup.
func (*TargetGroup) SetPublishConnectionDetailsTo ¶ added in v1.0.2
func (mg *TargetGroup) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this TargetGroup.
func (*TargetGroup) SetWriteConnectionSecretToReference ¶
func (mg *TargetGroup) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this TargetGroup.
type TargetGroupConfig ¶
type TargetGroupConfig struct { // TargetGroupID is the ID of the TargetGroup on which the resource should have access. // It needs to be provided via directly or via reference. // // +immutable // +kubebuilder:validation:Format=uuid // +crossplane:generate:reference:type=TargetGroup // +crossplane:generate:reference:extractor=ExtractTargetGroupID() TargetGroupID string `json:"targetGroupId,omitempty"` // TargetGroupIDRef references to a TargetGroup to retrieve its ID. // // +optional // +immutable TargetGroupIDRef *xpv1.Reference `json:"targetGroupIdRef,omitempty"` // TargetGroupIDSelector selects reference to a TargetGroup to retrieve its TargetGroupID. // // +optional TargetGroupIDSelector *xpv1.Selector `json:"targetGroupIdSelector,omitempty"` }
TargetGroupConfig is used by resources that need to link application load balancers via id or via reference.
func (*TargetGroupConfig) DeepCopy ¶
func (in *TargetGroupConfig) DeepCopy() *TargetGroupConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupConfig.
func (*TargetGroupConfig) DeepCopyInto ¶
func (in *TargetGroupConfig) DeepCopyInto(out *TargetGroupConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroupHTTPHealthCheck ¶
type TargetGroupHTTPHealthCheck struct { // The path (destination URL) for the HTTP health check request; the default is `/`. // // +kubebuilder:validation:Optional Path string `json:"path,omitempty"` // The method for the HTTP health check. // // +kubebuilder:validation:Optional // +kubebuilder:validation:Enum=HEAD;PUT;POST;GET;TRACE;PATCH;OPTIONS Method string `json:"method,omitempty"` // The match type for the HTTP health check. // // +kubebuilder:validation:Required // +kubebuilder:validation:Enum="";STATUS_CODE;RESPONSE_BODY MatchType string `json:"matchType"` // The response returned by the request, depending on the match type. // // +kubebuilder:validation:Required Response string `json:"response"` // +kubebuilder:validation:Optional Regex bool `json:"regex,omitempty"` // +kubebuilder:validation:Optional Negate bool `json:"negate,omitempty"` }
TargetGroupHTTPHealthCheck struct for TargetGroupHttpHealthCheck Required fields in order to create an TargetGroupHttpHealthCheck: Response, MatchType.
func (*TargetGroupHTTPHealthCheck) DeepCopy ¶
func (in *TargetGroupHTTPHealthCheck) DeepCopy() *TargetGroupHTTPHealthCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupHTTPHealthCheck.
func (*TargetGroupHTTPHealthCheck) DeepCopyInto ¶
func (in *TargetGroupHTTPHealthCheck) DeepCopyInto(out *TargetGroupHTTPHealthCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroupHealthCheck ¶
type TargetGroupHealthCheck struct { // The maximum time in milliseconds to wait for a target to respond to a check. // For target VMs with 'Check Interval' set, the lesser of the two values // is used once the TCP connection is established. // // +kubebuilder:validation:Optional CheckTimeout int32 `json:"checkTimeout,omitempty"` // The interval in milliseconds between consecutive health checks; default is 2000. // // +kubebuilder:validation:Optional CheckInterval int32 `json:"checkInterval,omitempty"` // The maximum number of attempts to reconnect to a target after a connection failure. // Valid range is 0 to 65535, and default is three reconnection attempts. // // +kubebuilder:validation:Optional Retries int32 `json:"retries,omitempty"` }
TargetGroupHealthCheck struct for TargetGroupHealthCheck
func (*TargetGroupHealthCheck) DeepCopy ¶
func (in *TargetGroupHealthCheck) DeepCopy() *TargetGroupHealthCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupHealthCheck.
func (*TargetGroupHealthCheck) DeepCopyInto ¶
func (in *TargetGroupHealthCheck) DeepCopyInto(out *TargetGroupHealthCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroupList ¶
type TargetGroupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []TargetGroup `json:"items"` }
TargetGroupList contains a list of TargetGroup
func (*TargetGroupList) DeepCopy ¶
func (in *TargetGroupList) DeepCopy() *TargetGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupList.
func (*TargetGroupList) DeepCopyInto ¶
func (in *TargetGroupList) DeepCopyInto(out *TargetGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TargetGroupList) DeepCopyObject ¶
func (in *TargetGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*TargetGroupList) GetItems ¶
func (l *TargetGroupList) GetItems() []resource.Managed
GetItems of this TargetGroupList.
type TargetGroupObservation ¶
type TargetGroupObservation struct { TargetGroupID string `json:"targetGroupId,omitempty"` State string `json:"state,omitempty"` }
TargetGroupObservation are the observable fields of an TargetGroup.
func (*TargetGroupObservation) DeepCopy ¶
func (in *TargetGroupObservation) DeepCopy() *TargetGroupObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupObservation.
func (*TargetGroupObservation) DeepCopyInto ¶
func (in *TargetGroupObservation) DeepCopyInto(out *TargetGroupObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroupParameters ¶
type TargetGroupParameters struct { // The name of the target group. // // +kubebuilder:validation:Required Name string `json:"name"` // Balancing algorithm. // // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=ROUND_ROBIN;LEAST_CONNECTION;RANDOM;SOURCE_IP Algorithm string `json:"algorithm"` // Balancing protocol. // // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=HTTP Protocol string `json:"protocol"` // Array of items in the collection. // // +kubebuilder:validation:Optional Targets []TargetGroupTarget `json:"targets,omitempty"` // Health check properties for target group. // // +kubebuilder:validation:Optional HealthCheck TargetGroupHealthCheck `json:"healthCheck,omitempty"` // HTTP health check properties for target group. // // +kubebuilder:validation:Optional HTTPHealthCheck TargetGroupHTTPHealthCheck `json:"httpHealthCheck,omitempty"` }
TargetGroupParameters are the observable fields of an TargetGroup. Required fields in order to create an TargetGroup: Name, Algorithm, Protocol.
func (*TargetGroupParameters) DeepCopy ¶
func (in *TargetGroupParameters) DeepCopy() *TargetGroupParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupParameters.
func (*TargetGroupParameters) DeepCopyInto ¶
func (in *TargetGroupParameters) DeepCopyInto(out *TargetGroupParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroupSpec ¶
type TargetGroupSpec struct { xpv1.ResourceSpec `json:",inline"` ForProvider TargetGroupParameters `json:"forProvider"` }
TargetGroupSpec defines the desired state of an TargetGroup.
func (*TargetGroupSpec) DeepCopy ¶
func (in *TargetGroupSpec) DeepCopy() *TargetGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupSpec.
func (*TargetGroupSpec) DeepCopyInto ¶
func (in *TargetGroupSpec) DeepCopyInto(out *TargetGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroupStatus ¶
type TargetGroupStatus struct { xpv1.ResourceStatus `json:",inline"` AtProvider TargetGroupObservation `json:"atProvider,omitempty"` }
TargetGroupStatus represents the observed state of an TargetGroup.
func (*TargetGroupStatus) DeepCopy ¶
func (in *TargetGroupStatus) DeepCopy() *TargetGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupStatus.
func (*TargetGroupStatus) DeepCopyInto ¶
func (in *TargetGroupStatus) DeepCopyInto(out *TargetGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGroupTarget ¶
type TargetGroupTarget struct { // The IP of the balanced target VM. // // +kubebuilder:validation:Required IP string `json:"ip"` // The port of the balanced target service; valid range is 1 to 65535. // // +kubebuilder:validation:Required Port int32 `json:"port"` // Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. // A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1; // targets with weight of 0 do not participate in load balancing but still accept persistent connections. // It is best use values in the middle of the range to leave room for later adjustments. // // +kubebuilder:validation:Required Weight int32 `json:"weight"` // Makes the target available only if it accepts periodic health check TCP connection attempts; // when turned off, the target is considered always available. // The health check only consists of a connection attempt to the address and port of the target. // // +kubebuilder:validation:Optional HealthCheckEnabled bool `json:"healthCheckEnabled,omitempty"` // Maintenance mode prevents the target from receiving balanced traffic. // // +kubebuilder:validation:Optional MaintenanceEnabled bool `json:"maintenanceEnabled,omitempty"` }
TargetGroupTarget struct for TargetGroupTarget Required fields in order to create an TargetGroupTarget: IPConfig, Port, Weight.
func (*TargetGroupTarget) DeepCopy ¶
func (in *TargetGroupTarget) DeepCopy() *TargetGroupTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGroupTarget.
func (*TargetGroupTarget) DeepCopyInto ¶
func (in *TargetGroupTarget) DeepCopyInto(out *TargetGroupTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.