Documentation ¶
Overview ¶
Package scope provides a global scope for CAPA controllers.
Index ¶
- Constants
- Variables
- func GenerateProviderID(ids ...string) string
- func NewASGClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) autoscalingiface.AutoScalingAPI
- func NewEC2Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) ec2iface.EC2API
- func NewEKSClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) eksiface.EKSAPI
- func NewELBClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) elbiface.ELBAPI
- func NewELBv2Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) elbv2iface.ELBV2API
- func NewEventBridgeClient(scopeUser cloud.ScopeUsage, session cloud.Session, target runtime.Object) eventbridgeiface.EventBridgeAPI
- func NewGlobalSQSClient(scopeUser cloud.ScopeUsage, session cloud.Session) sqsiface.SQSAPI
- func NewIAMClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) iamiface.IAMAPI
- func NewResourgeTaggingClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) resourcegroupstaggingapiiface.ResourceGroupsTaggingAPIAPI
- func NewS3Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) s3iface.S3API
- func NewSQSClient(scopeUser cloud.ScopeUsage, session cloud.Session, target runtime.Object) sqsiface.SQSAPI
- func NewSSMClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) ssmiface.SSMAPI
- func NewSTSClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) stsiface.STSAPI
- func NewSecretsManagerClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, ...) secretsmanageriface.SecretsManagerAPI
- type AWSClients
- type AWSNodeScope
- type ClusterScope
- func (s *ClusterScope) APIServerPort() int32
- func (s *ClusterScope) AdditionalControlPlaneIngressRules() []infrav1.IngressRule
- func (s *ClusterScope) AdditionalTags() infrav1.Tags
- func (s *ClusterScope) AllSecondaryCidrBlocks() []infrav1.VpcCidrBlock
- func (s *ClusterScope) Bastion() *infrav1.Bastion
- func (s *ClusterScope) Bucket() *infrav1.S3Bucket
- func (s *ClusterScope) CNIIngressRules() infrav1.CNIIngressRules
- func (s *ClusterScope) Close() error
- func (s *ClusterScope) ClusterObj() cloud.ClusterObject
- func (s *ClusterScope) ControlPlaneConfigMapName() string
- func (s *ClusterScope) ControlPlaneEndpoint() clusterv1.APIEndpoint
- func (s *ClusterScope) ControlPlaneLoadBalancer() *infrav1.AWSLoadBalancerSpec
- func (s *ClusterScope) ControlPlaneLoadBalancerName() *string
- func (s *ClusterScope) ControlPlaneLoadBalancerScheme() infrav1.ELBScheme
- func (s *ClusterScope) ControlPlaneLoadBalancers() []*infrav1.AWSLoadBalancerSpec
- func (s *ClusterScope) ControllerName() string
- func (s *ClusterScope) GetNatGatewaysIPs() []string
- func (s *ClusterScope) IdentityRef() *infrav1.AWSIdentityReference
- func (s *ClusterScope) ImageLookupBaseOS() string
- func (s *ClusterScope) ImageLookupFormat() string
- func (s *ClusterScope) ImageLookupOrg() string
- func (s *ClusterScope) InfraCluster() cloud.ClusterObject
- func (s *ClusterScope) InfraClusterName() string
- func (s *ClusterScope) KubernetesClusterName() string
- func (s *ClusterScope) ListOptionsLabelSelector() client.ListOption
- func (s *ClusterScope) Name() string
- func (s *ClusterScope) Namespace() string
- func (s *ClusterScope) Network() *infrav1.NetworkStatus
- func (s *ClusterScope) NodePortIngressRuleCidrBlocks() []string
- func (s *ClusterScope) Partition() string
- func (s *ClusterScope) PatchObject() error
- func (s *ClusterScope) Region() string
- func (s *ClusterScope) SSHKeyName() *string
- func (s *ClusterScope) SecondaryCidrBlock() *string
- func (s *ClusterScope) SecondaryCidrBlocks() []infrav1.VpcCidrBlock
- func (s *ClusterScope) SecurityGroupOverrides() map[infrav1.SecurityGroupRole]string
- func (s *ClusterScope) SecurityGroups() map[infrav1.SecurityGroupRole]infrav1.SecurityGroup
- func (s *ClusterScope) ServiceLimiter(service string) *throttle.ServiceLimiter
- func (s *ClusterScope) Session() awsclient.ConfigProvider
- func (s *ClusterScope) SetBastionInstance(instance *infrav1.Instance)
- func (s *ClusterScope) SetFailureDomain(id string, spec clusterv1.FailureDomainSpec)
- func (s *ClusterScope) SetNatGatewaysIPs(ips []string)
- func (s *ClusterScope) SetSubnets(subnets infrav1.Subnets)
- func (s *ClusterScope) Subnets() infrav1.Subnets
- func (s *ClusterScope) TagUnmanagedNetworkResources() bool
- func (s *ClusterScope) UnstructuredControlPlane() (*unstructured.Unstructured, error)
- func (s *ClusterScope) VPC() *infrav1.VPCSpec
- type ClusterScopeGetter
- type ClusterScopeGetterFunc
- type ClusterScopeParams
- type EC2Scope
- type ELBScope
- type FargateProfileScope
- func (s *FargateProfileScope) AdditionalTags() infrav1.Tags
- func (s *FargateProfileScope) Close() error
- func (s *FargateProfileScope) ClusterName() string
- func (s *FargateProfileScope) ClusterObj() cloud.ClusterObject
- func (s *FargateProfileScope) ControlPlaneSubnets() *infrav1.Subnets
- func (s *FargateProfileScope) ControllerName() string
- func (s *FargateProfileScope) EnableIAM() bool
- func (s *FargateProfileScope) IAMReadyFalse(reason string, err string) error
- func (s *FargateProfileScope) InfraCluster() cloud.ClusterObject
- func (s *FargateProfileScope) KubernetesClusterName() string
- func (s *FargateProfileScope) ManagedPoolName() string
- func (s *FargateProfileScope) Partition() string
- func (s *FargateProfileScope) PatchObject() error
- func (s *FargateProfileScope) RoleName() string
- func (s *FargateProfileScope) ServiceLimiter(service string) *throttle.ServiceLimiter
- func (s *FargateProfileScope) Session() awsclient.ConfigProvider
- func (s *FargateProfileScope) SubnetIDs() []string
- type FargateProfileScopeParams
- type GlobalScope
- type GlobalScopeParams
- type IAMAuthScope
- type KubeProxyScope
- type LaunchTemplateScope
- type MachinePoolScope
- func (m *MachinePoolScope) AdditionalTags() infrav1.Tags
- func (m *MachinePoolScope) Close() error
- func (m *MachinePoolScope) GetASGStatus() *expinfrav1.ASGStatus
- func (m *MachinePoolScope) GetEC2Scope() EC2Scope
- func (m *MachinePoolScope) GetLaunchTemplate() *expinfrav1.AWSLaunchTemplate
- func (m *MachinePoolScope) GetLaunchTemplateIDStatus() string
- func (m *MachinePoolScope) GetLaunchTemplateLatestVersionStatus() string
- func (m *MachinePoolScope) GetMachinePool() *expclusterv1.MachinePool
- func (m *MachinePoolScope) GetObjectMeta() *metav1.ObjectMeta
- func (m *MachinePoolScope) GetProviderID() string
- func (m *MachinePoolScope) GetRawBootstrapData() ([]byte, *types.NamespacedName, error)
- func (m *MachinePoolScope) GetRuntimeObject() runtime.Object
- func (m *MachinePoolScope) GetSetter() conditions.Setter
- func (m *MachinePoolScope) HasFailed() bool
- func (m *MachinePoolScope) IsEKSManaged() bool
- func (m *MachinePoolScope) LaunchTemplateName() string
- func (m *MachinePoolScope) Name() string
- func (m *MachinePoolScope) Namespace() string
- func (m *MachinePoolScope) PatchCAPIMachinePoolObject(ctx context.Context) error
- func (m *MachinePoolScope) PatchObject() error
- func (m *MachinePoolScope) SetASGStatus(v expinfrav1.ASGStatus)
- func (m *MachinePoolScope) SetAnnotation(key, value string)
- func (m *MachinePoolScope) SetFailureMessage(v error)
- func (m *MachinePoolScope) SetFailureReason(v capierrors.MachineStatusError)
- func (m *MachinePoolScope) SetLaunchTemplateIDStatus(id string)
- func (m *MachinePoolScope) SetLaunchTemplateLatestVersionStatus(version string)
- func (m *MachinePoolScope) SetNotReady()
- func (m *MachinePoolScope) SubnetIDs(subnetIDs []string) ([]string, error)
- func (m *MachinePoolScope) UpdateInstanceStatuses(ctx context.Context, instances []infrav1.Instance) error
- type MachinePoolScopeParams
- type MachineScope
- func (m *MachineScope) AWSMachineIsDeleted() bool
- func (m *MachineScope) AdditionalTags() infrav1.Tags
- func (m *MachineScope) Close() error
- func (m *MachineScope) CompressUserData(userDataFormat string) bool
- func (m *MachineScope) DeleteSecretPrefix()
- func (m *MachineScope) GetBootstrapData() (string, error)
- func (m *MachineScope) GetElasticIPPool() *infrav1.ElasticIPPool
- func (m *MachineScope) GetInstanceID() *string
- func (m *MachineScope) GetInstanceState() *infrav1.InstanceState
- func (m *MachineScope) GetProviderID() string
- func (m *MachineScope) GetRawBootstrapData() ([]byte, error)
- func (m *MachineScope) GetRawBootstrapDataWithFormat() ([]byte, string, error)
- func (m *MachineScope) GetSecretCount() int32
- func (m *MachineScope) GetSecretPrefix() string
- func (m *MachineScope) HasFailed() bool
- func (m *MachineScope) InstanceIsInKnownState() bool
- func (m *MachineScope) InstanceIsOperational() bool
- func (m *MachineScope) InstanceIsRunning() bool
- func (m *MachineScope) IsControlPlane() bool
- func (m *MachineScope) IsControlPlaneExternallyManaged() bool
- func (m *MachineScope) IsEKSManaged() bool
- func (m *MachineScope) IsExternallyManaged() bool
- func (m *MachineScope) MachineIsDeleted() bool
- func (m *MachineScope) Name() string
- func (m *MachineScope) Namespace() string
- func (m *MachineScope) PatchObject() error
- func (m *MachineScope) Role() string
- func (m *MachineScope) SecureSecretsBackend() infrav1.SecretBackend
- func (m *MachineScope) SetAddresses(addrs []clusterv1.MachineAddress)
- func (m *MachineScope) SetAnnotation(key, value string)
- func (m *MachineScope) SetFailureMessage(v error)
- func (m *MachineScope) SetFailureReason(v capierrors.MachineStatusError)
- func (m *MachineScope) SetInstanceID(instanceID string)
- func (m *MachineScope) SetInstanceState(v infrav1.InstanceState)
- func (m *MachineScope) SetInterruptible()
- func (m *MachineScope) SetNotReady()
- func (m *MachineScope) SetProviderID(instanceID, availabilityZone string)
- func (m *MachineScope) SetReady()
- func (m *MachineScope) SetSecretCount(i int32)
- func (m *MachineScope) SetSecretPrefix(value string)
- func (m *MachineScope) UseIgnition(userDataFormat string) bool
- func (m *MachineScope) UseSecretsManager(userDataFormat string) bool
- type MachineScopeGetter
- type MachineScopeGetterFunc
- type MachineScopeParams
- type ManagedControlPlaneScope
- func (s *ManagedControlPlaneScope) APIServerPort() int32
- func (s *ManagedControlPlaneScope) AdditionalControlPlaneIngressRules() []infrav1.IngressRule
- func (s *ManagedControlPlaneScope) AdditionalTags() infrav1.Tags
- func (s *ManagedControlPlaneScope) Addons() []ekscontrolplanev1.Addon
- func (s *ManagedControlPlaneScope) AllSecondaryCidrBlocks() []infrav1.VpcCidrBlock
- func (s *ManagedControlPlaneScope) AllowAdditionalRoles() bool
- func (s *ManagedControlPlaneScope) Bastion() *infrav1.Bastion
- func (s *ManagedControlPlaneScope) Bucket() *infrav1.S3Bucket
- func (s *ManagedControlPlaneScope) CNIIngressRules() infrav1.CNIIngressRules
- func (s *ManagedControlPlaneScope) Close() error
- func (s *ManagedControlPlaneScope) ClusterObj() cloud.ClusterObject
- func (s *ManagedControlPlaneScope) ControlPlaneLoadBalancer() *infrav1.AWSLoadBalancerSpec
- func (s *ManagedControlPlaneScope) ControlPlaneLoadBalancers() []*infrav1.AWSLoadBalancerSpec
- func (s *ManagedControlPlaneScope) ControllerName() string
- func (s *ManagedControlPlaneScope) DisableKubeProxy() bool
- func (s *ManagedControlPlaneScope) DisableVPCCNI() bool
- func (s *ManagedControlPlaneScope) EnableIAM() bool
- func (s *ManagedControlPlaneScope) GetNatGatewaysIPs() []string
- func (s *ManagedControlPlaneScope) IAMAuthConfig() *ekscontrolplanev1.IAMAuthenticatorConfig
- func (s *ManagedControlPlaneScope) IdentityRef() *infrav1.AWSIdentityReference
- func (s *ManagedControlPlaneScope) ImageLookupBaseOS() string
- func (s *ManagedControlPlaneScope) ImageLookupFormat() string
- func (s *ManagedControlPlaneScope) ImageLookupOrg() string
- func (s *ManagedControlPlaneScope) InfraCluster() cloud.ClusterObject
- func (s *ManagedControlPlaneScope) InfraClusterName() string
- func (s *ManagedControlPlaneScope) KubernetesClusterName() string
- func (s *ManagedControlPlaneScope) ListOptionsLabelSelector() client.ListOption
- func (s *ManagedControlPlaneScope) Name() string
- func (s *ManagedControlPlaneScope) Namespace() string
- func (s *ManagedControlPlaneScope) Network() *infrav1.NetworkStatus
- func (s *ManagedControlPlaneScope) NodePortIngressRuleCidrBlocks() []string
- func (s *ManagedControlPlaneScope) OIDCIdentityProviderConfig() *ekscontrolplanev1.OIDCIdentityProviderConfig
- func (s *ManagedControlPlaneScope) Partition() string
- func (s *ManagedControlPlaneScope) PatchObject() error
- func (s *ManagedControlPlaneScope) Region() string
- func (s *ManagedControlPlaneScope) RemoteClient() (client.Client, error)
- func (s *ManagedControlPlaneScope) RestrictPrivateSubnets() bool
- func (s *ManagedControlPlaneScope) SSHKeyName() *string
- func (s *ManagedControlPlaneScope) SecondaryCidrBlock() *string
- func (s *ManagedControlPlaneScope) SecondaryCidrBlocks() []infrav1.VpcCidrBlock
- func (s *ManagedControlPlaneScope) SecurityGroupOverrides() map[infrav1.SecurityGroupRole]string
- func (s *ManagedControlPlaneScope) SecurityGroups() map[infrav1.SecurityGroupRole]infrav1.SecurityGroup
- func (s *ManagedControlPlaneScope) ServiceCidrs() *clusterv1.NetworkRanges
- func (s *ManagedControlPlaneScope) ServiceLimiter(service string) *throttle.ServiceLimiter
- func (s *ManagedControlPlaneScope) Session() awsclient.ConfigProvider
- func (s *ManagedControlPlaneScope) SetBastionInstance(instance *infrav1.Instance)
- func (s *ManagedControlPlaneScope) SetFailureDomain(id string, spec clusterv1.FailureDomainSpec)
- func (s *ManagedControlPlaneScope) SetNatGatewaysIPs(ips []string)
- func (s *ManagedControlPlaneScope) SetSubnets(subnets infrav1.Subnets)
- func (s *ManagedControlPlaneScope) Subnets() infrav1.Subnets
- func (s *ManagedControlPlaneScope) TagUnmanagedNetworkResources() bool
- func (s *ManagedControlPlaneScope) TokenMethod() ekscontrolplanev1.EKSTokenMethod
- func (s *ManagedControlPlaneScope) UnstructuredControlPlane() (*unstructured.Unstructured, error)
- func (s *ManagedControlPlaneScope) VPC() *infrav1.VPCSpec
- func (s *ManagedControlPlaneScope) VpcCni() ekscontrolplanev1.VpcCni
- type ManagedControlPlaneScopeParams
- type ManagedMachinePoolScope
- func (s *ManagedMachinePoolScope) AdditionalTags() infrav1.Tags
- func (s *ManagedMachinePoolScope) AllowAdditionalRoles() bool
- func (s *ManagedMachinePoolScope) Close() error
- func (s *ManagedMachinePoolScope) ClusterName() string
- func (s *ManagedMachinePoolScope) ClusterObj() cloud.ClusterObject
- func (s *ManagedMachinePoolScope) ControlPlaneSubnets() infrav1.Subnets
- func (s *ManagedMachinePoolScope) ControllerName() string
- func (s *ManagedMachinePoolScope) EnableIAM() bool
- func (s *ManagedMachinePoolScope) GetEC2Scope() EC2Scope
- func (s *ManagedMachinePoolScope) GetLaunchTemplate() *expinfrav1.AWSLaunchTemplate
- func (s *ManagedMachinePoolScope) GetLaunchTemplateIDStatus() string
- func (s *ManagedMachinePoolScope) GetLaunchTemplateLatestVersionStatus() string
- func (s *ManagedMachinePoolScope) GetMachinePool() *expclusterv1.MachinePool
- func (s *ManagedMachinePoolScope) GetObjectMeta() *metav1.ObjectMeta
- func (s *ManagedMachinePoolScope) GetRawBootstrapData() ([]byte, *types.NamespacedName, error)
- func (s *ManagedMachinePoolScope) GetRuntimeObject() runtime.Object
- func (s *ManagedMachinePoolScope) GetSetter() conditions.Setter
- func (s *ManagedMachinePoolScope) IAMReadyFalse(reason string, err string) error
- func (s *ManagedMachinePoolScope) IdentityRef() *infrav1.AWSIdentityReference
- func (s *ManagedMachinePoolScope) InfraCluster() cloud.ClusterObject
- func (s *ManagedMachinePoolScope) IsEKSManaged() bool
- func (s *ManagedMachinePoolScope) KubernetesClusterName() string
- func (s *ManagedMachinePoolScope) LaunchTemplateName() string
- func (s *ManagedMachinePoolScope) ManagedPoolName() string
- func (s *ManagedMachinePoolScope) Name() string
- func (s *ManagedMachinePoolScope) Namespace() string
- func (s *ManagedMachinePoolScope) NodegroupName() string
- func (s *ManagedMachinePoolScope) NodegroupReadyFalse(reason string, err string) error
- func (s *ManagedMachinePoolScope) Partition() string
- func (s *ManagedMachinePoolScope) PatchCAPIMachinePoolObject(ctx context.Context) error
- func (s *ManagedMachinePoolScope) PatchObject() error
- func (s *ManagedMachinePoolScope) RoleName() string
- func (s *ManagedMachinePoolScope) ServiceLimiter(service string) *throttle.ServiceLimiter
- func (s *ManagedMachinePoolScope) Session() awsclient.ConfigProvider
- func (s *ManagedMachinePoolScope) SetLaunchTemplateIDStatus(id string)
- func (s *ManagedMachinePoolScope) SetLaunchTemplateLatestVersionStatus(version string)
- func (s *ManagedMachinePoolScope) SubnetIDs() ([]string, error)
- func (s *ManagedMachinePoolScope) Version() *string
- type ManagedMachinePoolScopeParams
- type NetworkScope
- type NodeStatus
- type ProviderID
- func (p *ProviderID) CloudProvider() stringdeprecated
- func (p *ProviderID) Equals(o *ProviderID) booldeprecated
- func (p *ProviderID) ID() stringdeprecated
- func (p *ProviderID) IndexKey() stringdeprecated
- func (p ProviderID) String() stringdeprecated
- func (p *ProviderID) Validate() booldeprecated
- type ROSAControlPlaneScope
- func (s *ROSAControlPlaneScope) Close() error
- func (s *ROSAControlPlaneScope) ClusterAdminPasswordSecret() *corev1.Secret
- func (s *ROSAControlPlaneScope) ControllerName() string
- func (s *ROSAControlPlaneScope) CredentialsSecret() *corev1.Secret
- func (s *ROSAControlPlaneScope) ExternalAuthBootstrapKubeconfigSecret() *corev1.Secret
- func (s *ROSAControlPlaneScope) IdentityRef() *infrav1.AWSIdentityReference
- func (s *ROSAControlPlaneScope) InfraCluster() cloud.ClusterObject
- func (s *ROSAControlPlaneScope) InfraClusterName() string
- func (s *ROSAControlPlaneScope) Name() string
- func (s *ROSAControlPlaneScope) Namespace() string
- func (s *ROSAControlPlaneScope) PatchObject() error
- func (s *ROSAControlPlaneScope) RosaClusterName() string
- func (s *ROSAControlPlaneScope) ServiceLimiter(service string) *throttle.ServiceLimiter
- func (s *ROSAControlPlaneScope) Session() awsclient.ConfigProvider
- type ROSAControlPlaneScopeParams
- type ResourceService
- type ResourceServiceToUpdate
- type RosaMachinePoolScope
- func (s *RosaMachinePoolScope) Close() error
- func (s *RosaMachinePoolScope) ClusterObj() cloud.ClusterObject
- func (s *RosaMachinePoolScope) ControlPlaneSubnets() []string
- func (s *RosaMachinePoolScope) ControllerName() string
- func (s *RosaMachinePoolScope) GetSetter() conditions.Setter
- func (s *RosaMachinePoolScope) IdentityRef() *v1beta2.AWSIdentityReference
- func (s *RosaMachinePoolScope) InfraCluster() cloud.ClusterObject
- func (s *RosaMachinePoolScope) InfraClusterName() string
- func (s *RosaMachinePoolScope) Namespace() string
- func (s *RosaMachinePoolScope) NodePoolName() string
- func (s *RosaMachinePoolScope) PatchCAPIMachinePoolObject(ctx context.Context) error
- func (s *RosaMachinePoolScope) PatchObject() error
- func (s *RosaMachinePoolScope) RosaClusterName() string
- func (s *RosaMachinePoolScope) RosaMachinePoolName() string
- func (s *RosaMachinePoolScope) RosaMchinePoolReadyFalse(reason string, err string) error
- func (s *RosaMachinePoolScope) ServiceLimiter(service string) *throttle.ServiceLimiter
- func (s *RosaMachinePoolScope) Session() awsclient.ConfigProvider
- type RosaMachinePoolScopeParams
- type S3Scope
- type SGScope
- type ServiceEndpoint
Constants ¶
const ProviderIDPrefix = "aws://"
ProviderIDPrefix is the prefix of AWS resource IDs to form the Kubernetes Provider ID. NOTE: this format matches the 2 slashes format used in cloud-provider and cluster-autoscaler.
Variables ¶
var ( // DefaultClusterScopeGetter defines the default cluster scope getter. DefaultClusterScopeGetter ClusterScopeGetter = ClusterScopeGetterFunc(NewClusterScope) // DefaultMachineScopeGetter defines the default machine scope getter. DefaultMachineScopeGetter MachineScopeGetter = MachineScopeGetterFunc(NewMachineScope) )
var ( // ErrEmptyProviderID means that the provider id is empty. // // Deprecated: This var is going to be removed in a future release. ErrEmptyProviderID = errors.New("providerID is empty") // ErrInvalidProviderID means that the provider id has an invalid form. // // Deprecated: This var is going to be removed in a future release. ErrInvalidProviderID = errors.New("providerID must be of the form <cloudProvider>://<optional>/<segments>/<provider id>") )
Copied from https://github.com/kubernetes-sigs/cluster-api/blob/bda002f52575eeaff68da1ba33c8ef27d5b1014c/controllers/noderefutil/providerid.go As this is removed by https://github.com/kubernetes-sigs/cluster-api/pull/9136
var ( // ErrAZSubnetsNotFound is an error when a availability zone is specified but there are // no matching subnets for that availability zone (a.k.a. fault domain). ErrAZSubnetsNotFound = errors.New("no subnets found for supplied availability zone") // ErrLoggerRequired is an error if a logger isn't specified. ErrLoggerRequired = errors.New("logger is required") // ErrNotPlaced is an error if there is no placement determined. ErrNotPlaced = errors.New("placement not determined") )
var SessionInterface interface {
}
SessionInterface is the interface for AWSCluster and ManagedCluster to be used to get session using identityRef.
Functions ¶
func GenerateProviderID ¶ added in v2.4.1
GenerateProviderID generates a valid AWS Node/Machine ProviderID field.
By default, the last id provided is used as identifier (last part).
func NewASGClient ¶
func NewASGClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) autoscalingiface.AutoScalingAPI
NewASGClient creates a new ASG API client for a given session.
func NewEC2Client ¶
func NewEC2Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) ec2iface.EC2API
NewEC2Client creates a new EC2 API client for a given session.
func NewEKSClient ¶
func NewEKSClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) eksiface.EKSAPI
NewEKSClient creates a new EKS API client for a given session.
func NewELBClient ¶
func NewELBClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) elbiface.ELBAPI
NewELBClient creates a new ELB API client for a given session.
func NewELBv2Client ¶
func NewELBv2Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) elbv2iface.ELBV2API
NewELBv2Client creates a new ELB v2 API client for a given session.
func NewEventBridgeClient ¶
func NewEventBridgeClient(scopeUser cloud.ScopeUsage, session cloud.Session, target runtime.Object) eventbridgeiface.EventBridgeAPI
NewEventBridgeClient creates a new EventBridge API client for a given session.
func NewGlobalSQSClient ¶
NewGlobalSQSClient for creating a new SQS API client that isn't tied to a cluster.
func NewIAMClient ¶
func NewIAMClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) iamiface.IAMAPI
NewIAMClient creates a new IAM API client for a given session.
func NewResourgeTaggingClient ¶
func NewResourgeTaggingClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) resourcegroupstaggingapiiface.ResourceGroupsTaggingAPIAPI
NewResourgeTaggingClient creates a new Resource Tagging API client for a given session.
func NewS3Client ¶
func NewS3Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) s3iface.S3API
NewS3Client creates a new S3 API client for a given session.
func NewSQSClient ¶
func NewSQSClient(scopeUser cloud.ScopeUsage, session cloud.Session, target runtime.Object) sqsiface.SQSAPI
NewSQSClient creates a new SQS API client for a given session.
func NewSSMClient ¶
func NewSSMClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) ssmiface.SSMAPI
NewSSMClient creates a new Secrets API client for a given session.
func NewSTSClient ¶
func NewSTSClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) stsiface.STSAPI
NewSTSClient creates a new STS API client for a given session.
func NewSecretsManagerClient ¶
func NewSecretsManagerClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) secretsmanageriface.SecretsManagerAPI
NewSecretsManagerClient creates a new Secrets API client for a given session..
Types ¶
type AWSClients ¶
type AWSClients struct { ASG autoscalingiface.AutoScalingAPI EC2 ec2iface.EC2API ELB elbiface.ELBAPI SecretsManager secretsmanageriface.SecretsManagerAPI ResourceTagging resourcegroupstaggingapiiface.ResourceGroupsTaggingAPIAPI }
AWSClients contains all the aws clients used by the scopes.
type AWSNodeScope ¶
type AWSNodeScope interface { cloud.ClusterScoper // RemoteClient returns the Kubernetes client for connecting to the workload cluster. RemoteClient() (client.Client, error) // Subnets returns the cluster subnets. Subnets() infrav1.Subnets // SecondaryCidrBlock returns the optional secondary CIDR block to use for pod IPs SecondaryCidrBlock() *string // SecurityGroups returns the control plane security groups as a map, it creates the map if empty. SecurityGroups() map[infrav1.SecurityGroupRole]infrav1.SecurityGroup // DisableVPCCNI returns whether the AWS VPC CNI should be disabled DisableVPCCNI() bool // VpcCni specifies configuration related to the VPC CNI. VpcCni() ekscontrolplanev1.VpcCni // VPC returns the given VPC configuration. VPC() *infrav1.VPCSpec }
AWSNodeScope is the interface for the scope to be used with the awsnode reconciling service.
type ClusterScope ¶
type ClusterScope struct { logger.Logger Cluster *clusterv1.Cluster AWSCluster *infrav1.AWSCluster // contains filtered or unexported fields }
ClusterScope defines the basic context for an actuator to operate upon.
func NewClusterScope ¶
func NewClusterScope(params ClusterScopeParams) (*ClusterScope, error)
NewClusterScope creates a new Scope from the supplied parameters. This is meant to be called for each reconcile iteration.
func (*ClusterScope) APIServerPort ¶
func (s *ClusterScope) APIServerPort() int32
APIServerPort returns the APIServerPort to use when creating the load balancer.
func (*ClusterScope) AdditionalControlPlaneIngressRules ¶ added in v2.2.3
func (s *ClusterScope) AdditionalControlPlaneIngressRules() []infrav1.IngressRule
AdditionalControlPlaneIngressRules returns the additional ingress rules for control plane security group.
func (*ClusterScope) AdditionalTags ¶
func (s *ClusterScope) AdditionalTags() infrav1.Tags
AdditionalTags returns AdditionalTags from the scope's AWSCluster. The returned value will never be nil.
func (*ClusterScope) AllSecondaryCidrBlocks ¶ added in v2.7.0
func (s *ClusterScope) AllSecondaryCidrBlocks() []infrav1.VpcCidrBlock
AllSecondaryCidrBlocks returns all secondary CIDR blocks (combining `SecondaryCidrBlock` and `SecondaryCidrBlocks`).
func (*ClusterScope) Bastion ¶
func (s *ClusterScope) Bastion() *infrav1.Bastion
Bastion returns the bastion details.
func (*ClusterScope) Bucket ¶
func (s *ClusterScope) Bucket() *infrav1.S3Bucket
Bucket returns the cluster bucket configuration.
func (*ClusterScope) CNIIngressRules ¶
func (s *ClusterScope) CNIIngressRules() infrav1.CNIIngressRules
CNIIngressRules returns the CNI spec ingress rules.
func (*ClusterScope) Close ¶
func (s *ClusterScope) Close() error
Close closes the current scope persisting the cluster configuration and status.
func (*ClusterScope) ClusterObj ¶
func (s *ClusterScope) ClusterObj() cloud.ClusterObject
ClusterObj returns the cluster object.
func (*ClusterScope) ControlPlaneConfigMapName ¶
func (s *ClusterScope) ControlPlaneConfigMapName() string
ControlPlaneConfigMapName returns the name of the ConfigMap used to coordinate the bootstrapping of control plane nodes.
func (*ClusterScope) ControlPlaneEndpoint ¶
func (s *ClusterScope) ControlPlaneEndpoint() clusterv1.APIEndpoint
ControlPlaneEndpoint returns the cluster control plane endpoint.
func (*ClusterScope) ControlPlaneLoadBalancer ¶
func (s *ClusterScope) ControlPlaneLoadBalancer() *infrav1.AWSLoadBalancerSpec
ControlPlaneLoadBalancer returns the AWSLoadBalancerSpec.
func (*ClusterScope) ControlPlaneLoadBalancerName ¶
func (s *ClusterScope) ControlPlaneLoadBalancerName() *string
ControlPlaneLoadBalancerName returns the name of the control plane load balancer.
func (*ClusterScope) ControlPlaneLoadBalancerScheme ¶
func (s *ClusterScope) ControlPlaneLoadBalancerScheme() infrav1.ELBScheme
ControlPlaneLoadBalancerScheme returns the Classic ELB scheme (public or internal facing). Deprecated: This method is going to be removed in a future release. Use LoadBalancer.Scheme.
func (*ClusterScope) ControlPlaneLoadBalancers ¶ added in v2.4.0
func (s *ClusterScope) ControlPlaneLoadBalancers() []*infrav1.AWSLoadBalancerSpec
ControlPlaneLoadBalancers returns load balancers configured for the control plane.
func (*ClusterScope) ControllerName ¶
func (s *ClusterScope) ControllerName() string
ControllerName returns the name of the controller that created the ClusterScope.
func (*ClusterScope) GetNatGatewaysIPs ¶ added in v2.2.2
func (s *ClusterScope) GetNatGatewaysIPs() []string
GetNatGatewaysIPs gets the Nat Gateways Public IPs.
func (*ClusterScope) IdentityRef ¶
func (s *ClusterScope) IdentityRef() *infrav1.AWSIdentityReference
IdentityRef returns the cluster identityRef.
func (*ClusterScope) ImageLookupBaseOS ¶
func (s *ClusterScope) ImageLookupBaseOS() string
ImageLookupBaseOS returns the base operating system name to use when looking up AMIs.
func (*ClusterScope) ImageLookupFormat ¶
func (s *ClusterScope) ImageLookupFormat() string
ImageLookupFormat returns the format string to use when looking up AMIs.
func (*ClusterScope) ImageLookupOrg ¶
func (s *ClusterScope) ImageLookupOrg() string
ImageLookupOrg returns the organization name to use when looking up AMIs.
func (*ClusterScope) InfraCluster ¶
func (s *ClusterScope) InfraCluster() cloud.ClusterObject
InfraCluster returns the AWS infrastructure cluster or control plane object.
func (*ClusterScope) InfraClusterName ¶
func (s *ClusterScope) InfraClusterName() string
InfraClusterName returns the AWS cluster name.
func (*ClusterScope) KubernetesClusterName ¶
func (s *ClusterScope) KubernetesClusterName() string
KubernetesClusterName is the name of the Kubernetes cluster. For the cluster scope this is the same as the CAPI cluster name.
func (*ClusterScope) ListOptionsLabelSelector ¶
func (s *ClusterScope) ListOptionsLabelSelector() client.ListOption
ListOptionsLabelSelector returns a ListOptions with a label selector for clusterName.
func (*ClusterScope) Name ¶
func (s *ClusterScope) Name() string
Name returns the CAPI cluster name.
func (*ClusterScope) Namespace ¶
func (s *ClusterScope) Namespace() string
Namespace returns the cluster namespace.
func (*ClusterScope) Network ¶
func (s *ClusterScope) Network() *infrav1.NetworkStatus
Network returns the cluster network object.
func (*ClusterScope) NodePortIngressRuleCidrBlocks ¶ added in v2.7.0
func (s *ClusterScope) NodePortIngressRuleCidrBlocks() []string
NodePortIngressRuleCidrBlocks returns the CIDR blocks for the node NodePort ingress rules.
func (*ClusterScope) Partition ¶ added in v2.1.0
func (s *ClusterScope) Partition() string
Partition returns the cluster partition.
func (*ClusterScope) PatchObject ¶
func (s *ClusterScope) PatchObject() error
PatchObject persists the cluster configuration and status.
func (*ClusterScope) Region ¶
func (s *ClusterScope) Region() string
Region returns the cluster region.
func (*ClusterScope) SSHKeyName ¶
func (s *ClusterScope) SSHKeyName() *string
SSHKeyName returns the SSH key name to use for instances.
func (*ClusterScope) SecondaryCidrBlock ¶
func (s *ClusterScope) SecondaryCidrBlock() *string
SecondaryCidrBlock is currently unimplemented for non-managed clusters.
func (*ClusterScope) SecondaryCidrBlocks ¶ added in v2.7.0
func (s *ClusterScope) SecondaryCidrBlocks() []infrav1.VpcCidrBlock
SecondaryCidrBlocks returns the additional CIDR blocks to be associated with the managed VPC.
func (*ClusterScope) SecurityGroupOverrides ¶
func (s *ClusterScope) SecurityGroupOverrides() map[infrav1.SecurityGroupRole]string
SecurityGroupOverrides returns the cluster security group overrides.
func (*ClusterScope) SecurityGroups ¶
func (s *ClusterScope) SecurityGroups() map[infrav1.SecurityGroupRole]infrav1.SecurityGroup
SecurityGroups returns the cluster security groups as a map, it creates the map if empty.
func (*ClusterScope) ServiceLimiter ¶
func (s *ClusterScope) ServiceLimiter(service string) *throttle.ServiceLimiter
ServiceLimiter returns the AWS SDK session. Used for creating clients.
func (*ClusterScope) Session ¶
func (s *ClusterScope) Session() awsclient.ConfigProvider
Session returns the AWS SDK session. Used for creating clients.
func (*ClusterScope) SetBastionInstance ¶
func (s *ClusterScope) SetBastionInstance(instance *infrav1.Instance)
SetBastionInstance sets the bastion instance in the status of the cluster.
func (*ClusterScope) SetFailureDomain ¶
func (s *ClusterScope) SetFailureDomain(id string, spec clusterv1.FailureDomainSpec)
SetFailureDomain sets the infrastructure provider failure domain key to the spec given as input.
func (*ClusterScope) SetNatGatewaysIPs ¶ added in v2.2.2
func (s *ClusterScope) SetNatGatewaysIPs(ips []string)
SetNatGatewaysIPs sets the Nat Gateways Public IPs.
func (*ClusterScope) SetSubnets ¶
func (s *ClusterScope) SetSubnets(subnets infrav1.Subnets)
SetSubnets updates the clusters subnets.
func (*ClusterScope) Subnets ¶
func (s *ClusterScope) Subnets() infrav1.Subnets
Subnets returns the cluster subnets.
func (*ClusterScope) TagUnmanagedNetworkResources ¶ added in v2.2.0
func (s *ClusterScope) TagUnmanagedNetworkResources() bool
TagUnmanagedNetworkResources returns if the feature flag tag unmanaged network resources is set.
func (*ClusterScope) UnstructuredControlPlane ¶ added in v2.4.0
func (s *ClusterScope) UnstructuredControlPlane() (*unstructured.Unstructured, error)
UnstructuredControlPlane returns the unstructured object for the control plane, if any. When the reference is not set, it returns an empty object.
func (*ClusterScope) VPC ¶
func (s *ClusterScope) VPC() *infrav1.VPCSpec
VPC returns the cluster VPC.
type ClusterScopeGetter ¶
type ClusterScopeGetter interface {
ClusterScope(params ClusterScopeParams) (*ClusterScope, error)
}
ClusterScopeGetter defines the cluster scope getter interface.
type ClusterScopeGetterFunc ¶
type ClusterScopeGetterFunc func(params ClusterScopeParams) (*ClusterScope, error)
ClusterScopeGetterFunc defines handler types for cluster scope getters.
func (ClusterScopeGetterFunc) ClusterScope ¶
func (f ClusterScopeGetterFunc) ClusterScope(params ClusterScopeParams) (*ClusterScope, error)
ClusterScope will return the cluster scope.
type ClusterScopeParams ¶
type ClusterScopeParams struct { Client client.Client Logger *logger.Logger Cluster *clusterv1.Cluster AWSCluster *infrav1.AWSCluster ControllerName string Endpoints []ServiceEndpoint Session awsclient.ConfigProvider TagUnmanagedNetworkResources bool }
ClusterScopeParams defines the input parameters used to create a new Scope.
type EC2Scope ¶
type EC2Scope interface { cloud.ClusterScoper // VPC returns the cluster VPC. VPC() *infrav1.VPCSpec // Subnets returns the cluster subnets. Subnets() infrav1.Subnets // Network returns the cluster network object. Network() *infrav1.NetworkStatus // SecurityGroups returns the cluster security groups as a map, it creates the map if empty. SecurityGroups() map[infrav1.SecurityGroupRole]infrav1.SecurityGroup // Bastion returns the bastion details for the cluster. Bastion() *infrav1.Bastion // SetBastionInstance sets the bastion instance in the status of the cluster. SetBastionInstance(instance *infrav1.Instance) // SSHKeyName returns the SSH key name to use for instances. SSHKeyName() *string // ImageLookupFormat returns the format string to use when looking up AMIs ImageLookupFormat() string // ImageLookupOrg returns the organization name to use when looking up AMIs ImageLookupOrg() string // ImageLookupBaseOS returns the base operating system name to use when looking up AMIs ImageLookupBaseOS() string }
EC2Scope is the interface for the scope to be used with the ec2 service.
type ELBScope ¶
type ELBScope interface { cloud.ClusterScoper // Network returns the cluster network object. Network() *infrav1.NetworkStatus // Subnets returns the cluster subnets. Subnets() infrav1.Subnets // SecurityGroups returns the cluster security groups as a map, it creates the map if empty. SecurityGroups() map[infrav1.SecurityGroupRole]infrav1.SecurityGroup // VPC returns the cluster VPC. VPC() *infrav1.VPCSpec // ControlPlaneLoadBalancer returns the AWSLoadBalancerSpec // Deprecated: Use ControlPlaneLoadBalancers() ControlPlaneLoadBalancer() *infrav1.AWSLoadBalancerSpec // ControlPlaneLoadBalancerScheme returns the Classic ELB scheme (public or internal facing) // Deprecated: This method is going to be removed in a future release. Use LoadBalancer.Scheme. ControlPlaneLoadBalancerScheme() infrav1.ELBScheme // ControlPlaneLoadBalancerName returns the Classic ELB name ControlPlaneLoadBalancerName() *string // ControlPlaneEndpoint returns AWSCluster control plane endpoint ControlPlaneEndpoint() clusterv1.APIEndpoint // ControlPlaneLoadBalancers returns both the ControlPlaneLoadBalancer and SecondaryControlPlaneLoadBalancer AWSLoadBalancerSpecs. // The control plane load balancers should always be returned in the above order. ControlPlaneLoadBalancers() []*infrav1.AWSLoadBalancerSpec }
ELBScope is a scope for use with the ELB reconciling service.
type FargateProfileScope ¶
type FargateProfileScope struct { logger.Logger Client client.Client Cluster *clusterv1.Cluster ControlPlane *ekscontrolplanev1.AWSManagedControlPlane FargateProfile *expinfrav1.AWSFargateProfile // contains filtered or unexported fields }
FargateProfileScope defines the basic context for an actuator to operate upon.
func NewFargateProfileScope ¶
func NewFargateProfileScope(params FargateProfileScopeParams) (*FargateProfileScope, error)
NewFargateProfileScope creates a new Scope from the supplied parameters. This is meant to be called for each reconcile iteration.
func (*FargateProfileScope) AdditionalTags ¶
func (s *FargateProfileScope) AdditionalTags() infrav1.Tags
AdditionalTags returns AdditionalTags from the scope's FargateProfile The returned value will never be nil.
func (*FargateProfileScope) Close ¶
func (s *FargateProfileScope) Close() error
Close closes the current scope persisting the control plane configuration and status.
func (*FargateProfileScope) ClusterName ¶
func (s *FargateProfileScope) ClusterName() string
ClusterName returns the cluster name.
func (*FargateProfileScope) ClusterObj ¶
func (s *FargateProfileScope) ClusterObj() cloud.ClusterObject
ClusterObj returns the cluster object.
func (*FargateProfileScope) ControlPlaneSubnets ¶
func (s *FargateProfileScope) ControlPlaneSubnets() *infrav1.Subnets
ControlPlaneSubnets returns the control plane subnets.
func (*FargateProfileScope) ControllerName ¶
func (s *FargateProfileScope) ControllerName() string
ControllerName returns the name of the controller that created the FargateProfile.
func (*FargateProfileScope) EnableIAM ¶
func (s *FargateProfileScope) EnableIAM() bool
EnableIAM indicates that reconciliation should create IAM roles.
func (*FargateProfileScope) IAMReadyFalse ¶
func (s *FargateProfileScope) IAMReadyFalse(reason string, err string) error
IAMReadyFalse marks the ready condition false using warning if error isn't empty.
func (*FargateProfileScope) InfraCluster ¶
func (s *FargateProfileScope) InfraCluster() cloud.ClusterObject
InfraCluster returns the AWS infrastructure cluster or control plane object.
func (*FargateProfileScope) KubernetesClusterName ¶
func (s *FargateProfileScope) KubernetesClusterName() string
KubernetesClusterName is the name of the EKS cluster name.
func (*FargateProfileScope) ManagedPoolName ¶
func (s *FargateProfileScope) ManagedPoolName() string
ManagedPoolName returns the managed machine pool name.
func (*FargateProfileScope) Partition ¶ added in v2.1.0
func (s *FargateProfileScope) Partition() string
Partition returns the machine pool subnet IDs.
func (*FargateProfileScope) PatchObject ¶
func (s *FargateProfileScope) PatchObject() error
PatchObject persists the control plane configuration and status.
func (*FargateProfileScope) RoleName ¶
func (s *FargateProfileScope) RoleName() string
RoleName returns the node group role name.
func (*FargateProfileScope) ServiceLimiter ¶
func (s *FargateProfileScope) ServiceLimiter(service string) *throttle.ServiceLimiter
ServiceLimiter returns the AWS SDK session. Used for creating clients.
func (*FargateProfileScope) Session ¶
func (s *FargateProfileScope) Session() awsclient.ConfigProvider
Session returns the AWS SDK session. Used for creating clients.
func (*FargateProfileScope) SubnetIDs ¶
func (s *FargateProfileScope) SubnetIDs() []string
SubnetIDs returns the machine pool subnet IDs.
type FargateProfileScopeParams ¶
type FargateProfileScopeParams struct { Client client.Client Logger *logger.Logger Cluster *clusterv1.Cluster ControlPlane *ekscontrolplanev1.AWSManagedControlPlane FargateProfile *expinfrav1.AWSFargateProfile ControllerName string Endpoints []ServiceEndpoint Session awsclient.ConfigProvider EnableIAM bool }
FargateProfileScopeParams defines the input parameters used to create a new Scope.
type GlobalScope ¶
type GlobalScope struct {
// contains filtered or unexported fields
}
GlobalScope defines the specs for the GlobalScope.
func NewGlobalScope ¶
func NewGlobalScope(params GlobalScopeParams) (*GlobalScope, error)
NewGlobalScope creates a new Scope from the supplied parameters.
func (*GlobalScope) ControllerName ¶
func (s *GlobalScope) ControllerName() string
ControllerName returns the name of the controller that created the GlobalScope.
func (*GlobalScope) ServiceLimiter ¶
func (s *GlobalScope) ServiceLimiter(service string) *throttle.ServiceLimiter
ServiceLimiter returns the AWS SDK session. Used for creating clients.
func (*GlobalScope) Session ¶
func (s *GlobalScope) Session() awsclient.ConfigProvider
Session returns the AWS SDK session. Used for creating clients.
type GlobalScopeParams ¶
type GlobalScopeParams struct { ControllerName string Region string Endpoints []ServiceEndpoint }
GlobalScopeParams defines the parameters acceptable for GlobalScope.
type IAMAuthScope ¶
type IAMAuthScope interface { cloud.ClusterScoper // RemoteClient returns the Kubernetes client for connecting to the workload cluster. RemoteClient() (client.Client, error) // IAMAuthConfig returns the IAM authenticator config IAMAuthConfig() *ekscontrolplanev1.IAMAuthenticatorConfig }
IAMAuthScope is the interface for the scope to be used with iamauth reconciling service.
type KubeProxyScope ¶
type KubeProxyScope interface { cloud.ClusterScoper // RemoteClient returns the Kubernetes client for connecting to the workload cluster. RemoteClient() (client.Client, error) // DisableKubeProxy returns whether kube-proxy daemonset is to be disabled DisableKubeProxy() bool }
KubeProxyScope is the interface for the scope to be used with the kubeproxy reconciling service.
type LaunchTemplateScope ¶
type LaunchTemplateScope interface { GetMachinePool() *expclusterv1.MachinePool GetLaunchTemplate() *expinfrav1.AWSLaunchTemplate LaunchTemplateName() string GetLaunchTemplateIDStatus() string SetLaunchTemplateIDStatus(id string) GetLaunchTemplateLatestVersionStatus() string SetLaunchTemplateLatestVersionStatus(version string) GetRawBootstrapData() ([]byte, *types.NamespacedName, error) IsEKSManaged() bool AdditionalTags() infrav1.Tags GetObjectMeta() *metav1.ObjectMeta GetSetter() conditions.Setter PatchObject() error GetEC2Scope() EC2Scope client.Client logger.Wrapper }
LaunchTemplateScope defines a scope defined around a launch template.
type MachinePoolScope ¶
type MachinePoolScope struct { logger.Logger client.Client Cluster *clusterv1.Cluster MachinePool *expclusterv1.MachinePool InfraCluster EC2Scope AWSMachinePool *expinfrav1.AWSMachinePool // contains filtered or unexported fields }
MachinePoolScope defines a scope defined around a machine and its cluster.
func NewMachinePoolScope ¶
func NewMachinePoolScope(params MachinePoolScopeParams) (*MachinePoolScope, error)
NewMachinePoolScope creates a new MachinePoolScope from the supplied parameters. This is meant to be called for each reconcile iteration.
func (*MachinePoolScope) AdditionalTags ¶
func (m *MachinePoolScope) AdditionalTags() infrav1.Tags
AdditionalTags merges AdditionalTags from the scope's AWSCluster and AWSMachinePool. If the same key is present in both, the value from AWSMachinePool takes precedence. The returned Tags will never be nil.
func (*MachinePoolScope) Close ¶
func (m *MachinePoolScope) Close() error
Close the MachinePoolScope by updating the machinepool spec, machine status.
func (*MachinePoolScope) GetASGStatus ¶
func (m *MachinePoolScope) GetASGStatus() *expinfrav1.ASGStatus
GetASGStatus returns the AWSMachinePool instance state from the status.
func (*MachinePoolScope) GetEC2Scope ¶
func (m *MachinePoolScope) GetEC2Scope() EC2Scope
GetEC2Scope returns the EC2 scope.
func (*MachinePoolScope) GetLaunchTemplate ¶
func (m *MachinePoolScope) GetLaunchTemplate() *expinfrav1.AWSLaunchTemplate
GetLaunchTemplate returns the launch template.
func (*MachinePoolScope) GetLaunchTemplateIDStatus ¶
func (m *MachinePoolScope) GetLaunchTemplateIDStatus() string
GetLaunchTemplateIDStatus returns the launch template ID status.
func (*MachinePoolScope) GetLaunchTemplateLatestVersionStatus ¶
func (m *MachinePoolScope) GetLaunchTemplateLatestVersionStatus() string
GetLaunchTemplateLatestVersionStatus returns the launch template latest version status.
func (*MachinePoolScope) GetMachinePool ¶
func (m *MachinePoolScope) GetMachinePool() *expclusterv1.MachinePool
GetMachinePool returns the machine pool object.
func (*MachinePoolScope) GetObjectMeta ¶
func (m *MachinePoolScope) GetObjectMeta() *metav1.ObjectMeta
GetObjectMeta returns the AWSMachinePool ObjectMeta.
func (*MachinePoolScope) GetProviderID ¶
func (m *MachinePoolScope) GetProviderID() string
GetProviderID returns the AWSMachine providerID from the spec.
func (*MachinePoolScope) GetRawBootstrapData ¶
func (m *MachinePoolScope) GetRawBootstrapData() ([]byte, *types.NamespacedName, error)
GetRawBootstrapData returns the bootstrap data from the secret in the Machine's bootstrap.dataSecretName, including the secret's namespaced name.
func (*MachinePoolScope) GetRuntimeObject ¶
func (m *MachinePoolScope) GetRuntimeObject() runtime.Object
GetRuntimeObject returns the AWSMachinePool object, in runtime.Object form.
func (*MachinePoolScope) GetSetter ¶
func (m *MachinePoolScope) GetSetter() conditions.Setter
GetSetter returns the AWSMachinePool object setter.
func (*MachinePoolScope) HasFailed ¶
func (m *MachinePoolScope) HasFailed() bool
HasFailed returns true when the AWSMachinePool's Failure reason or Failure message is populated.
func (*MachinePoolScope) IsEKSManaged ¶
func (m *MachinePoolScope) IsEKSManaged() bool
IsEKSManaged checks if the AWSMachinePool is EKS managed.
func (*MachinePoolScope) LaunchTemplateName ¶
func (m *MachinePoolScope) LaunchTemplateName() string
LaunchTemplateName returns the name of the launch template.
func (*MachinePoolScope) Name ¶
func (m *MachinePoolScope) Name() string
Name returns the AWSMachinePool name.
func (*MachinePoolScope) Namespace ¶
func (m *MachinePoolScope) Namespace() string
Namespace returns the namespace name.
func (*MachinePoolScope) PatchCAPIMachinePoolObject ¶
func (m *MachinePoolScope) PatchCAPIMachinePoolObject(ctx context.Context) error
PatchCAPIMachinePoolObject persists the capi machinepool configuration and status.
func (*MachinePoolScope) PatchObject ¶
func (m *MachinePoolScope) PatchObject() error
PatchObject persists the machinepool spec and status.
func (*MachinePoolScope) SetASGStatus ¶
func (m *MachinePoolScope) SetASGStatus(v expinfrav1.ASGStatus)
SetASGStatus sets the AWSMachinePool status instance state.
func (*MachinePoolScope) SetAnnotation ¶
func (m *MachinePoolScope) SetAnnotation(key, value string)
SetAnnotation sets a key value annotation on the AWSMachine.
func (*MachinePoolScope) SetFailureMessage ¶
func (m *MachinePoolScope) SetFailureMessage(v error)
SetFailureMessage sets the AWSMachine status failure message.
func (*MachinePoolScope) SetFailureReason ¶
func (m *MachinePoolScope) SetFailureReason(v capierrors.MachineStatusError)
SetFailureReason sets the AWSMachine status failure reason.
func (*MachinePoolScope) SetLaunchTemplateIDStatus ¶
func (m *MachinePoolScope) SetLaunchTemplateIDStatus(id string)
SetLaunchTemplateIDStatus sets the launch template ID status.
func (*MachinePoolScope) SetLaunchTemplateLatestVersionStatus ¶
func (m *MachinePoolScope) SetLaunchTemplateLatestVersionStatus(version string)
SetLaunchTemplateLatestVersionStatus sets the launch template latest version status.
func (*MachinePoolScope) SetNotReady ¶
func (m *MachinePoolScope) SetNotReady()
SetNotReady sets the AWSMachinePool Ready Status to false.
func (*MachinePoolScope) SubnetIDs ¶
func (m *MachinePoolScope) SubnetIDs(subnetIDs []string) ([]string, error)
SubnetIDs returns the machine pool subnet IDs.
func (*MachinePoolScope) UpdateInstanceStatuses ¶
func (m *MachinePoolScope) UpdateInstanceStatuses(ctx context.Context, instances []infrav1.Instance) error
UpdateInstanceStatuses ties ASG instances and Node status data together and updates AWSMachinePool This updates if ASG instances ready and kubelet version running on the node..
type MachinePoolScopeParams ¶
type MachinePoolScopeParams struct { client.Client Logger *logger.Logger Cluster *clusterv1.Cluster MachinePool *expclusterv1.MachinePool InfraCluster EC2Scope AWSMachinePool *expinfrav1.AWSMachinePool }
MachinePoolScopeParams defines a scope defined around a machine and its cluster.
type MachineScope ¶
type MachineScope struct { logger.Logger Cluster *clusterv1.Cluster Machine *clusterv1.Machine InfraCluster EC2Scope AWSMachine *infrav1.AWSMachine // contains filtered or unexported fields }
MachineScope defines a scope defined around a machine and its cluster.
func NewMachineScope ¶
func NewMachineScope(params MachineScopeParams) (*MachineScope, error)
NewMachineScope creates a new MachineScope from the supplied parameters. This is meant to be called for each reconcile iteration.
func (*MachineScope) AWSMachineIsDeleted ¶
func (m *MachineScope) AWSMachineIsDeleted() bool
AWSMachineIsDeleted checks if the AWS machine was deleted.
func (*MachineScope) AdditionalTags ¶
func (m *MachineScope) AdditionalTags() infrav1.Tags
AdditionalTags merges AdditionalTags from the scope's AWSCluster and AWSMachine. If the same key is present in both, the value from AWSMachine takes precedence. The returned Tags will never be nil.
func (*MachineScope) Close ¶
func (m *MachineScope) Close() error
Close the MachineScope by updating the machine spec, machine status.
func (*MachineScope) CompressUserData ¶
func (m *MachineScope) CompressUserData(userDataFormat string) bool
CompressUserData returns the computed value of whether or not userdata should be compressed using gzip.
func (*MachineScope) DeleteSecretPrefix ¶
func (m *MachineScope) DeleteSecretPrefix()
DeleteSecretPrefix deletes the prefix for the secret belonging to the AWSMachine in AWS Secrets Manager.
func (*MachineScope) GetBootstrapData ¶
func (m *MachineScope) GetBootstrapData() (string, error)
GetBootstrapData returns the bootstrap data from the secret in the Machine's bootstrap.dataSecretName as base64.
func (*MachineScope) GetElasticIPPool ¶ added in v2.5.1
func (m *MachineScope) GetElasticIPPool() *infrav1.ElasticIPPool
GetElasticIPPool returns the Elastic IP Pool for an machine, when exists.
func (*MachineScope) GetInstanceID ¶
func (m *MachineScope) GetInstanceID() *string
GetInstanceID returns the AWSMachine instance id by parsing Spec.ProviderID.
func (*MachineScope) GetInstanceState ¶
func (m *MachineScope) GetInstanceState() *infrav1.InstanceState
GetInstanceState returns the AWSMachine instance state from the status.
func (*MachineScope) GetProviderID ¶
func (m *MachineScope) GetProviderID() string
GetProviderID returns the AWSMachine providerID from the spec.
func (*MachineScope) GetRawBootstrapData ¶
func (m *MachineScope) GetRawBootstrapData() ([]byte, error)
GetRawBootstrapData returns the bootstrap data from the secret in the Machine's bootstrap.dataSecretName.
func (*MachineScope) GetRawBootstrapDataWithFormat ¶
func (m *MachineScope) GetRawBootstrapDataWithFormat() ([]byte, string, error)
GetRawBootstrapDataWithFormat returns the bootstrap data from the secret in the Machine's bootstrap.dataSecretName.
func (*MachineScope) GetSecretCount ¶
func (m *MachineScope) GetSecretCount() int32
GetSecretCount returns the number of AWS Secret Manager entries making up the complete userdata.
func (*MachineScope) GetSecretPrefix ¶
func (m *MachineScope) GetSecretPrefix() string
GetSecretPrefix returns the prefix for the secrets belonging to the AWSMachine in AWS Secrets Manager.
func (*MachineScope) HasFailed ¶
func (m *MachineScope) HasFailed() bool
HasFailed returns the failure state of the machine scope.
func (*MachineScope) InstanceIsInKnownState ¶
func (m *MachineScope) InstanceIsInKnownState() bool
InstanceIsInKnownState checks if the machine scope's instance state is known.
func (*MachineScope) InstanceIsOperational ¶
func (m *MachineScope) InstanceIsOperational() bool
InstanceIsOperational returns the operational state of the machine scope.
func (*MachineScope) InstanceIsRunning ¶
func (m *MachineScope) InstanceIsRunning() bool
InstanceIsRunning returns the instance state of the machine scope.
func (*MachineScope) IsControlPlane ¶
func (m *MachineScope) IsControlPlane() bool
IsControlPlane returns true if the machine is a control plane.
func (*MachineScope) IsControlPlaneExternallyManaged ¶ added in v2.4.0
func (m *MachineScope) IsControlPlaneExternallyManaged() bool
IsControlPlaneExternallyManaged checks if the control plane is externally managed.
This is determined by the kind of the control plane object (EKS for example), or if the control plane referenced object is reporting as externally managed.
func (*MachineScope) IsEKSManaged ¶
func (m *MachineScope) IsEKSManaged() bool
IsEKSManaged checks if the machine is EKS managed.
func (*MachineScope) IsExternallyManaged ¶
func (m *MachineScope) IsExternallyManaged() bool
IsExternallyManaged checks if the machine is externally managed.
func (*MachineScope) MachineIsDeleted ¶ added in v2.2.5
func (m *MachineScope) MachineIsDeleted() bool
MachineIsDeleted checks if the machine was deleted.
func (*MachineScope) Namespace ¶
func (m *MachineScope) Namespace() string
Namespace returns the namespace name.
func (*MachineScope) PatchObject ¶
func (m *MachineScope) PatchObject() error
PatchObject persists the machine spec and status.
func (*MachineScope) Role ¶
func (m *MachineScope) Role() string
Role returns the machine role from the labels.
func (*MachineScope) SecureSecretsBackend ¶
func (m *MachineScope) SecureSecretsBackend() infrav1.SecretBackend
SecureSecretsBackend returns the chosen secret backend.
func (*MachineScope) SetAddresses ¶
func (m *MachineScope) SetAddresses(addrs []clusterv1.MachineAddress)
SetAddresses sets the AWSMachine address status.
func (*MachineScope) SetAnnotation ¶
func (m *MachineScope) SetAnnotation(key, value string)
SetAnnotation sets a key value annotation on the AWSMachine.
func (*MachineScope) SetFailureMessage ¶
func (m *MachineScope) SetFailureMessage(v error)
SetFailureMessage sets the AWSMachine status failure message.
func (*MachineScope) SetFailureReason ¶
func (m *MachineScope) SetFailureReason(v capierrors.MachineStatusError)
SetFailureReason sets the AWSMachine status failure reason.
func (*MachineScope) SetInstanceID ¶
func (m *MachineScope) SetInstanceID(instanceID string)
SetInstanceID sets the AWSMachine instanceID in spec.
func (*MachineScope) SetInstanceState ¶
func (m *MachineScope) SetInstanceState(v infrav1.InstanceState)
SetInstanceState sets the AWSMachine status instance state.
func (*MachineScope) SetInterruptible ¶
func (m *MachineScope) SetInterruptible()
SetInterruptible sets the AWSMachine status Interruptible.
func (*MachineScope) SetNotReady ¶
func (m *MachineScope) SetNotReady()
SetNotReady sets the AWSMachine Ready Status to false.
func (*MachineScope) SetProviderID ¶
func (m *MachineScope) SetProviderID(instanceID, availabilityZone string)
SetProviderID sets the AWSMachine providerID in spec.
func (*MachineScope) SetReady ¶
func (m *MachineScope) SetReady()
SetReady sets the AWSMachine Ready Status.
func (*MachineScope) SetSecretCount ¶
func (m *MachineScope) SetSecretCount(i int32)
SetSecretCount sets the number of AWS Secret Manager entries making up the complete userdata.
func (*MachineScope) SetSecretPrefix ¶
func (m *MachineScope) SetSecretPrefix(value string)
SetSecretPrefix sets the prefix for the secrets belonging to the AWSMachine in AWS Secrets Manager.
func (*MachineScope) UseIgnition ¶
func (m *MachineScope) UseIgnition(userDataFormat string) bool
UseIgnition returns true if the AWSMachine should use Ignition.
func (*MachineScope) UseSecretsManager ¶
func (m *MachineScope) UseSecretsManager(userDataFormat string) bool
UseSecretsManager returns the computed value of whether or not userdata should be stored using AWS Secrets Manager.
type MachineScopeGetter ¶
type MachineScopeGetter interface {
MachineScope(params MachineScopeParams) (*MachineScope, error)
}
MachineScopeGetter defines the machine scope getter interface.
type MachineScopeGetterFunc ¶
type MachineScopeGetterFunc func(params MachineScopeParams) (*MachineScope, error)
MachineScopeGetterFunc defines handler types for machine scope getters.
func (MachineScopeGetterFunc) MachineScope ¶
func (f MachineScopeGetterFunc) MachineScope(params MachineScopeParams) (*MachineScope, error)
MachineScope will return the machine scope.
type MachineScopeParams ¶
type MachineScopeParams struct { Client client.Client Logger *logger.Logger Cluster *clusterv1.Cluster Machine *clusterv1.Machine InfraCluster EC2Scope AWSMachine *infrav1.AWSMachine }
MachineScopeParams defines the input parameters used to create a new MachineScope.
type ManagedControlPlaneScope ¶
type ManagedControlPlaneScope struct { logger.Logger Client client.Client Cluster *clusterv1.Cluster ControlPlane *ekscontrolplanev1.AWSManagedControlPlane // contains filtered or unexported fields }
ManagedControlPlaneScope defines the basic context for an actuator to operate upon.
func NewManagedControlPlaneScope ¶
func NewManagedControlPlaneScope(params ManagedControlPlaneScopeParams) (*ManagedControlPlaneScope, error)
NewManagedControlPlaneScope creates a new Scope from the supplied parameters. This is meant to be called for each reconcile iteration.
func (*ManagedControlPlaneScope) APIServerPort ¶
func (s *ManagedControlPlaneScope) APIServerPort() int32
APIServerPort returns the port to use when communicating with the API server.
func (*ManagedControlPlaneScope) AdditionalControlPlaneIngressRules ¶ added in v2.2.3
func (s *ManagedControlPlaneScope) AdditionalControlPlaneIngressRules() []infrav1.IngressRule
AdditionalControlPlaneIngressRules returns the additional ingress rules for the control plane security group.
func (*ManagedControlPlaneScope) AdditionalTags ¶
func (s *ManagedControlPlaneScope) AdditionalTags() infrav1.Tags
AdditionalTags returns AdditionalTags from the scope's EksControlPlane. The returned value will never be nil.
func (*ManagedControlPlaneScope) Addons ¶
func (s *ManagedControlPlaneScope) Addons() []ekscontrolplanev1.Addon
Addons returns the list of addons for a EKS cluster.
func (*ManagedControlPlaneScope) AllSecondaryCidrBlocks ¶ added in v2.7.0
func (s *ManagedControlPlaneScope) AllSecondaryCidrBlocks() []infrav1.VpcCidrBlock
AllSecondaryCidrBlocks returns all secondary CIDR blocks (combining `SecondaryCidrBlock` and `SecondaryCidrBlocks`).
func (*ManagedControlPlaneScope) AllowAdditionalRoles ¶
func (s *ManagedControlPlaneScope) AllowAdditionalRoles() bool
AllowAdditionalRoles indicates if additional roles can be added to the created IAM roles.
func (*ManagedControlPlaneScope) Bastion ¶
func (s *ManagedControlPlaneScope) Bastion() *infrav1.Bastion
Bastion returns the bastion details.
func (*ManagedControlPlaneScope) Bucket ¶ added in v2.3.0
func (s *ManagedControlPlaneScope) Bucket() *infrav1.S3Bucket
Bucket returns the bucket details. For ManagedControlPlane this is always nil, as we don't support S3 buckets for managed clusters.
func (*ManagedControlPlaneScope) CNIIngressRules ¶
func (s *ManagedControlPlaneScope) CNIIngressRules() infrav1.CNIIngressRules
CNIIngressRules returns the CNI spec ingress rules.
func (*ManagedControlPlaneScope) Close ¶
func (s *ManagedControlPlaneScope) Close() error
Close closes the current scope persisting the control plane configuration and status.
func (*ManagedControlPlaneScope) ClusterObj ¶
func (s *ManagedControlPlaneScope) ClusterObj() cloud.ClusterObject
ClusterObj returns the cluster object.
func (*ManagedControlPlaneScope) ControlPlaneLoadBalancer ¶ added in v2.1.0
func (s *ManagedControlPlaneScope) ControlPlaneLoadBalancer() *infrav1.AWSLoadBalancerSpec
ControlPlaneLoadBalancer returns the AWSLoadBalancerSpec.
func (*ManagedControlPlaneScope) ControlPlaneLoadBalancers ¶ added in v2.4.2
func (s *ManagedControlPlaneScope) ControlPlaneLoadBalancers() []*infrav1.AWSLoadBalancerSpec
ControlPlaneLoadBalancers returns the AWSLoadBalancerSpecs.
func (*ManagedControlPlaneScope) ControllerName ¶
func (s *ManagedControlPlaneScope) ControllerName() string
ControllerName returns the name of the controller that created the ManagedControlPlane.
func (*ManagedControlPlaneScope) DisableKubeProxy ¶
func (s *ManagedControlPlaneScope) DisableKubeProxy() bool
DisableKubeProxy returns whether kube-proxy should be disabled.
func (*ManagedControlPlaneScope) DisableVPCCNI ¶
func (s *ManagedControlPlaneScope) DisableVPCCNI() bool
DisableVPCCNI returns whether the AWS VPC CNI should be disabled.
func (*ManagedControlPlaneScope) EnableIAM ¶
func (s *ManagedControlPlaneScope) EnableIAM() bool
EnableIAM indicates that reconciliation should create IAM roles.
func (*ManagedControlPlaneScope) GetNatGatewaysIPs ¶ added in v2.2.2
func (s *ManagedControlPlaneScope) GetNatGatewaysIPs() []string
GetNatGatewaysIPs gets the Nat Gateways Public IPs.
func (*ManagedControlPlaneScope) IAMAuthConfig ¶
func (s *ManagedControlPlaneScope) IAMAuthConfig() *ekscontrolplanev1.IAMAuthenticatorConfig
IAMAuthConfig returns the IAM authenticator config. The returned value will never be nil.
func (*ManagedControlPlaneScope) IdentityRef ¶
func (s *ManagedControlPlaneScope) IdentityRef() *infrav1.AWSIdentityReference
IdentityRef returns the cluster identityRef.
func (*ManagedControlPlaneScope) ImageLookupBaseOS ¶
func (s *ManagedControlPlaneScope) ImageLookupBaseOS() string
ImageLookupBaseOS returns the base operating system name to use when looking up AMIs.
func (*ManagedControlPlaneScope) ImageLookupFormat ¶
func (s *ManagedControlPlaneScope) ImageLookupFormat() string
ImageLookupFormat returns the format string to use when looking up AMIs.
func (*ManagedControlPlaneScope) ImageLookupOrg ¶
func (s *ManagedControlPlaneScope) ImageLookupOrg() string
ImageLookupOrg returns the organization name to use when looking up AMIs.
func (*ManagedControlPlaneScope) InfraCluster ¶
func (s *ManagedControlPlaneScope) InfraCluster() cloud.ClusterObject
InfraCluster returns the AWS infrastructure cluster or control plane object.
func (*ManagedControlPlaneScope) InfraClusterName ¶
func (s *ManagedControlPlaneScope) InfraClusterName() string
InfraClusterName returns the AWS cluster name.
func (*ManagedControlPlaneScope) KubernetesClusterName ¶
func (s *ManagedControlPlaneScope) KubernetesClusterName() string
KubernetesClusterName is the name of the Kubernetes cluster. For the managed scope this is the different to the CAPI cluster name and is the EKS cluster name.
func (*ManagedControlPlaneScope) ListOptionsLabelSelector ¶
func (s *ManagedControlPlaneScope) ListOptionsLabelSelector() client.ListOption
ListOptionsLabelSelector returns a ListOptions with a label selector for clusterName.
func (*ManagedControlPlaneScope) Name ¶
func (s *ManagedControlPlaneScope) Name() string
Name returns the CAPI cluster name.
func (*ManagedControlPlaneScope) Namespace ¶
func (s *ManagedControlPlaneScope) Namespace() string
Namespace returns the cluster namespace.
func (*ManagedControlPlaneScope) Network ¶
func (s *ManagedControlPlaneScope) Network() *infrav1.NetworkStatus
Network returns the control plane network object.
func (*ManagedControlPlaneScope) NodePortIngressRuleCidrBlocks ¶ added in v2.7.0
func (s *ManagedControlPlaneScope) NodePortIngressRuleCidrBlocks() []string
NodePortIngressRuleCidrBlocks returns the CIDR blocks for the node NodePort ingress rules.
func (*ManagedControlPlaneScope) OIDCIdentityProviderConfig ¶
func (s *ManagedControlPlaneScope) OIDCIdentityProviderConfig() *ekscontrolplanev1.OIDCIdentityProviderConfig
OIDCIdentityProviderConfig returns the OIDC identity provider config.
func (*ManagedControlPlaneScope) Partition ¶ added in v2.1.0
func (s *ManagedControlPlaneScope) Partition() string
Partition returns the cluster partition.
func (*ManagedControlPlaneScope) PatchObject ¶
func (s *ManagedControlPlaneScope) PatchObject() error
PatchObject persists the control plane configuration and status.
func (*ManagedControlPlaneScope) Region ¶
func (s *ManagedControlPlaneScope) Region() string
Region returns the cluster region.
func (*ManagedControlPlaneScope) RemoteClient ¶
func (s *ManagedControlPlaneScope) RemoteClient() (client.Client, error)
RemoteClient returns the Kubernetes client for connecting to the workload cluster.
func (*ManagedControlPlaneScope) RestrictPrivateSubnets ¶ added in v2.6.0
func (s *ManagedControlPlaneScope) RestrictPrivateSubnets() bool
RestrictPrivateSubnets returns whether Control Plane should be restricted to Private subnets.
func (*ManagedControlPlaneScope) SSHKeyName ¶
func (s *ManagedControlPlaneScope) SSHKeyName() *string
SSHKeyName returns the SSH key name to use for instances.
func (*ManagedControlPlaneScope) SecondaryCidrBlock ¶
func (s *ManagedControlPlaneScope) SecondaryCidrBlock() *string
SecondaryCidrBlock returns the SecondaryCidrBlock of the control plane.
func (*ManagedControlPlaneScope) SecondaryCidrBlocks ¶ added in v2.7.0
func (s *ManagedControlPlaneScope) SecondaryCidrBlocks() []infrav1.VpcCidrBlock
SecondaryCidrBlocks returns the additional CIDR blocks to be associated with the managed VPC.
func (*ManagedControlPlaneScope) SecurityGroupOverrides ¶
func (s *ManagedControlPlaneScope) SecurityGroupOverrides() map[infrav1.SecurityGroupRole]string
SecurityGroupOverrides returns the security groups that are overrides in the ControlPlane spec.
func (*ManagedControlPlaneScope) SecurityGroups ¶
func (s *ManagedControlPlaneScope) SecurityGroups() map[infrav1.SecurityGroupRole]infrav1.SecurityGroup
SecurityGroups returns the control plane security groups as a map, it creates the map if empty.
func (*ManagedControlPlaneScope) ServiceCidrs ¶
func (s *ManagedControlPlaneScope) ServiceCidrs() *clusterv1.NetworkRanges
ServiceCidrs returns the CIDR blocks used for services.
func (*ManagedControlPlaneScope) ServiceLimiter ¶
func (s *ManagedControlPlaneScope) ServiceLimiter(service string) *throttle.ServiceLimiter
ServiceLimiter returns the AWS SDK session. Used for creating clients.
func (*ManagedControlPlaneScope) Session ¶
func (s *ManagedControlPlaneScope) Session() awsclient.ConfigProvider
Session returns the AWS SDK session. Used for creating clients.
func (*ManagedControlPlaneScope) SetBastionInstance ¶
func (s *ManagedControlPlaneScope) SetBastionInstance(instance *infrav1.Instance)
SetBastionInstance sets the bastion instance in the status of the cluster.
func (*ManagedControlPlaneScope) SetFailureDomain ¶
func (s *ManagedControlPlaneScope) SetFailureDomain(id string, spec clusterv1.FailureDomainSpec)
SetFailureDomain sets the infrastructure provider failure domain key to the spec given as input.
func (*ManagedControlPlaneScope) SetNatGatewaysIPs ¶ added in v2.2.2
func (s *ManagedControlPlaneScope) SetNatGatewaysIPs(ips []string)
SetNatGatewaysIPs sets the Nat Gateways Public IPs.
func (*ManagedControlPlaneScope) SetSubnets ¶
func (s *ManagedControlPlaneScope) SetSubnets(subnets infrav1.Subnets)
SetSubnets updates the control planes subnets.
func (*ManagedControlPlaneScope) Subnets ¶
func (s *ManagedControlPlaneScope) Subnets() infrav1.Subnets
Subnets returns the control plane subnets.
func (*ManagedControlPlaneScope) TagUnmanagedNetworkResources ¶ added in v2.2.0
func (s *ManagedControlPlaneScope) TagUnmanagedNetworkResources() bool
TagUnmanagedNetworkResources returns if the feature flag tag unmanaged network resources is set.
func (*ManagedControlPlaneScope) TokenMethod ¶
func (s *ManagedControlPlaneScope) TokenMethod() ekscontrolplanev1.EKSTokenMethod
TokenMethod returns the token method to use in the kubeconfig.
func (*ManagedControlPlaneScope) UnstructuredControlPlane ¶ added in v2.4.0
func (s *ManagedControlPlaneScope) UnstructuredControlPlane() (*unstructured.Unstructured, error)
UnstructuredControlPlane returns the unstructured object for the control plane, if any. When the reference is not set, it returns an empty object.
func (*ManagedControlPlaneScope) VPC ¶
func (s *ManagedControlPlaneScope) VPC() *infrav1.VPCSpec
VPC returns the control plane VPC.
func (*ManagedControlPlaneScope) VpcCni ¶
func (s *ManagedControlPlaneScope) VpcCni() ekscontrolplanev1.VpcCni
VpcCni returns a list of environment variables to apply to the `aws-node` DaemonSet.
type ManagedControlPlaneScopeParams ¶
type ManagedControlPlaneScopeParams struct { Client client.Client Logger *logger.Logger Cluster *clusterv1.Cluster ControlPlane *ekscontrolplanev1.AWSManagedControlPlane ControllerName string Endpoints []ServiceEndpoint Session awsclient.ConfigProvider EnableIAM bool AllowAdditionalRoles bool TagUnmanagedNetworkResources bool }
ManagedControlPlaneScopeParams defines the input parameters used to create a new Scope.
type ManagedMachinePoolScope ¶
type ManagedMachinePoolScope struct { logger.Logger client.Client Cluster *clusterv1.Cluster ControlPlane *ekscontrolplanev1.AWSManagedControlPlane ManagedMachinePool *expinfrav1.AWSManagedMachinePool MachinePool *expclusterv1.MachinePool EC2Scope EC2Scope // contains filtered or unexported fields }
ManagedMachinePoolScope defines the basic context for an actuator to operate upon.
func NewManagedMachinePoolScope ¶
func NewManagedMachinePoolScope(params ManagedMachinePoolScopeParams) (*ManagedMachinePoolScope, error)
NewManagedMachinePoolScope creates a new Scope from the supplied parameters. This is meant to be called for each reconcile iteration.
func (*ManagedMachinePoolScope) AdditionalTags ¶
func (s *ManagedMachinePoolScope) AdditionalTags() infrav1.Tags
AdditionalTags returns AdditionalTags from the scope's ManagedMachinePool The returned value will never be nil.
func (*ManagedMachinePoolScope) AllowAdditionalRoles ¶
func (s *ManagedMachinePoolScope) AllowAdditionalRoles() bool
AllowAdditionalRoles indicates if additional roles can be added to the created IAM roles.
func (*ManagedMachinePoolScope) Close ¶
func (s *ManagedMachinePoolScope) Close() error
Close closes the current scope persisting the control plane configuration and status.
func (*ManagedMachinePoolScope) ClusterName ¶
func (s *ManagedMachinePoolScope) ClusterName() string
ClusterName returns the cluster name.
func (*ManagedMachinePoolScope) ClusterObj ¶
func (s *ManagedMachinePoolScope) ClusterObj() cloud.ClusterObject
ClusterObj returns the cluster object.
func (*ManagedMachinePoolScope) ControlPlaneSubnets ¶
func (s *ManagedMachinePoolScope) ControlPlaneSubnets() infrav1.Subnets
ControlPlaneSubnets returns the control plane subnets.
func (*ManagedMachinePoolScope) ControllerName ¶
func (s *ManagedMachinePoolScope) ControllerName() string
ControllerName returns the name of the controller that created the ManagedMachinePool.
func (*ManagedMachinePoolScope) EnableIAM ¶
func (s *ManagedMachinePoolScope) EnableIAM() bool
EnableIAM indicates that reconciliation should create IAM roles.
func (*ManagedMachinePoolScope) GetEC2Scope ¶
func (s *ManagedMachinePoolScope) GetEC2Scope() EC2Scope
GetEC2Scope returns the EC2Scope.
func (*ManagedMachinePoolScope) GetLaunchTemplate ¶
func (s *ManagedMachinePoolScope) GetLaunchTemplate() *expinfrav1.AWSLaunchTemplate
GetLaunchTemplate returns the launch template.
func (*ManagedMachinePoolScope) GetLaunchTemplateIDStatus ¶
func (s *ManagedMachinePoolScope) GetLaunchTemplateIDStatus() string
GetLaunchTemplateIDStatus returns the launch template ID status.
func (*ManagedMachinePoolScope) GetLaunchTemplateLatestVersionStatus ¶
func (s *ManagedMachinePoolScope) GetLaunchTemplateLatestVersionStatus() string
GetLaunchTemplateLatestVersionStatus returns the launch template latest version status.
func (*ManagedMachinePoolScope) GetMachinePool ¶
func (s *ManagedMachinePoolScope) GetMachinePool() *expclusterv1.MachinePool
GetMachinePool returns the machine pool.
func (*ManagedMachinePoolScope) GetObjectMeta ¶
func (s *ManagedMachinePoolScope) GetObjectMeta() *metav1.ObjectMeta
GetObjectMeta returns the ObjectMeta for the AWSManagedMachinePool.
func (*ManagedMachinePoolScope) GetRawBootstrapData ¶
func (s *ManagedMachinePoolScope) GetRawBootstrapData() ([]byte, *types.NamespacedName, error)
GetRawBootstrapData returns the raw bootstrap data from the linked Machine's bootstrap.dataSecretName.
func (*ManagedMachinePoolScope) GetRuntimeObject ¶
func (s *ManagedMachinePoolScope) GetRuntimeObject() runtime.Object
GetRuntimeObject returns the AWSManagedMachinePool, in runtime.Object form.
func (*ManagedMachinePoolScope) GetSetter ¶
func (s *ManagedMachinePoolScope) GetSetter() conditions.Setter
GetSetter returns the condition setter.
func (*ManagedMachinePoolScope) IAMReadyFalse ¶
func (s *ManagedMachinePoolScope) IAMReadyFalse(reason string, err string) error
IAMReadyFalse marks the ready condition false using warning if error isn't empty.
func (*ManagedMachinePoolScope) IdentityRef ¶
func (s *ManagedMachinePoolScope) IdentityRef() *infrav1.AWSIdentityReference
IdentityRef returns the cluster identityRef.
func (*ManagedMachinePoolScope) InfraCluster ¶
func (s *ManagedMachinePoolScope) InfraCluster() cloud.ClusterObject
InfraCluster returns the AWS infrastructure cluster or control plane object.
func (*ManagedMachinePoolScope) IsEKSManaged ¶
func (s *ManagedMachinePoolScope) IsEKSManaged() bool
IsEKSManaged returns true if the control plane is managed by EKS.
func (*ManagedMachinePoolScope) KubernetesClusterName ¶
func (s *ManagedMachinePoolScope) KubernetesClusterName() string
KubernetesClusterName is the name of the EKS cluster name.
func (*ManagedMachinePoolScope) LaunchTemplateName ¶
func (s *ManagedMachinePoolScope) LaunchTemplateName() string
LaunchTemplateName returns the launch template name.
func (*ManagedMachinePoolScope) ManagedPoolName ¶
func (s *ManagedMachinePoolScope) ManagedPoolName() string
ManagedPoolName returns the managed machine pool name.
func (*ManagedMachinePoolScope) Name ¶
func (s *ManagedMachinePoolScope) Name() string
Name returns the name of the AWSManagedMachinePool.
func (*ManagedMachinePoolScope) Namespace ¶
func (s *ManagedMachinePoolScope) Namespace() string
Namespace returns the namespace of the AWSManagedMachinePool.
func (*ManagedMachinePoolScope) NodegroupName ¶
func (s *ManagedMachinePoolScope) NodegroupName() string
NodegroupName is the name of the EKS nodegroup.
func (*ManagedMachinePoolScope) NodegroupReadyFalse ¶
func (s *ManagedMachinePoolScope) NodegroupReadyFalse(reason string, err string) error
NodegroupReadyFalse marks the ready condition false using warning if error isn't empty.
func (*ManagedMachinePoolScope) Partition ¶ added in v2.1.0
func (s *ManagedMachinePoolScope) Partition() string
Partition returns the machine pool subnet IDs.
func (*ManagedMachinePoolScope) PatchCAPIMachinePoolObject ¶ added in v2.1.0
func (s *ManagedMachinePoolScope) PatchCAPIMachinePoolObject(ctx context.Context) error
PatchCAPIMachinePoolObject persists the capi machinepool configuration and status.
func (*ManagedMachinePoolScope) PatchObject ¶
func (s *ManagedMachinePoolScope) PatchObject() error
PatchObject persists the control plane configuration and status.
func (*ManagedMachinePoolScope) RoleName ¶
func (s *ManagedMachinePoolScope) RoleName() string
RoleName returns the node group role name.
func (*ManagedMachinePoolScope) ServiceLimiter ¶
func (s *ManagedMachinePoolScope) ServiceLimiter(service string) *throttle.ServiceLimiter
ServiceLimiter returns the AWS SDK session. Used for creating clients.
func (*ManagedMachinePoolScope) Session ¶
func (s *ManagedMachinePoolScope) Session() awsclient.ConfigProvider
Session returns the AWS SDK session. Used for creating clients.
func (*ManagedMachinePoolScope) SetLaunchTemplateIDStatus ¶
func (s *ManagedMachinePoolScope) SetLaunchTemplateIDStatus(id string)
SetLaunchTemplateIDStatus sets the launch template ID status.
func (*ManagedMachinePoolScope) SetLaunchTemplateLatestVersionStatus ¶
func (s *ManagedMachinePoolScope) SetLaunchTemplateLatestVersionStatus(version string)
SetLaunchTemplateLatestVersionStatus sets the launch template latest version status.
func (*ManagedMachinePoolScope) SubnetIDs ¶
func (s *ManagedMachinePoolScope) SubnetIDs() ([]string, error)
SubnetIDs returns the machine pool subnet IDs.
func (*ManagedMachinePoolScope) Version ¶
func (s *ManagedMachinePoolScope) Version() *string
Version returns the nodegroup Kubernetes version.
type ManagedMachinePoolScopeParams ¶
type ManagedMachinePoolScopeParams struct { Client client.Client Logger *logger.Logger Cluster *clusterv1.Cluster ControlPlane *ekscontrolplanev1.AWSManagedControlPlane ManagedMachinePool *expinfrav1.AWSManagedMachinePool MachinePool *expclusterv1.MachinePool ControllerName string Endpoints []ServiceEndpoint Session awsclient.ConfigProvider EnableIAM bool AllowAdditionalRoles bool InfraCluster EC2Scope }
ManagedMachinePoolScopeParams defines the input parameters used to create a new Scope.
type NetworkScope ¶
type NetworkScope interface { cloud.ClusterScoper // Network returns the cluster network object. Network() *infrav1.NetworkStatus // VPC returns the cluster VPC. VPC() *infrav1.VPCSpec // Subnets returns the cluster subnets. Subnets() infrav1.Subnets // SetSubnets updates the clusters subnets. SetSubnets(subnets infrav1.Subnets) // CNIIngressRules returns the CNI spec ingress rules. CNIIngressRules() infrav1.CNIIngressRules // SecurityGroups returns the cluster security groups as a map, it creates the map if empty. SecurityGroups() map[infrav1.SecurityGroupRole]infrav1.SecurityGroup // SecondaryCidrBlock returns the optional secondary CIDR block to use for pod IPs. This may later be renamed since // it should not be confused with SecondaryCidrBlocks. SecondaryCidrBlock() *string // SecondaryCidrBlocks returns the additional CIDR blocks to be associated with the managed VPC. SecondaryCidrBlocks() []infrav1.VpcCidrBlock // AllSecondaryCidrBlocks returns a unique list of all secondary CIDR blocks (combining `SecondaryCidrBlock` and // `SecondaryCidrBlocks`). AllSecondaryCidrBlocks() []infrav1.VpcCidrBlock // Bastion returns the bastion details for the cluster. Bastion() *infrav1.Bastion // Bucket returns the cluster bucket. Bucket() *infrav1.S3Bucket // TagUnmanagedNetworkResources returns is tagging unmanaged network resources is set. TagUnmanagedNetworkResources() bool // SetNatGatewaysIPs sets the Nat Gateways Public IPs. SetNatGatewaysIPs(ips []string) // GetNatGatewaysIPs gets the Nat Gateways Public IPs. GetNatGatewaysIPs() []string }
NetworkScope is the interface for the scope to be used with the network services.
type NodeStatus ¶
NodeStatus represents the status of a Kubernetes node.
type ProviderID ¶ added in v2.4.0
type ProviderID struct {
// contains filtered or unexported fields
}
ProviderID is a struct representation of a Kubernetes ProviderID. Format: cloudProvider://optional/segments/etc/id
func NewProviderID ¶ added in v2.4.0
func NewProviderID(id string) (*ProviderID, error)
NewProviderID parses the input string and returns a new ProviderID.
func (*ProviderID) CloudProvider
deprecated
added in
v2.4.0
func (p *ProviderID) CloudProvider() string
CloudProvider returns the cloud provider portion of the ProviderID.
Deprecated: This method is going to be removed in a future release.
func (*ProviderID) Equals
deprecated
added in
v2.4.0
func (p *ProviderID) Equals(o *ProviderID) bool
Equals returns true if this ProviderID string matches another ProviderID string.
Deprecated: This method is going to be removed in a future release.
func (*ProviderID) ID
deprecated
added in
v2.4.0
func (p *ProviderID) ID() string
ID returns the identifier portion of the ProviderID.
Deprecated: This method is going to be removed in a future release.
func (*ProviderID) IndexKey
deprecated
added in
v2.4.0
func (p *ProviderID) IndexKey() string
IndexKey returns the required level of uniqueness to represent and index machines uniquely from their node providerID.
Deprecated: This method is going to be removed in a future release.
func (ProviderID) String
deprecated
added in
v2.4.0
func (p ProviderID) String() string
String returns the string representation of this object.
Deprecated: This method is going to be removed in a future release.
func (*ProviderID) Validate
deprecated
added in
v2.4.0
func (p *ProviderID) Validate() bool
Validate returns true if the provider id is valid.
Deprecated: This method is going to be removed in a future release.
type ROSAControlPlaneScope ¶ added in v2.3.0
type ROSAControlPlaneScope struct { logger.Logger Client client.Client Cluster *clusterv1.Cluster ControlPlane *rosacontrolplanev1.ROSAControlPlane Identity *sts.GetCallerIdentityOutput // contains filtered or unexported fields }
ROSAControlPlaneScope defines the basic context for an actuator to operate upon.
func NewROSAControlPlaneScope ¶ added in v2.3.0
func NewROSAControlPlaneScope(params ROSAControlPlaneScopeParams) (*ROSAControlPlaneScope, error)
NewROSAControlPlaneScope creates a new ROSAControlPlaneScope from the supplied parameters.
func (*ROSAControlPlaneScope) Close ¶ added in v2.3.0
func (s *ROSAControlPlaneScope) Close() error
Close closes the current scope persisting the control plane configuration and status.
func (*ROSAControlPlaneScope) ClusterAdminPasswordSecret ¶ added in v2.4.0
func (s *ROSAControlPlaneScope) ClusterAdminPasswordSecret() *corev1.Secret
ClusterAdminPasswordSecret returns the corev1.Secret object for the cluster admin password.
func (*ROSAControlPlaneScope) ControllerName ¶ added in v2.4.0
func (s *ROSAControlPlaneScope) ControllerName() string
ControllerName returns the name of the controller.
func (*ROSAControlPlaneScope) CredentialsSecret ¶ added in v2.4.0
func (s *ROSAControlPlaneScope) CredentialsSecret() *corev1.Secret
CredentialsSecret returns the CredentialsSecret object.
func (*ROSAControlPlaneScope) ExternalAuthBootstrapKubeconfigSecret ¶ added in v2.5.0
func (s *ROSAControlPlaneScope) ExternalAuthBootstrapKubeconfigSecret() *corev1.Secret
ExternalAuthBootstrapKubeconfigSecret returns the corev1.Secret object for the external auth bootstrap kubeconfig. This is a temporarily admin kubeconfig generated using break-glass credentials for the user to bootstreap their environment like setting up RBAC for oidc users/groups. This Kubeonconfig will be created only once initially and be valid for only 24h. The kubeconfig secret will not be autoamticallty rotated and will be invalid after the 24h. However, users can opt to manually delete the secret to trigger the generation of a new one which will be valid for another 24h.
func (*ROSAControlPlaneScope) IdentityRef ¶ added in v2.4.0
func (s *ROSAControlPlaneScope) IdentityRef() *infrav1.AWSIdentityReference
IdentityRef returns the AWSIdentityReference object.
func (*ROSAControlPlaneScope) InfraCluster ¶ added in v2.4.0
func (s *ROSAControlPlaneScope) InfraCluster() cloud.ClusterObject
InfraCluster returns the AWSManagedControlPlane object.
func (*ROSAControlPlaneScope) InfraClusterName ¶ added in v2.3.0
func (s *ROSAControlPlaneScope) InfraClusterName() string
InfraClusterName returns the AWS cluster name.
func (*ROSAControlPlaneScope) Name ¶ added in v2.3.0
func (s *ROSAControlPlaneScope) Name() string
Name returns the CAPI cluster name.
func (*ROSAControlPlaneScope) Namespace ¶ added in v2.3.0
func (s *ROSAControlPlaneScope) Namespace() string
Namespace returns the cluster namespace.
func (*ROSAControlPlaneScope) PatchObject ¶ added in v2.3.0
func (s *ROSAControlPlaneScope) PatchObject() error
PatchObject persists the control plane configuration and status.
func (*ROSAControlPlaneScope) RosaClusterName ¶ added in v2.4.0
func (s *ROSAControlPlaneScope) RosaClusterName() string
RosaClusterName returns the ROSA cluster name.
func (*ROSAControlPlaneScope) ServiceLimiter ¶ added in v2.4.0
func (s *ROSAControlPlaneScope) ServiceLimiter(service string) *throttle.ServiceLimiter
ServiceLimiter returns the AWS SDK session. Used for creating clients.
func (*ROSAControlPlaneScope) Session ¶ added in v2.4.0
func (s *ROSAControlPlaneScope) Session() awsclient.ConfigProvider
Session returns the AWS SDK session. Used for creating clients.
type ROSAControlPlaneScopeParams ¶ added in v2.3.0
type ROSAControlPlaneScopeParams struct { Client client.Client Logger *logger.Logger Cluster *clusterv1.Cluster ControlPlane *rosacontrolplanev1.ROSAControlPlane ControllerName string Endpoints []ServiceEndpoint }
ROSAControlPlaneScopeParams defines the input parameters used to create a new ROSAControlPlaneScope.
type ResourceService ¶
type ResourceService interface {
UpdateResourceTags(resourceID *string, create, remove map[string]string) error
}
ResourceService defines the interface for resources.
type ResourceServiceToUpdate ¶
type ResourceServiceToUpdate struct { ResourceID *string ResourceService ResourceService }
ResourceServiceToUpdate is a struct that contains the resource ID and the resource service to update.
type RosaMachinePoolScope ¶ added in v2.4.0
type RosaMachinePoolScope struct { logger.Logger client.Client Cluster *clusterv1.Cluster ControlPlane *rosacontrolplanev1.ROSAControlPlane RosaMachinePool *expinfrav1.ROSAMachinePool MachinePool *expclusterv1.MachinePool // contains filtered or unexported fields }
RosaMachinePoolScope defines the basic context for an actuator to operate upon.
func NewRosaMachinePoolScope ¶ added in v2.4.0
func NewRosaMachinePoolScope(params RosaMachinePoolScopeParams) (*RosaMachinePoolScope, error)
NewRosaMachinePoolScope creates a new Scope from the supplied parameters. This is meant to be called for each reconcile iteration.
func (*RosaMachinePoolScope) Close ¶ added in v2.4.0
func (s *RosaMachinePoolScope) Close() error
Close closes the current scope persisting the control plane configuration and status.
func (*RosaMachinePoolScope) ClusterObj ¶ added in v2.4.0
func (s *RosaMachinePoolScope) ClusterObj() cloud.ClusterObject
ClusterObj returns the cluster object.
func (*RosaMachinePoolScope) ControlPlaneSubnets ¶ added in v2.4.0
func (s *RosaMachinePoolScope) ControlPlaneSubnets() []string
ControlPlaneSubnets returns the control plane subnets.
func (*RosaMachinePoolScope) ControllerName ¶ added in v2.4.0
func (s *RosaMachinePoolScope) ControllerName() string
ControllerName returns the name of the controller that created the RosaMachinePool.
func (*RosaMachinePoolScope) GetSetter ¶ added in v2.4.0
func (s *RosaMachinePoolScope) GetSetter() conditions.Setter
GetSetter returns the condition setter for the RosaMachinePool.
func (*RosaMachinePoolScope) IdentityRef ¶ added in v2.4.1
func (s *RosaMachinePoolScope) IdentityRef() *v1beta2.AWSIdentityReference
IdentityRef implements cloud.SessionMetadata.
func (*RosaMachinePoolScope) InfraCluster ¶ added in v2.4.0
func (s *RosaMachinePoolScope) InfraCluster() cloud.ClusterObject
InfraCluster returns the AWS infrastructure cluster or control plane object.
func (*RosaMachinePoolScope) InfraClusterName ¶ added in v2.4.1
func (s *RosaMachinePoolScope) InfraClusterName() string
InfraClusterName implements cloud.SessionMetadata.
func (*RosaMachinePoolScope) Namespace ¶ added in v2.4.1
func (s *RosaMachinePoolScope) Namespace() string
Namespace implements cloud.SessionMetadata.
func (*RosaMachinePoolScope) NodePoolName ¶ added in v2.4.0
func (s *RosaMachinePoolScope) NodePoolName() string
NodePoolName returns the nodePool name of this machine pool.
func (*RosaMachinePoolScope) PatchCAPIMachinePoolObject ¶ added in v2.4.0
func (s *RosaMachinePoolScope) PatchCAPIMachinePoolObject(ctx context.Context) error
PatchCAPIMachinePoolObject persists the capi machinepool configuration and status.
func (*RosaMachinePoolScope) PatchObject ¶ added in v2.4.0
func (s *RosaMachinePoolScope) PatchObject() error
PatchObject persists the control plane configuration and status.
func (*RosaMachinePoolScope) RosaClusterName ¶ added in v2.4.0
func (s *RosaMachinePoolScope) RosaClusterName() string
RosaClusterName returns the cluster name.
func (*RosaMachinePoolScope) RosaMachinePoolName ¶ added in v2.4.0
func (s *RosaMachinePoolScope) RosaMachinePoolName() string
RosaMachinePoolName returns the rosa machine pool name.
func (*RosaMachinePoolScope) RosaMchinePoolReadyFalse ¶ added in v2.4.0
func (s *RosaMachinePoolScope) RosaMchinePoolReadyFalse(reason string, err string) error
RosaMchinePoolReadyFalse marks the ready condition false using warning if error isn't empty.
func (*RosaMachinePoolScope) ServiceLimiter ¶ added in v2.4.1
func (s *RosaMachinePoolScope) ServiceLimiter(service string) *throttle.ServiceLimiter
ServiceLimiter implements cloud.Session.
func (*RosaMachinePoolScope) Session ¶ added in v2.4.1
func (s *RosaMachinePoolScope) Session() awsclient.ConfigProvider
Session implements cloud.Session.
type RosaMachinePoolScopeParams ¶ added in v2.4.0
type RosaMachinePoolScopeParams struct { Client client.Client Logger *logger.Logger Cluster *clusterv1.Cluster ControlPlane *rosacontrolplanev1.ROSAControlPlane RosaMachinePool *expinfrav1.ROSAMachinePool MachinePool *expclusterv1.MachinePool ControllerName string Endpoints []ServiceEndpoint }
RosaMachinePoolScopeParams defines the input parameters used to create a new Scope.
type S3Scope ¶
type S3Scope interface { cloud.ClusterScoper Bucket() *infrav1.S3Bucket }
S3Scope is the interface for the scope to be used with the S3 service.
type SGScope ¶
type SGScope interface { cloud.ClusterScoper // Network returns the cluster network object. Network() *infrav1.NetworkStatus // SecurityGroups returns the cluster security groups as a map, it creates the map if empty. SecurityGroups() map[infrav1.SecurityGroupRole]infrav1.SecurityGroup // SecurityGroupOverrides returns the security groups that are used as overrides in the cluster spec SecurityGroupOverrides() map[infrav1.SecurityGroupRole]string // VPC returns the cluster VPC. VPC() *infrav1.VPCSpec // CNIIngressRules returns the CNI spec ingress rules. CNIIngressRules() infrav1.CNIIngressRules // Bastion returns the bastion details for the cluster. Bastion() *infrav1.Bastion // ControlPlaneLoadBalancer returns the load balancer settings that are requested. // Deprecated: Use ControlPlaneLoadBalancers() ControlPlaneLoadBalancer() *infrav1.AWSLoadBalancerSpec // SetNatGatewaysIPs sets the Nat Gateways Public IPs. SetNatGatewaysIPs(ips []string) // GetNatGatewaysIPs gets the Nat Gateways Public IPs. GetNatGatewaysIPs() []string // AdditionalControlPlaneIngressRules returns the additional ingress rules for the control plane security group. AdditionalControlPlaneIngressRules() []infrav1.IngressRule // ControlPlaneLoadBalancers returns both the ControlPlaneLoadBalancer and SecondaryControlPlaneLoadBalancer AWSLoadBalancerSpecs. // The control plane load balancers should always be returned in the above order. ControlPlaneLoadBalancers() []*infrav1.AWSLoadBalancerSpec // NodePortIngressRuleCidrBlocks returns the CIDR blocks for the node NodePort ingress rules. NodePortIngressRuleCidrBlocks() []string }
SGScope is the interface for the scope to be used with the sg service.
type ServiceEndpoint ¶
ServiceEndpoint defines a tuple containing AWS Service resolution information.