Documentation
¶
Overview ¶
Package manualv1alpha1 contains managed resources for AWS Elastic Kubernetes Service such as NodeGroup. +kubebuilder:object:generate=true +groupName=eks.aws.crossplane.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type AutoScalingGroup
- type FargateProfile
- func (in *FargateProfile) DeepCopy() *FargateProfile
- func (in *FargateProfile) DeepCopyInto(out *FargateProfile)
- func (in *FargateProfile) DeepCopyObject() runtime.Object
- func (mg *FargateProfile) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *FargateProfile) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *FargateProfile) GetManagementPolicies() xpv1.ManagementPolicies
- func (mg *FargateProfile) GetProviderConfigReference() *xpv1.Reference
- func (mg *FargateProfile) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *FargateProfile) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *FargateProfile) SetConditions(c ...xpv1.Condition)
- func (mg *FargateProfile) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *FargateProfile) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (mg *FargateProfile) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *FargateProfile) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *FargateProfile) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type FargateProfileList
- type FargateProfileObservation
- type FargateProfileParameters
- type FargateProfileSelector
- type FargateProfileSpec
- type FargateProfileStatus
- type FargateProfileStatusType
- type IdentityProviderConfig
- func (in *IdentityProviderConfig) DeepCopy() *IdentityProviderConfig
- func (in *IdentityProviderConfig) DeepCopyInto(out *IdentityProviderConfig)
- func (in *IdentityProviderConfig) DeepCopyObject() runtime.Object
- func (mg *IdentityProviderConfig) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *IdentityProviderConfig) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *IdentityProviderConfig) GetManagementPolicies() xpv1.ManagementPolicies
- func (mg *IdentityProviderConfig) GetProviderConfigReference() *xpv1.Reference
- func (mg *IdentityProviderConfig) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *IdentityProviderConfig) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *IdentityProviderConfig) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *IdentityProviderConfig) SetConditions(c ...xpv1.Condition)
- func (mg *IdentityProviderConfig) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *IdentityProviderConfig) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (mg *IdentityProviderConfig) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *IdentityProviderConfig) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *IdentityProviderConfig) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type IdentityProviderConfigList
- type IdentityProviderConfigObservation
- type IdentityProviderConfigParameters
- type IdentityProviderConfigSpec
- type IdentityProviderConfigStatus
- type IdentityProviderConfigStatusType
- type IdentityProviderConfigType
- type Issue
- type LaunchTemplateSpecification
- type NodeGroup
- func (in *NodeGroup) DeepCopy() *NodeGroup
- func (in *NodeGroup) DeepCopyInto(out *NodeGroup)
- func (in *NodeGroup) DeepCopyObject() runtime.Object
- func (mg *NodeGroup) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *NodeGroup) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *NodeGroup) GetManagementPolicies() xpv1.ManagementPolicies
- func (mg *NodeGroup) GetProviderConfigReference() *xpv1.Reference
- func (mg *NodeGroup) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *NodeGroup) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *NodeGroup) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *NodeGroup) SetConditions(c ...xpv1.Condition)
- func (mg *NodeGroup) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *NodeGroup) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (mg *NodeGroup) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *NodeGroup) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *NodeGroup) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type NodeGroupHealth
- type NodeGroupList
- type NodeGroupObservation
- type NodeGroupParameters
- type NodeGroupResources
- type NodeGroupScalingConfig
- type NodeGroupScalingConfigStatus
- type NodeGroupSpec
- type NodeGroupStatus
- type NodeGroupStatusType
- type NodeGroupUpdateConfig
- type NodeGroupUpdateConfigStatus
- type OIDCIdentityProvider
- type RemoteAccessConfig
- type Taint
Constants ¶
const ( Group = "eks.aws.crossplane.io" Version = "v1alpha1" )
Package type metadata.
Variables ¶
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} )
var ( NodeGroupKind = reflect.TypeOf(NodeGroup{}).Name() NodeGroupGroupKind = schema.GroupKind{Group: Group, Kind: NodeGroupKind}.String() NodeGroupKindAPIVersion = NodeGroupKind + "." + SchemeGroupVersion.String() NodeGroupGroupVersionKind = SchemeGroupVersion.WithKind(NodeGroupKind) FargateProfileKind = reflect.TypeOf(FargateProfile{}).Name() FargateProfileGroupKind = schema.GroupKind{Group: Group, Kind: FargateProfileKind}.String() FargateProfileKindAPIVersion = FargateProfileKind + "." + SchemeGroupVersion.String() FargateProfileGroupVersionKind = SchemeGroupVersion.WithKind(FargateProfileKind) IdentityProviderConfigKind = reflect.TypeOf(IdentityProviderConfig{}).Name() IdentityProviderConfigGroupKind = schema.GroupKind{Group: Group, Kind: IdentityProviderConfigKind}.String() IdentityProviderConfigKindAPIVersion = IdentityProviderConfigKind + "." + SchemeGroupVersion.String() IdentityProviderConfigGroupVersionKind = SchemeGroupVersion.WithKind(IdentityProviderConfigKind) )
NodeGroup type metadata.
Functions ¶
This section is empty.
Types ¶
type AutoScalingGroup ¶
type AutoScalingGroup struct {
// The name of the Auto Scaling group associated with an Amazon EKS managed
// node group.
Name string `json:"name,omitempty"`
}
AutoScalingGroup is an autoscaling group associated with a NodeGroup.
func (*AutoScalingGroup) DeepCopy ¶
func (in *AutoScalingGroup) DeepCopy() *AutoScalingGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScalingGroup.
func (*AutoScalingGroup) DeepCopyInto ¶
func (in *AutoScalingGroup) DeepCopyInto(out *AutoScalingGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FargateProfile ¶
type FargateProfile struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec FargateProfileSpec `json:"spec"`
Status FargateProfileStatus `json:"status,omitempty"`
}
A FargateProfile is a managed resource that represents an AWS Elastic Kubernetes Service FargateProfile. +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="CLUSTER",type="string",JSONPath=".spec.forProvider.clusterName" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws} +kubebuilder:deprecatedversion:warning="Please use v1beta1 version of this resource that has identical schema." Deprecated: Please use v1beta1 version of this resource.
func (*FargateProfile) DeepCopy ¶
func (in *FargateProfile) DeepCopy() *FargateProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateProfile.
func (*FargateProfile) DeepCopyInto ¶
func (in *FargateProfile) DeepCopyInto(out *FargateProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FargateProfile) DeepCopyObject ¶
func (in *FargateProfile) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*FargateProfile) GetCondition ¶
func (mg *FargateProfile) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this FargateProfile.
func (*FargateProfile) GetDeletionPolicy ¶
func (mg *FargateProfile) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this FargateProfile.
func (*FargateProfile) GetManagementPolicies ¶ added in v0.43.0
func (mg *FargateProfile) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this FargateProfile.
func (*FargateProfile) GetProviderConfigReference ¶
func (mg *FargateProfile) GetProviderConfigReference() *xpv1.Reference
GetProviderConfigReference of this FargateProfile.
func (*FargateProfile) GetPublishConnectionDetailsTo ¶
func (mg *FargateProfile) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this FargateProfile.
func (*FargateProfile) GetWriteConnectionSecretToReference ¶
func (mg *FargateProfile) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this FargateProfile.
func (*FargateProfile) SetConditions ¶
func (mg *FargateProfile) SetConditions(c ...xpv1.Condition)
SetConditions of this FargateProfile.
func (*FargateProfile) SetDeletionPolicy ¶
func (mg *FargateProfile) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this FargateProfile.
func (*FargateProfile) SetManagementPolicies ¶ added in v0.43.0
func (mg *FargateProfile) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this FargateProfile.
func (*FargateProfile) SetProviderConfigReference ¶
func (mg *FargateProfile) SetProviderConfigReference(r *xpv1.Reference)
SetProviderConfigReference of this FargateProfile.
func (*FargateProfile) SetPublishConnectionDetailsTo ¶
func (mg *FargateProfile) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this FargateProfile.
func (*FargateProfile) SetWriteConnectionSecretToReference ¶
func (mg *FargateProfile) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this FargateProfile.
type FargateProfileList ¶
type FargateProfileList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []FargateProfile `json:"items"`
}
FargateProfileList contains a list of FargateProfile items +kubebuilder:deprecatedversion:warning="Please use v1beta1 version of this resource that has identical schema." Deprecated: Please use v1beta1 version of this resource.
func (*FargateProfileList) DeepCopy ¶
func (in *FargateProfileList) DeepCopy() *FargateProfileList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateProfileList.
func (*FargateProfileList) DeepCopyInto ¶
func (in *FargateProfileList) DeepCopyInto(out *FargateProfileList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FargateProfileList) DeepCopyObject ¶
func (in *FargateProfileList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*FargateProfileList) GetItems ¶
func (l *FargateProfileList) GetItems() []resource.Managed
GetItems of this FargateProfileList.
type FargateProfileObservation ¶
type FargateProfileObservation struct {
// The Unix epoch timestamp in seconds for when the Fargate profile was created.
CreatedAt *metav1.Time `json:"createdAt,omitempty"`
// The full Amazon Resource Name (ARN) of the Fargate profile.
FargateProfileArn string `json:"fargateProfileArn,omitempty"`
// The current status of the Fargate profile.
Status FargateProfileStatusType `json:"status,omitempty"`
}
FargateProfileObservation is the observed state of a FargateProfile.
func (*FargateProfileObservation) DeepCopy ¶
func (in *FargateProfileObservation) DeepCopy() *FargateProfileObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateProfileObservation.
func (*FargateProfileObservation) DeepCopyInto ¶
func (in *FargateProfileObservation) DeepCopyInto(out *FargateProfileObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FargateProfileParameters ¶
type FargateProfileParameters struct {
// Region is the region you'd like the FargateProfile to be created in.
// +immutable
Region string `json:"region"`
// The name of the Amazon EKS cluster to apply the Fargate profile to.
//
// ClusterName is a required field
// +immutable
ClusterName string `json:"clusterName,omitempty"`
// ClusterNameRef is a reference to a Cluster used to set
// the ClusterName.
// +immutable
// +optional
ClusterNameRef *xpv1.Reference `json:"clusterNameRef,omitempty"`
// ClusterNameSelector selects references to a Cluster used
// to set the ClusterName.
// +optional
ClusterNameSelector *xpv1.Selector `json:"clusterNameSelector,omitempty"`
// The Amazon Resource Name (ARN) of the pod execution role to use for pods
// that match the selectors in the Fargate profile. The pod execution role allows
// Fargate infrastructure to register with your cluster as a node, and it provides
// read access to Amazon ECR image repositories. For more information, see Pod
// Execution Role (https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html)
// in the Amazon EKS User Guide.
//
// At least one of podExecutionRoleArn, podExecutionRoleArnRef or podExecutionRoleArnSelector has to be given
// +immutable
// +optional
PodExecutionRoleArn string `json:"podExecutionRoleArn,omitempty"`
// PodExecutionRoleArnRef is a reference to an IAMRole used to set
// the PodExecutionRoleArn.
// At least one of podExecutionRoleArn, podExecutionRoleArnRef or podExecutionRoleArnSelector has to be given
// +immutable
// +optional
PodExecutionRoleArnRef *xpv1.Reference `json:"podExecutionRoleArnRef,omitempty"`
// PodExecutionRoleArnSelector selects references to IAMRole used
// to set the PodExecutionRoleArn.
// At least one of podExecutionRoleArn, podExecutionRoleArnRef or podExecutionRoleArnSelector has to be given
// +optional
PodExecutionRoleArnSelector *xpv1.Selector `json:"podExecutionRoleArnSelector,omitempty"`
// The selectors to match for pods to use this Fargate profile. Each selector
// must have an associated namespace. Optionally, you can also specify labels
// for a namespace. You may specify up to five selectors in a Fargate profile.
// +immutable
Selectors []FargateProfileSelector `json:"selectors,omitempty"`
// The IDs of subnets to launch your pods into. At this time, pods running on
// Fargate are not assigned public IP addresses, so only private subnets (with
// no direct route to an Internet Gateway) are accepted for this parameter.
// +optional
// +immutable
Subnets []string `json:"subnets,omitempty"`
// SubnetRefs are references to Subnets used to set the Subnets.
// +immutable
// +optional
SubnetRefs []xpv1.Reference `json:"subnetRefs,omitempty"`
// SubnetSelector selects references to Subnets used to set the Subnets.
// +optional
SubnetSelector *xpv1.Selector `json:"subnetSelector,omitempty"`
// The metadata to apply to the Fargate profile to assist with categorization
// and organization. Each tag consists of a key and an optional value, both
// of which you define. Fargate profile tags do not propagate to any other resources
// associated with the Fargate profile, such as the pods that are scheduled
// with it.
// +optional
Tags map[string]string `json:"tags,omitempty"`
}
FargateProfileParameters define the desired state of an AWS Elastic Kubernetes Service FargateProfile. All fields are immutable as it is not possible to update a Fargate profile.
func (*FargateProfileParameters) DeepCopy ¶
func (in *FargateProfileParameters) DeepCopy() *FargateProfileParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateProfileParameters.
func (*FargateProfileParameters) DeepCopyInto ¶
func (in *FargateProfileParameters) DeepCopyInto(out *FargateProfileParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FargateProfileSelector ¶
type FargateProfileSelector struct {
// The Kubernetes labels that the selector should match. A pod must contain
// all of the labels that are specified in the selector for it to be considered
// a match.
Labels map[string]string `json:"labels,omitempty"`
// The Kubernetes namespace that the selector should match.
Namespace *string `json:"namespace,omitempty"`
}
FargateProfileSelector is an object representing an AWS Fargate profile selector.
func (*FargateProfileSelector) DeepCopy ¶
func (in *FargateProfileSelector) DeepCopy() *FargateProfileSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateProfileSelector.
func (*FargateProfileSelector) DeepCopyInto ¶
func (in *FargateProfileSelector) DeepCopyInto(out *FargateProfileSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FargateProfileSpec ¶
type FargateProfileSpec struct {
xpv1.ResourceSpec `json:",inline"`
ForProvider FargateProfileParameters `json:"forProvider"`
}
A FargateProfileSpec defines the desired state of an EKS FargateProfile.
func (*FargateProfileSpec) DeepCopy ¶
func (in *FargateProfileSpec) DeepCopy() *FargateProfileSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateProfileSpec.
func (*FargateProfileSpec) DeepCopyInto ¶
func (in *FargateProfileSpec) DeepCopyInto(out *FargateProfileSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FargateProfileStatus ¶
type FargateProfileStatus struct {
xpv1.ResourceStatus `json:",inline"`
AtProvider FargateProfileObservation `json:"atProvider,omitempty"`
}
A FargateProfileStatus represents the observed state of an EKS FargateProfile.
func (*FargateProfileStatus) DeepCopy ¶
func (in *FargateProfileStatus) DeepCopy() *FargateProfileStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateProfileStatus.
func (*FargateProfileStatus) DeepCopyInto ¶
func (in *FargateProfileStatus) DeepCopyInto(out *FargateProfileStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FargateProfileStatusType ¶
type FargateProfileStatusType string
FargateProfileStatusType is a type of FargateProfile status.
const ( FargateProfileStatusCreating FargateProfileStatusType = "CREATING" FargateProfileStatusActive FargateProfileStatusType = "ACTIVE" FargateProfileStatusDeleting FargateProfileStatusType = "DELETING" FargateProfileStatusCreateFailed FargateProfileStatusType = "CREATE_FAILED" FargateProfileStatusDeleteFailed FargateProfileStatusType = "DELETE_FAILED" )
Types of FargateProfile status.
type IdentityProviderConfig ¶
type IdentityProviderConfig struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec IdentityProviderConfigSpec `json:"spec"`
Status IdentityProviderConfigStatus `json:"status,omitempty"`
}
An IdentityProviderConfig is a managed resource that represents an AWS Elastic Kubernetes Service IdentityProviderConfig. +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="CLUSTER",type="string",JSONPath=".spec.forProvider.clusterName" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}
func (*IdentityProviderConfig) DeepCopy ¶
func (in *IdentityProviderConfig) DeepCopy() *IdentityProviderConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderConfig.
func (*IdentityProviderConfig) DeepCopyInto ¶
func (in *IdentityProviderConfig) DeepCopyInto(out *IdentityProviderConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IdentityProviderConfig) DeepCopyObject ¶
func (in *IdentityProviderConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*IdentityProviderConfig) GetCondition ¶
func (mg *IdentityProviderConfig) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this IdentityProviderConfig.
func (*IdentityProviderConfig) GetDeletionPolicy ¶
func (mg *IdentityProviderConfig) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this IdentityProviderConfig.
func (*IdentityProviderConfig) GetManagementPolicies ¶ added in v0.43.0
func (mg *IdentityProviderConfig) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this IdentityProviderConfig.
func (*IdentityProviderConfig) GetProviderConfigReference ¶
func (mg *IdentityProviderConfig) GetProviderConfigReference() *xpv1.Reference
GetProviderConfigReference of this IdentityProviderConfig.
func (*IdentityProviderConfig) GetPublishConnectionDetailsTo ¶
func (mg *IdentityProviderConfig) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this IdentityProviderConfig.
func (*IdentityProviderConfig) GetWriteConnectionSecretToReference ¶
func (mg *IdentityProviderConfig) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this IdentityProviderConfig.
func (*IdentityProviderConfig) ResolveReferences ¶
ResolveReferences of this IdentityProviderConfig.
func (*IdentityProviderConfig) SetConditions ¶
func (mg *IdentityProviderConfig) SetConditions(c ...xpv1.Condition)
SetConditions of this IdentityProviderConfig.
func (*IdentityProviderConfig) SetDeletionPolicy ¶
func (mg *IdentityProviderConfig) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this IdentityProviderConfig.
func (*IdentityProviderConfig) SetManagementPolicies ¶ added in v0.43.0
func (mg *IdentityProviderConfig) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this IdentityProviderConfig.
func (*IdentityProviderConfig) SetProviderConfigReference ¶
func (mg *IdentityProviderConfig) SetProviderConfigReference(r *xpv1.Reference)
SetProviderConfigReference of this IdentityProviderConfig.
func (*IdentityProviderConfig) SetPublishConnectionDetailsTo ¶
func (mg *IdentityProviderConfig) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this IdentityProviderConfig.
func (*IdentityProviderConfig) SetWriteConnectionSecretToReference ¶
func (mg *IdentityProviderConfig) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this IdentityProviderConfig.
type IdentityProviderConfigList ¶
type IdentityProviderConfigList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []IdentityProviderConfig `json:"items"`
}
IdentityProviderConfigList contains a list of IdentityProviderConfig items
func (*IdentityProviderConfigList) DeepCopy ¶
func (in *IdentityProviderConfigList) DeepCopy() *IdentityProviderConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderConfigList.
func (*IdentityProviderConfigList) DeepCopyInto ¶
func (in *IdentityProviderConfigList) DeepCopyInto(out *IdentityProviderConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IdentityProviderConfigList) DeepCopyObject ¶
func (in *IdentityProviderConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*IdentityProviderConfigList) GetItems ¶
func (l *IdentityProviderConfigList) GetItems() []resource.Managed
GetItems of this IdentityProviderConfigList.
type IdentityProviderConfigObservation ¶
type IdentityProviderConfigObservation struct {
// The current status of the managed identity provider config.
Status IdentityProviderConfigStatusType `json:"status,omitempty"`
IdentityProviderConfigArn string `json:"identityProviderConfigArn,omitempty"`
}
IdentityProviderConfigObservation is the observed state of an identity provider.
func (*IdentityProviderConfigObservation) DeepCopy ¶
func (in *IdentityProviderConfigObservation) DeepCopy() *IdentityProviderConfigObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderConfigObservation.
func (*IdentityProviderConfigObservation) DeepCopyInto ¶
func (in *IdentityProviderConfigObservation) DeepCopyInto(out *IdentityProviderConfigObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityProviderConfigParameters ¶
type IdentityProviderConfigParameters struct {
// Region is the region you'd like the identity provider to be created in.
// +immutable
Region string `json:"region"`
// The name of the cluster to associate the identity provider with.
// +immutable
// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/eks/v1beta1.Cluster
ClusterName string `json:"clusterName,omitempty"`
// ClusterNameRef is a reference to a Cluster used to set
// the ClusterName.
// +immutable
// +optional
ClusterNameRef *xpv1.Reference `json:"clusterNameRef,omitempty"`
// ClusterNameSelector selects references to a Cluster used
// to set the ClusterName.
// +optional
ClusterNameSelector *xpv1.Selector `json:"clusterNameSelector,omitempty"`
// An object that represents an OpenID Connect (OIDC) identity provider
// configuration.
// +immutable
Oidc *OIDCIdentityProvider `json:"oidc"`
// The metadata to apply to the configuration to assist with categorization and
// organization. Each tag consists of a key and an optional value, both of which
// you define.
// +optional
Tags map[string]string `json:"tags,omitempty"`
}
IdentityProviderConfigParameters define the desired state of an AWS Elastic Kubernetes Service Identity Provider.
func (*IdentityProviderConfigParameters) DeepCopy ¶
func (in *IdentityProviderConfigParameters) DeepCopy() *IdentityProviderConfigParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderConfigParameters.
func (*IdentityProviderConfigParameters) DeepCopyInto ¶
func (in *IdentityProviderConfigParameters) DeepCopyInto(out *IdentityProviderConfigParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityProviderConfigSpec ¶
type IdentityProviderConfigSpec struct {
xpv1.ResourceSpec `json:",inline"`
ForProvider IdentityProviderConfigParameters `json:"forProvider"`
}
A IdentityProviderConfigSpec defines the desired state of an EKS identity provider.
func (*IdentityProviderConfigSpec) DeepCopy ¶
func (in *IdentityProviderConfigSpec) DeepCopy() *IdentityProviderConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderConfigSpec.
func (*IdentityProviderConfigSpec) DeepCopyInto ¶
func (in *IdentityProviderConfigSpec) DeepCopyInto(out *IdentityProviderConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityProviderConfigStatus ¶
type IdentityProviderConfigStatus struct {
xpv1.ResourceStatus `json:",inline"`
AtProvider IdentityProviderConfigObservation `json:"atProvider,omitempty"`
}
An IdentityProviderConfigStatus represents the observed state of an EKS associated identity provider.
func (*IdentityProviderConfigStatus) DeepCopy ¶
func (in *IdentityProviderConfigStatus) DeepCopy() *IdentityProviderConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderConfigStatus.
func (*IdentityProviderConfigStatus) DeepCopyInto ¶
func (in *IdentityProviderConfigStatus) DeepCopyInto(out *IdentityProviderConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityProviderConfigStatusType ¶
type IdentityProviderConfigStatusType string
IdentityProviderConfigStatusType is a type of IdentityProviderConfig status.
const ( IdentityProviderConfigStatusCreating IdentityProviderConfigStatusType = "CREATING" IdentityProviderConfigStatusActive IdentityProviderConfigStatusType = "ACTIVE" IdentityProviderConfigStatusDeleting IdentityProviderConfigStatusType = "DELETING" IdentityProviderConfigStatusCreateFailed IdentityProviderConfigStatusType = "CREATE_FAILED" IdentityProviderConfigStatusDeleteFailed IdentityProviderConfigStatusType = "DELETE_FAILED" )
Types of IdentityProviderConfig status.
type IdentityProviderConfigType ¶
type IdentityProviderConfigType string
IdentityProviderConfigType is a type of IdentityProviderConfig
const ( // OidcIdentityProviderConfigType represent an OpenID Connect identity provider. OidcIdentityProviderConfigType IdentityProviderConfigType = "oidc" )
type Issue ¶
type Issue struct {
// A brief description of the error.
//
// * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group associated
// with the managed node group. You may be able to recreate an Auto Scaling
// group with the same settings to recover.
//
// * Ec2SecurityGroupNotFound: We couldn't find the cluster security group
// for the cluster. You must recreate your cluster.
//
// * Ec2SecurityGroupDeletionFailure: We could not delete the remote access
// security group for your managed node group. Remove any dependencies from
// the security group.
//
// * Ec2LaunchTemplateNotFound: We couldn't find the Amazon EC2 launch template
// for your managed node group. You may be able to recreate a launch template
// with the same settings to recover.
//
// * Ec2LaunchTemplateVersionMismatch: The Amazon EC2 launch template version
// for your managed node group does not match the version that Amazon EKS
// created. You may be able to revert to the version that Amazon EKS created
// to recover.
//
// * IamInstanceProfileNotFound: We couldn't find the IAM instance profile
// for your managed node group. You may be able to recreate an instance profile
// with the same settings to recover.
//
// * IamNodeRoleNotFound: We couldn't find the IAM role for your managed
// node group. You may be able to recreate an IAM role with the same settings
// to recover.
//
// * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing failures
// while attempting to launch instances.
//
// * NodeCreationFailure: Your launched instances are unable to register
// with your Amazon EKS cluster. Common causes of this failure are insufficient
// worker node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html)
// permissions or lack of outbound internet access for the nodes.
//
// * InstanceLimitExceeded: Your AWS account is unable to launch any more
// instances of the specified instance type. You may be able to request an
// Amazon EC2 instance limit increase to recover.
//
// * InsufficientFreeAddresses: One or more of the subnets associated with
// your managed node group does not have enough available IP addresses for
// new nodes.
//
// * AccessDenied: Amazon EKS or one or more of your managed nodes is unable
// to communicate with your cluster API server.
//
// * InternalFailure: These errors are usually caused by an Amazon EKS server-side
// issue.
Code string `json:"code,omitempty"`
// The error message associated with the issue.
Message string `json:"message,omitempty"`
// The AWS resources that are afflicted by this issue.
ResourceIDs []string `json:"resourceIds,omitempty"`
}
Issue is an issue with a NodeGroup.
func (*Issue) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Issue.
func (*Issue) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LaunchTemplateSpecification ¶
type LaunchTemplateSpecification struct {
// The ID of the launch template.
ID *string `json:"id,omitempty"`
// The name of the launch template.
// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/ec2/v1alpha1.LaunchTemplate
Name *string `json:"name,omitempty"`
// NameRef is a reference to a LaunchTemplate used to set
// the Name.
// +immutable
// +optional
NameRef *xpv1.Reference `json:"nameRef,omitempty"`
// NameSelector selects references to a LaunchTemplate used
// to set the Name.
// +optional
NameSelector *xpv1.Selector `json:"nameSelector,omitempty"`
// The version of the launch template to use. If no version is specified, then the
// template's default version is used.
// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/ec2/v1alpha1.LaunchTemplateVersion
Version *string `json:"version,omitempty"`
// VersionRef is a reference to a LaunchTemplateVersion used to set
// the Version.
// +immutable
// +optional
VersionRef *xpv1.Reference `json:"versionRef,omitempty"`
// VersionSelector selects references to a LaunchTemplateVersion used
// to set the Version.
// +optional
VersionSelector *xpv1.Selector `json:"versionSelector,omitempty"`
}
LaunchTemplateSpecification is an object representing a node group launch template specification. The launch template cannot include SubnetId (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html), IamInstanceProfile (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IamInstanceProfile.html), RequestSpotInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html), HibernationOptions (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_HibernationOptionsRequest.html), or TerminateInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_TerminateInstances.html), or the node group deployment or update will fail. For more information about launch templates, see CreateLaunchTemplate (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html) in the Amazon EC2 API Reference. For more information about using launch templates with Amazon EKS, see Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) in the Amazon EKS User Guide. Specify either name or id, but not both.
func (*LaunchTemplateSpecification) DeepCopy ¶
func (in *LaunchTemplateSpecification) DeepCopy() *LaunchTemplateSpecification
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LaunchTemplateSpecification.
func (*LaunchTemplateSpecification) DeepCopyInto ¶
func (in *LaunchTemplateSpecification) DeepCopyInto(out *LaunchTemplateSpecification)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroup ¶
type NodeGroup struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NodeGroupSpec `json:"spec"`
Status NodeGroupStatus `json:"status,omitempty"`
}
A NodeGroup is a managed resource that represents an AWS Elastic Kubernetes Service NodeGroup. +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="CLUSTER",type="string",JSONPath=".spec.forProvider.clusterName" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}
func (*NodeGroup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroup.
func (*NodeGroup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeGroup) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NodeGroup) GetCondition ¶
func (mg *NodeGroup) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this NodeGroup.
func (*NodeGroup) GetDeletionPolicy ¶
func (mg *NodeGroup) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this NodeGroup.
func (*NodeGroup) GetManagementPolicies ¶ added in v0.43.0
func (mg *NodeGroup) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this NodeGroup.
func (*NodeGroup) GetProviderConfigReference ¶
GetProviderConfigReference of this NodeGroup.
func (*NodeGroup) GetPublishConnectionDetailsTo ¶
func (mg *NodeGroup) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this NodeGroup.
func (*NodeGroup) GetWriteConnectionSecretToReference ¶
func (mg *NodeGroup) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this NodeGroup.
func (*NodeGroup) ResolveReferences ¶
ResolveReferences of this NodeGroup.
func (*NodeGroup) SetConditions ¶
SetConditions of this NodeGroup.
func (*NodeGroup) SetDeletionPolicy ¶
func (mg *NodeGroup) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this NodeGroup.
func (*NodeGroup) SetManagementPolicies ¶ added in v0.43.0
func (mg *NodeGroup) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this NodeGroup.
func (*NodeGroup) SetProviderConfigReference ¶
SetProviderConfigReference of this NodeGroup.
func (*NodeGroup) SetPublishConnectionDetailsTo ¶
func (mg *NodeGroup) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this NodeGroup.
func (*NodeGroup) SetWriteConnectionSecretToReference ¶
func (mg *NodeGroup) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this NodeGroup.
type NodeGroupHealth ¶
type NodeGroupHealth struct {
// Any issues that are associated with the node group.
Issues []Issue `json:"issues,omitempty"`
}
NodeGroupHealth describes the health of a node group.
func (*NodeGroupHealth) DeepCopy ¶
func (in *NodeGroupHealth) DeepCopy() *NodeGroupHealth
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupHealth.
func (*NodeGroupHealth) DeepCopyInto ¶
func (in *NodeGroupHealth) DeepCopyInto(out *NodeGroupHealth)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupList ¶
type NodeGroupList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NodeGroup `json:"items"`
}
NodeGroupList contains a list of NodeGroup items
func (*NodeGroupList) DeepCopy ¶
func (in *NodeGroupList) DeepCopy() *NodeGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupList.
func (*NodeGroupList) DeepCopyInto ¶
func (in *NodeGroupList) DeepCopyInto(out *NodeGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeGroupList) DeepCopyObject ¶
func (in *NodeGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NodeGroupList) GetItems ¶
func (l *NodeGroupList) GetItems() []resource.Managed
GetItems of this NodeGroupList.
type NodeGroupObservation ¶
type NodeGroupObservation struct {
// The Unix epoch timestamp in seconds for when the managed node group was created.
CreatedAt *metav1.Time `json:"createdAt,omitempty"`
// The health status of the node group. If there are issues with your node group's
// health, they are listed here.
Health NodeGroupHealth `json:"nodeGroupHealth,omitempty"`
// The Unix epoch timestamp in seconds for when the managed node group was last
// modified.
ModifiedAt *metav1.Time `json:"modifiedAt,omitempty"`
// The Amazon Resource Name (ARN) associated with the managed node group.
NodeGroupArn string `json:"nodeGroupArn,omitempty"`
// The Kubernetes version to use for your managed nodes. By default, the Kubernetes
// version of the cluster is used, and this is the only accepted specified value.
Version string `json:"version,omitempty"`
// The AMI version of the Amazon EKS-optimized AMI to use with your node group. By
// default, the latest available AMI version for the node group's current Kubernetes
// version is used. For more information, see Amazon EKS-Optimized Linux AMI Versions
// (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) in
// the Amazon EKS User Guide.
ReleaseVersion string `json:"releaseVersion,omitempty"`
// The resources associated with the node group, such as Auto Scaling groups
// and security groups for remote access.
Resources NodeGroupResources `json:"resources,omitempty"`
// The scaling configuration details for the Auto Scaling group that is created
// for your node group.
ScalingConfig NodeGroupScalingConfigStatus `json:"scalingConfig,omitempty"`
// The current update configuration of the node group
UpdateConfig NodeGroupUpdateConfigStatus `json:"updateConfig,omitempty"`
// The current status of the managed node group.
Status NodeGroupStatusType `json:"status,omitempty"`
}
NodeGroupObservation is the observed state of a NodeGroup.
func (*NodeGroupObservation) DeepCopy ¶
func (in *NodeGroupObservation) DeepCopy() *NodeGroupObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupObservation.
func (*NodeGroupObservation) DeepCopyInto ¶
func (in *NodeGroupObservation) DeepCopyInto(out *NodeGroupObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupParameters ¶
type NodeGroupParameters struct {
// Region is the region you'd like the NodeGroup to be created in.
Region string `json:"region"`
// The AMI type for your node group.
// GPU instance can use
// AL2_x86_64_GPU AMI type,
// which uses the Amazon EKS-optimized Linux AMI with GPU support.
// Non-GPU instances can use
// AL2_x86_64 (default) AMI type,
// which uses the Amazon EKS-optimized Linux AMI or,
// BOTTLEROCKET_ARM_64 AMI type,
// which uses the Amazon Bottlerocket AMI for ARM instances, or
// BOTTLEROCKET_x86_64 AMI type,
// which uses the Amazon Bottlerocket AMI fir x86_64 instances.
//
// +immutable
// +optional
AMIType *string `json:"amiType,omitempty"`
// The name of the cluster to create the node group in.
//
// ClusterName is a required field
// +immutable
// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/eks/v1beta1.Cluster
ClusterName string `json:"clusterName,omitempty"`
// ClusterNameRef is a reference to a Cluster used to set
// the ClusterName.
// +immutable
// +optional
ClusterNameRef *xpv1.Reference `json:"clusterNameRef,omitempty"`
// ClusterNameSelector selects references to a Cluster used
// to set the ClusterName.
// +optional
ClusterNameSelector *xpv1.Selector `json:"clusterNameSelector,omitempty"`
// CapacityType for your node group.
// +kubebuilder:validation:Enum=ON_DEMAND;SPOT
CapacityType *string `json:"capacityType,omitempty"`
// The root device disk size (in GiB) for your node group instances. The default
// disk size is 20 GiB.
// +immutable
// +optional
DiskSize *int32 `json:"diskSize,omitempty"`
// The instance type to use for your node group. Currently, you can specify
// a single instance type for a node group. The default value for this parameter
// is t3.medium. If you choose a GPU instance type, be sure to specify the AL2_x86_64_GPU
// with the amiType parameter.
// +immutable
// +optional
InstanceTypes []string `json:"instanceTypes,omitempty"`
// The Kubernetes labels to be applied to the nodes in the node group when they
// are created.
// +optional
Labels map[string]string `json:"labels,omitempty"`
// An object representing a node group's launch template specification. If
// specified, then do not specify instanceTypes, diskSize, or remoteAccess and make
// sure that the launch template meets the requirements in
// launchTemplateSpecification.
LaunchTemplate *LaunchTemplateSpecification `json:"launchTemplate,omitempty"`
// The Amazon Resource Name (ARN) of the IAM role to associate with your node
// group. The Amazon EKS worker node kubelet daemon makes calls to AWS APIs
// on your behalf. Worker nodes receive permissions for these API calls through
// an IAM instance profile and associated policies. Before you can launch worker
// nodes and register them into a cluster, you must create an IAM role for those
// worker nodes to use when they are launched. For more information, see Amazon
// EKS Worker Node IAM Role (https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html)
// in the Amazon EKS User Guide .
//
// NodeRole is a required field
// +immutable
// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/iam/v1beta1.Role
// +crossplane:generate:reference:extractor=github.com/crossplane-contrib/provider-aws/apis/iam/v1beta1.RoleARN()
NodeRole string `json:"nodeRole,omitempty"`
// NodeRoleRef is a reference to a Cluster used to set the NodeRole.
// +immutable
// +optional
NodeRoleRef *xpv1.Reference `json:"nodeRoleRef,omitempty"`
// NodeRoleSelector selects references to a Cluster used
// to set the NodeRole.
// +optional
NodeRoleSelector *xpv1.Selector `json:"nodeRoleSelector,omitempty"`
// The AMI version of the Amazon EKS-optimized AMI to use with your node group.
// By default, the latest available AMI version for the node group's current
// Kubernetes version is used. For more information, see Amazon EKS-Optimized
// Linux AMI Versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html)
// in the Amazon EKS User Guide.
// +immutable
// +optional
ReleaseVersion *string `json:"releaseVersion,omitempty"`
// The remote access (SSH) configuration to use with your node group.
// +immutable
// +optional
RemoteAccess *RemoteAccessConfig `json:"remoteAccess,omitempty"`
// The scaling configuration details for the Auto Scaling group that is created
// for your node group.
// +optional
ScalingConfig *NodeGroupScalingConfig `json:"scalingConfig,omitempty"`
// The subnets to use for the Auto Scaling group that is created for your node
// group. These subnets must have the tag key kubernetes.io/cluster/CLUSTER_NAME
// with a value of shared, where CLUSTER_NAME is replaced with the name of your
// cluster.
//
// Subnets is a required field
// +immutable
// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/ec2/v1beta1.Subnet
// +crossplane:generate:reference:refFieldName=SubnetRefs
// +crossplane:generate:reference:selectorFieldName=SubnetSelector
Subnets []string `json:"subnets,omitempty"`
// SubnetRefs are references to Subnets used to set the Subnets.
// +immutable
// +optional
SubnetRefs []xpv1.Reference `json:"subnetRefs,omitempty"`
// SubnetSelector selects references to Subnets used to set the Subnets.
// +optional
SubnetSelector *xpv1.Selector `json:"subnetSelector,omitempty"`
// The metadata to apply to the node group to assist with categorization and
// organization. Each tag consists of a key and an optional value, both of which
// you define. Node group tags do not propagate to any other resources associated
// with the node group, such as the Amazon EC2 instances or subnets.
// +optional
Tags map[string]string `json:"tags,omitempty"`
// The Kubernetes taints to be applied to the nodes in the node group.
Taints []Taint `json:"taints,omitempty"`
// Specifies details on how the Nodes in this NodeGroup should be updated.
// +optional
UpdateConfig *NodeGroupUpdateConfig `json:"updateConfig,omitempty"`
// The Kubernetes version to use for your managed nodes. By default, the Kubernetes
// version of the cluster is used, and this is the only accepted specified value.
// +optional
Version *string `json:"version,omitempty"`
}
NodeGroupParameters define the desired state of an AWS Elastic Kubernetes Service NodeGroup.
func (*NodeGroupParameters) DeepCopy ¶
func (in *NodeGroupParameters) DeepCopy() *NodeGroupParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupParameters.
func (*NodeGroupParameters) DeepCopyInto ¶
func (in *NodeGroupParameters) DeepCopyInto(out *NodeGroupParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupResources ¶
type NodeGroupResources struct {
// The Auto Scaling groups associated with the node group.
AutoScalingGroups []AutoScalingGroup `json:"autoScalingGroup,omitempty"`
// The remote access security group associated with the node group. This security
// group controls SSH access to the worker nodes.
RemoteAccessSecurityGroup string `json:"remoteAccessSecurityGroup,omitempty"`
}
NodeGroupResources describe resources in a NodeGroup.
func (*NodeGroupResources) DeepCopy ¶
func (in *NodeGroupResources) DeepCopy() *NodeGroupResources
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupResources.
func (*NodeGroupResources) DeepCopyInto ¶
func (in *NodeGroupResources) DeepCopyInto(out *NodeGroupResources)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupScalingConfig ¶
type NodeGroupScalingConfig struct {
// The current number of worker nodes that the managed node group should maintain.
// This value should be left unset if another controller, such as cluster-autoscaler,
// is expected to manage the desired size of the node group. If not set, the initial
// desired size will be the configured minimum size of the node group.
// +optional
DesiredSize *int32 `json:"desiredSize,omitempty"`
// The maximum number of worker nodes that the managed node group can scale
// out to. Managed node groups can support up to 100 nodes by default.
// +optional
MaxSize *int32 `json:"maxSize,omitempty"`
// The minimum number of worker nodes that the managed node group can scale
// in to. This number must be greater than zero.
// +optional
MinSize *int32 `json:"minSize,omitempty"`
}
NodeGroupScalingConfig is the configuration for scaling a node group.
func (*NodeGroupScalingConfig) DeepCopy ¶
func (in *NodeGroupScalingConfig) DeepCopy() *NodeGroupScalingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupScalingConfig.
func (*NodeGroupScalingConfig) DeepCopyInto ¶
func (in *NodeGroupScalingConfig) DeepCopyInto(out *NodeGroupScalingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupScalingConfigStatus ¶
type NodeGroupScalingConfigStatus struct {
// The current number of worker nodes for the managed node group.
DesiredSize *int32 `json:"desiredSize,omitempty"`
}
NodeGroupScalingConfigStatus is the observed scaling configuration for a node group.
func (*NodeGroupScalingConfigStatus) DeepCopy ¶
func (in *NodeGroupScalingConfigStatus) DeepCopy() *NodeGroupScalingConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupScalingConfigStatus.
func (*NodeGroupScalingConfigStatus) DeepCopyInto ¶
func (in *NodeGroupScalingConfigStatus) DeepCopyInto(out *NodeGroupScalingConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupSpec ¶
type NodeGroupSpec struct {
xpv1.ResourceSpec `json:",inline"`
ForProvider NodeGroupParameters `json:"forProvider"`
}
A NodeGroupSpec defines the desired state of an EKS NodeGroup.
func (*NodeGroupSpec) DeepCopy ¶
func (in *NodeGroupSpec) DeepCopy() *NodeGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupSpec.
func (*NodeGroupSpec) DeepCopyInto ¶
func (in *NodeGroupSpec) DeepCopyInto(out *NodeGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupStatus ¶
type NodeGroupStatus struct {
xpv1.ResourceStatus `json:",inline"`
AtProvider NodeGroupObservation `json:"atProvider,omitempty"`
}
A NodeGroupStatus represents the observed state of an EKS NodeGroup.
func (*NodeGroupStatus) DeepCopy ¶
func (in *NodeGroupStatus) DeepCopy() *NodeGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupStatus.
func (*NodeGroupStatus) DeepCopyInto ¶
func (in *NodeGroupStatus) DeepCopyInto(out *NodeGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupStatusType ¶
type NodeGroupStatusType string
NodeGroupStatusType is a type of NodeGroup status.
const ( NodeGroupStatusCreating NodeGroupStatusType = "CREATING" NodeGroupStatusActive NodeGroupStatusType = "ACTIVE" NodeGroupStatusUpdating NodeGroupStatusType = "UPDATING" NodeGroupStatusDeleting NodeGroupStatusType = "DELETING" NodeGroupStatusCreateFailed NodeGroupStatusType = "CREATE_FAILED" NodeGroupStatusDeleteFailed NodeGroupStatusType = "DELETE_FAILED" NodeGroupStatusDegraded NodeGroupStatusType = "DEGRADED" )
Types of NodeGroup status.
type NodeGroupUpdateConfig ¶ added in v0.32.0
type NodeGroupUpdateConfig struct {
// Nodes will be updated in parallel. The maximum number is 100.
// This value or maxUnavailablePercentage is required to have a value, but
// not both.
// +kubebuilder:validation:Minimum:=1
// +kubebuilder:validation:Maximum:=100
// +optional
MaxUnavailable *int32 `json:"maxUnavailable,omitempty"`
// percentage of nodes will be updated in parallel, up to 100 nodes at once.
// This value or maxUnavailable is required to have a value, but not both.
// +kubebuilder:validation:Minimum:=1
// +kubebuilder:validation:Maximum:=100
// +optional
MaxUnavailablePercentage *int32 `json:"maxUnavailablePercentage,omitempty"`
// Force the update if the existing node group's pods are unable to be
// drained due to a pod disruption budget issue. If an update fails because
// pods could not be drained, you can force the update after it fails to
// terminate the old node whether any pods are running on the node.
// +optional
Force *bool `json:"force,omitempty"`
}
NodeGroupUpdateConfig specifies how an Update to the NodeGroup should be performed.
func (*NodeGroupUpdateConfig) DeepCopy ¶ added in v0.32.0
func (in *NodeGroupUpdateConfig) DeepCopy() *NodeGroupUpdateConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupUpdateConfig.
func (*NodeGroupUpdateConfig) DeepCopyInto ¶ added in v0.32.0
func (in *NodeGroupUpdateConfig) DeepCopyInto(out *NodeGroupUpdateConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupUpdateConfigStatus ¶ added in v0.32.0
type NodeGroupUpdateConfigStatus struct {
// +optional
MaxUnavailable *int32 `json:"maxUnavailable,omitempty"`
// update. This percentage of nodes will be updated in parallel.
// +optional
MaxUnavailablePercentage *int32 `json:"maxUnavailablePercentage,omitempty"`
}
NodeGroupUpdateConfigStatus is the observed update configuration for a node group.
func (*NodeGroupUpdateConfigStatus) DeepCopy ¶ added in v0.32.0
func (in *NodeGroupUpdateConfigStatus) DeepCopy() *NodeGroupUpdateConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupUpdateConfigStatus.
func (*NodeGroupUpdateConfigStatus) DeepCopyInto ¶ added in v0.32.0
func (in *NodeGroupUpdateConfigStatus) DeepCopyInto(out *NodeGroupUpdateConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OIDCIdentityProvider ¶
type OIDCIdentityProvider struct {
// This is also known as audience. The ID for the client application that makes
// authentication requests to the OpenID identity provider.
// +immutable
ClientID string `json:"clientId"`
// The URL of the OpenID identity provider that allows the API server to discover
// public signing keys for verifying tokens. The URL must begin with https:// and
// should correspond to the iss claim in the provider's OIDC ID tokens. Per the
// OIDC standard, path components are allowed but query parameters are not.
// Typically the URL consists of only a hostname, like https://server.example.org
// or https://example.com. This URL should point to the level below
// .well-known/openid-configuration and must be publicly accessible over the
// internet.
// +immutable
IssuerURL string `json:"issuerUrl"`
// The JWT claim that the provider uses to return your groups.
// +immutable
// +optional
GroupsClaim string `json:"groupsClaim,omitempty"`
// The prefix that is prepended to group claims to prevent clashes with existing
// names (such as system: groups). For example, the value oidc: will create group
// names like oidc:engineering and oidc:infra.
// +immutable
// +optional
GroupsPrefix string `json:"groupsPrefix,omitempty"`
// The key value pairs that describe required claims in the identity token. If set,
// each claim is verified to be present in the token with a matching value. For the
// maximum number of claims that you can require, see Amazon EKS service quotas
// (https://docs.aws.amazon.com/eks/latest/userguide/service-quotas.html) in the
// Amazon EKS User Guide.
// +immutable
// +optional
RequiredClaims map[string]string `json:"requiredClaims,omitempty"`
// The JSON Web Token (JWT) claim to use as the username. The default is sub, which
// is expected to be a unique identifier of the end user. You can choose other
// claims, such as email or name, depending on the OpenID identity provider. Claims
// other than email are prefixed with the issuer URL to prevent naming clashes with
// other plug-ins.
// +immutable
// +optional
UsernameClaim string `json:"usernameClaim,omitempty"`
// The prefix that is prepended to username claims to prevent clashes with existing
// names. If you do not provide this field, and username is a value other than
// email, the prefix defaults to issuerurl#. You can use the value - to disable all
// prefixing.
// +optional
UsernamePrefix string `json:"usernamePrefix,omitempty"`
}
OIDCIdentityProvider describes an OpenID identity provider configuration
func (*OIDCIdentityProvider) DeepCopy ¶
func (in *OIDCIdentityProvider) DeepCopy() *OIDCIdentityProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OIDCIdentityProvider.
func (*OIDCIdentityProvider) DeepCopyInto ¶
func (in *OIDCIdentityProvider) DeepCopyInto(out *OIDCIdentityProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RemoteAccessConfig ¶
type RemoteAccessConfig struct {
// The Amazon EC2 SSH key that provides access for SSH communication with the
// worker nodes in the managed node group. For more information, see Amazon
// EC2 Key Pairs (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html)
// in the Amazon Elastic Compute Cloud User Guide for Linux Instances.
EC2SSHKey *string `json:"ec2SSHKey,omitempty"`
// The security groups that are allowed SSH access (port 22) to the worker nodes.
// If you specify an Amazon EC2 SSH key but do not specify a source security
// group when you create a managed node group, then port 22 on the worker nodes
// is opened to the internet (0.0.0.0/0). For more information, see Security
// Groups for Your VPC (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html)
// in the Amazon Virtual Private Cloud User Guide.
// +optional
// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/ec2/v1beta1.SecurityGroup
// +crossplane:generate:reference:refFieldName=SourceSecurityGroupRefs
// +crossplane:generate:reference:selectorFieldName=SourceSecurityGroupSelector
SourceSecurityGroups []string `json:"sourceSecurityGroups,omitempty"`
// SourceSecurityGroupRefs are references to SecurityGroups used to set
// the SourceSecurityGroups.
// +optional
SourceSecurityGroupRefs []xpv1.Reference `json:"sourceSecurityGroupRefs,omitempty"`
// SourceSecurityGroupSelector selects references to SecurityGroups used
// to set the SourceSecurityGroups.
// +optional
SourceSecurityGroupSelector *xpv1.Selector `json:"sourceSecurityGroupSelector,omitempty"`
}
RemoteAccessConfig is the configuration for remotely accessing a node.
func (*RemoteAccessConfig) DeepCopy ¶
func (in *RemoteAccessConfig) DeepCopy() *RemoteAccessConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteAccessConfig.
func (*RemoteAccessConfig) DeepCopyInto ¶
func (in *RemoteAccessConfig) DeepCopyInto(out *RemoteAccessConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Taint ¶
type Taint struct {
// The effect of the taint.
// +kubebuilder:validation:Enum=NO_SCHEDULE;NO_EXECUTE;PREFER_NO_SCHEDULE
Effect string `json:"effect"`
// The key of the taint.
Key *string `json:"key,omitempty"`
// The value of the taint.
Value *string `json:"value,omitempty"`
}
Taint is a property that allows a node to repel a set of pods.
func (*Taint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Taint.
func (*Taint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.