manualv1alpha1

package
v0.45.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 27, 2023 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

Package manualv1alpha1 contains manually creaed managed resources for AWS Elastic Loadbalancing V2. +kubebuilder:object:generate=true +groupName=elbv2.aws.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	Group   = "elbv2.aws.crossplane.io"
	Version = "v1alpha1"
)

Package type metadata.

View Source
const (
	TargetStatusHealthy     = "healthy"
	TargetStatusInitial     = "initial"
	TargetStatusUnhealthy   = "unhealthy"
	TargetStatusUnused      = "unused"
	TargetStatusDraining    = "draining"
	TargetStatusUnavailable = "unavailable"
)

Defines the possible state of a target.

Variables

View Source
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}
)
View Source
var (
	TargetKind             = reflect.TypeOf(Target{}).Name()
	TargetGroupKind        = schema.GroupKind{Group: Group, Kind: TargetKind}.String()
	TargetKindAPIVersion   = TargetKind + "." + SchemeGroupVersion.String()
	TargetGroupVersionKind = SchemeGroupVersion.WithKind(TargetKind)
)

Target type metadata.

Functions

This section is empty.

Types

type Target

type Target struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              TargetSpec   `json:"spec"`
	Status            TargetStatus `json:"status,omitempty"`
}

Target is the Schema for registering a target to an ELBV2 TargetGroup. +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="STATE",type="string",JSONPath=".status.atProvider.targetHealth.state" +kubebuilder:printcolumn:name="TARGET",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="GROUP",type="string",JSONPath=".spec.forProvider.targetGroupArn" +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}

func (*Target) DeepCopy

func (in *Target) DeepCopy() *Target

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Target.

func (*Target) DeepCopyInto

func (in *Target) DeepCopyInto(out *Target)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Target) DeepCopyObject

func (in *Target) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Target) GetCondition

func (mg *Target) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Target.

func (*Target) GetDeletionPolicy

func (mg *Target) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Target.

func (*Target) GetManagementPolicies added in v0.43.0

func (mg *Target) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Target.

func (*Target) GetProviderConfigReference

func (mg *Target) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Target.

func (*Target) GetPublishConnectionDetailsTo

func (mg *Target) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Target.

func (*Target) GetWriteConnectionSecretToReference

func (mg *Target) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Target.

func (*Target) ResolveReferences

func (mg *Target) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Target.

func (*Target) SetConditions

func (mg *Target) SetConditions(c ...xpv1.Condition)

SetConditions of this Target.

func (*Target) SetDeletionPolicy

func (mg *Target) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Target.

func (*Target) SetManagementPolicies added in v0.43.0

func (mg *Target) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Target.

func (*Target) SetProviderConfigReference

func (mg *Target) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Target.

func (*Target) SetPublishConnectionDetailsTo

func (mg *Target) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Target.

func (*Target) SetWriteConnectionSecretToReference

func (mg *Target) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Target.

type TargetHealth

type TargetHealth struct {
	// A description of the target health that provides additional details. If the
	// state is healthy, a description is not provided.
	Description *string `json:"description,omitempty"`

	// The reason code.
	//
	// If the target state is healthy, a reason code is not provided.
	//
	// If the target state is initial, the reason code can be one of the following
	// values:
	//
	//    * Elb.RegistrationInProgress - The target is in the process of being registered
	//    with the load balancer.
	//
	//    * Elb.InitialHealthChecking - The load balancer is still sending the target
	//    the minimum number of health checks required to determine its health status.
	//
	// If the target state is unhealthy, the reason code can be one of the following
	// values:
	//
	//    * Target.ResponseCodeMismatch - The health checks did not return an expected
	//    HTTP code. Applies only to Application Load Balancers and Gateway Load
	//    Balancers.
	//
	//    * Target.Timeout - The health check requests timed out. Applies only to
	//    Application Load Balancers and Gateway Load Balancers.
	//
	//    * Target.FailedHealthChecks - The load balancer received an error while
	//    establishing a connection to the target or the target response was malformed.
	//
	//    * Elb.InternalError - The health checks failed due to an internal error.
	//    Applies only to Application Load Balancers.
	//
	// If the target state is unused, the reason code can be one of the following
	// values:
	//
	//    * Target.NotRegistered - The target is not registered with the target
	//    group.
	//
	//    * Target.NotInUse - The target group is not used by any load balancer
	//    or the target is in an Availability Zone that is not enabled for its load
	//    balancer.
	//
	//    * Target.InvalidState - The target is in the stopped or terminated state.
	//
	//    * Target.IpUnusable - The target IP address is reserved for use by a load
	//    balancer.
	//
	// If the target state is draining, the reason code can be the following value:
	//
	//    * Target.DeregistrationInProgress - The target is in the process of being
	//    deregistered and the deregistration delay period has not expired.
	//
	// If the target state is unavailable, the reason code can be the following
	// value:
	//
	//    * Target.HealthCheckDisabled - Health checks are disabled for the target
	//    group. Applies only to Application Load Balancers.
	//
	//    * Elb.InternalError - Target health is unavailable due to an internal
	//    error. Applies only to Network Load Balancers.
	Reason *string `json:"reason,omitempty"`

	// The state of the target.
	State *string `json:"state,omitempty"`
}

TargetHealth describes the health state of a Target.

func (*TargetHealth) DeepCopy

func (in *TargetHealth) DeepCopy() *TargetHealth

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHealth.

func (*TargetHealth) DeepCopyInto

func (in *TargetHealth) DeepCopyInto(out *TargetHealth)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetList

type TargetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Target `json:"items"`
}

TargetList contains a list of Targets

func (*TargetList) DeepCopy

func (in *TargetList) DeepCopy() *TargetList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetList.

func (*TargetList) DeepCopyInto

func (in *TargetList) DeepCopyInto(out *TargetList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetList) DeepCopyObject

func (in *TargetList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TargetList) GetItems

func (l *TargetList) GetItems() []resource.Managed

GetItems of this TargetList.

type TargetObservation

type TargetObservation struct {
	// The port to use to connect with the target.
	HealthCheckPort *string `json:"healthCheckPort,omitempty"`

	// The health information for the target.
	TargetHealth *TargetHealth `json:"targetHealth,omitempty"`
}

TargetObservation defines the observed state of a Target

func (*TargetObservation) DeepCopy

func (in *TargetObservation) DeepCopy() *TargetObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetObservation.

func (*TargetObservation) DeepCopyInto

func (in *TargetObservation) DeepCopyInto(out *TargetObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetObservation) GetReason added in v0.34.0

func (s *TargetObservation) GetReason() string

GetReason returns s.TargetHealth.Reason if it is not nil, otherwise an empty string.

func (*TargetObservation) GetState

func (s *TargetObservation) GetState() string

GetState returns s.TargetHealth.State if it is not nil, otherwise an empty string.

type TargetParameters

type TargetParameters struct {
	// The AWS region the target resides in.
	Region string `json:"region"`

	// The Amazon Resource Name (ARN) of the target group.
	//
	// One of TargetGroupARN, TargetGroupARNRef or TargetGroupARNSelector is
	// required.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/elbv2/v1alpha1.TargetGroup
	// +immutable
	TargetGroupARN *string `json:"targetGroupArn,omitempty"`

	// TargetGroupARNRef selects a ELBv2 TargetGroupARN with the given name.
	TargetGroupARNRef *xpv1.Reference `json:"targetGroupArnRef,omitempty"`

	// TargetGroupARNSelector selects a ELBv2 TargetGroupARN with the given
	// labels.
	TargetGroupARNSelector *xpv1.Selector `json:"targetGroupArnSelector,omitempty"`

	// The LambdaARN that should be used as target.
	//
	// Note: If you want to reference anything else than Lambda you currently
	// have to specify the crossplane.io/external-name annotation directly.
	// If the target type of the target group is instance,
	// specify an instance ID. If the target type is ip, specify an IP address.
	// If the target type is lambda, specify the ARN of the Lambda function. If
	// the target type is alb, specify the ARN of the Application Load Balancer
	// target.
	//
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/lambda/v1beta1.Function
	// +crossplane:generate:reference:extractor=github.com/crossplane-contrib/provider-aws/apis/lambda/v1beta1.FunctionARN()
	LambdaARN *string `json:"lambdaArn,omitempty"`

	// LambdaARNRef references a Lambda Function to set LambdaARN.
	LambdaARNRef *xpv1.Reference `json:"lambdaArnRef,omitempty"`

	// LambdaARNSelector references a Lambda Function to set LambdaARN.
	LambdaARNSelector *xpv1.Selector `json:"lambdaArnSelector,omitempty"`

	// The port on which the target is listening. If the target group protocol is
	// GENEVE, the supported port is 6081. If the target type is alb, the targeted
	// Application Load Balancer must have at least one listener whose port matches
	// the target group port. Not used if the target is a Lambda function.
	// +immutable
	Port *int32 `json:"port,omitempty"`

	// An Availability Zone or all. This determines whether the target receives
	// traffic from the load balancer nodes in the specified Availability Zone or
	// from all enabled Availability Zones for the load balancer.
	//
	// This parameter is not supported if the target type of the target group is
	// instance or alb.
	//
	// If the target type is ip and the IP address is in a subnet of the VPC for
	// the target group, the Availability Zone is automatically detected and this
	// parameter is optional. If the IP address is outside the VPC, this parameter
	// is required.
	//
	// With an Application Load Balancer, if the target type is ip and the IP address
	// is outside the VPC for the target group, the only supported value is all.
	//
	// If the target type is lambda, this parameter is optional and the only supported
	// value is all.
	// +immutable
	AvailabilityZone *string `json:"availabilityZone,omitempty"`
}

TargetParameters defines the desired state of a Target

func (*TargetParameters) DeepCopy

func (in *TargetParameters) DeepCopy() *TargetParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetParameters.

func (*TargetParameters) DeepCopyInto

func (in *TargetParameters) DeepCopyInto(out *TargetParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetSpec

type TargetSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       TargetParameters `json:"forProvider"`
}

TargetSpec defines the desired state of a Target

func (*TargetSpec) DeepCopy

func (in *TargetSpec) DeepCopy() *TargetSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetSpec.

func (*TargetSpec) DeepCopyInto

func (in *TargetSpec) DeepCopyInto(out *TargetSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetStatus

type TargetStatus struct {
	xpv1.ResourceStatus `json:",inline"`
	AtProvider          TargetObservation `json:"atProvider,omitempty"`
}

TargetStatus defines the observed state of a Target

func (*TargetStatus) DeepCopy

func (in *TargetStatus) DeepCopy() *TargetStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetStatus.

func (*TargetStatus) DeepCopyInto

func (in *TargetStatus) DeepCopyInto(out *TargetStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL