Documentation
¶
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type BackupBucketConfig
- type CloudControllerManagerConfig
- type CloudProfileConfig
- type ControlPlaneConfig
- type CpuOptions
- type DataVolume
- type DualStack
- type EC2
- type HTTPTokensValue
- type IAM
- type IAMInstanceProfile
- type IgnoreTags
- type ImmutableConfig
- type InfrastructureConfig
- type InfrastructureState
- type InfrastructureStatus
- type InstanceMetadataOptions
- type InstanceProfile
- type LoadBalancerControllerConfig
- type MachineImage
- type MachineImageVersion
- type MachineImages
- type ModeType
- type Networks
- type RegionAMIMapping
- type RetentionType
- type Role
- type SecurityGroup
- type Storage
- type Subnet
- type VPC
- type VPCStatus
- type Volume
- type VolumeType
- type WorkerConfig
- type WorkerStatus
- type WorkloadIdentityConfig
- type Zone
Constants ¶
const ( // BucketLevelImmutability sets the immutability feature on the bucket level. BucketLevelImmutability RetentionType = "bucket" // ComplianceMode sets the "compliance" mode immutability. ComplianceMode ModeType = "compliance" // GovernanceMode sets the "governance" mode immutability. GovernanceMode ModeType = "governance" )
const ( // PurposeNodes is a constant describing that the respective resource is used for nodes. PurposeNodes string = "nodes" // PurposePublic is a constant describing that the respective resource is used for public load balancers. PurposePublic string = "public" // PurposeInternal is a constant describing that the respective resource is used for internal load balancers. PurposeInternal string = "internal" )
const GroupName = "aws.provider.extensions.gardener.cloud"
GroupName is the group name use in this package
Variables ¶
var ( // SchemeBuilder used to register the Shoot resource. SchemeBuilder runtime.SchemeBuilder // AddToScheme is a pointer to SchemeBuilder.AddToScheme. AddToScheme = localSchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type BackupBucketConfig ¶ added in v0.35.1
type BackupBucketConfig struct {
metav1.TypeMeta `json:",inline"`
// Immutability defines the immutability configuration for the backup bucket.
// +optional
Immutability *ImmutableConfig `json:"immutability,omitempty"`
}
BackupBucketConfig represents the configuration for a backup bucket.
func (*BackupBucketConfig) DeepCopy ¶ added in v0.35.1
func (in *BackupBucketConfig) DeepCopy() *BackupBucketConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupBucketConfig.
func (*BackupBucketConfig) DeepCopyInto ¶ added in v0.35.1
func (in *BackupBucketConfig) DeepCopyInto(out *BackupBucketConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupBucketConfig) DeepCopyObject ¶ added in v0.35.1
func (in *BackupBucketConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CloudControllerManagerConfig ¶
type CloudControllerManagerConfig struct {
// FeatureGates contains information about enabled feature gates.
// +optional
FeatureGates map[string]bool `json:"featureGates,omitempty"`
// UseCustomRouteController controls if custom route controller should be used.
// Defaults to false.
// +optional
UseCustomRouteController *bool `json:"useCustomRouteController,omitempty"`
}
CloudControllerManagerConfig contains configuration settings for the cloud-controller-manager.
func (*CloudControllerManagerConfig) DeepCopy ¶
func (in *CloudControllerManagerConfig) DeepCopy() *CloudControllerManagerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudControllerManagerConfig.
func (*CloudControllerManagerConfig) DeepCopyInto ¶
func (in *CloudControllerManagerConfig) DeepCopyInto(out *CloudControllerManagerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudProfileConfig ¶
type CloudProfileConfig struct {
metav1.TypeMeta `json:",inline"`
// MachineImages is the list of machine images that are understood by the controller. It maps
// logical names and versions to provider-specific identifiers.
MachineImages []MachineImages `json:"machineImages"`
}
CloudProfileConfig contains provider-specific configuration that is embedded into Gardener's `CloudProfile` resource.
func (*CloudProfileConfig) DeepCopy ¶
func (in *CloudProfileConfig) DeepCopy() *CloudProfileConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProfileConfig.
func (*CloudProfileConfig) DeepCopyInto ¶
func (in *CloudProfileConfig) DeepCopyInto(out *CloudProfileConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudProfileConfig) DeepCopyObject ¶
func (in *CloudProfileConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ControlPlaneConfig ¶
type ControlPlaneConfig struct {
metav1.TypeMeta `json:",inline"`
// CloudControllerManager contains configuration settings for the cloud-controller-manager.
// +optional
CloudControllerManager *CloudControllerManagerConfig `json:"cloudControllerManager,omitempty"`
// LoadBalancerController contains configuration settings for the optional aws-load-balancer-controller (ALB).
// +optional
LoadBalancerController *LoadBalancerControllerConfig `json:"loadBalancerController,omitempty"`
// Storage contains configuration for storage in the cluster.
// +optional
Storage *Storage `json:"storage,omitempty"`
}
ControlPlaneConfig contains configuration settings for the control plane.
func (*ControlPlaneConfig) DeepCopy ¶
func (in *ControlPlaneConfig) DeepCopy() *ControlPlaneConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneConfig.
func (*ControlPlaneConfig) DeepCopyInto ¶
func (in *ControlPlaneConfig) DeepCopyInto(out *ControlPlaneConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControlPlaneConfig) DeepCopyObject ¶
func (in *ControlPlaneConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CpuOptions ¶
type CpuOptions struct {
// CoreCount specifies the number of CPU cores per instance.
CoreCount *int64 `json:"coreCount"`
// ThreadsPerCore sets the number of threads per core. Must be either '1' (disable multi-threading) or '2'.
ThreadsPerCore *int64 `json:"threadsPerCore"`
}
CpuOptions contains detailed configuration for the number of cores and threads for the instance.
func (*CpuOptions) DeepCopy ¶
func (in *CpuOptions) DeepCopy() *CpuOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CpuOptions.
func (*CpuOptions) DeepCopyInto ¶
func (in *CpuOptions) DeepCopyInto(out *CpuOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataVolume ¶
type DataVolume struct {
// Name is the name of the data volume this configuration applies to.
Name string `json:"name"`
// Volume contains configuration for the volume.
Volume `json:",inline"`
// SnapshotID is the ID of the snapshot.
// +optional
SnapshotID *string `json:"snapshotID,omitempty"`
}
DataVolume contains configuration for data volumes attached to VMs.
func (*DataVolume) DeepCopy ¶
func (in *DataVolume) DeepCopy() *DataVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataVolume.
func (*DataVolume) DeepCopyInto ¶
func (in *DataVolume) DeepCopyInto(out *DataVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DualStack ¶
type DualStack struct {
// Enabled specifies if dual-stack is enabled or not.
Enabled bool `json:"enabled"`
}
DualStack specifies whether dual-stack or IPv4-only should be supported.
func (*DualStack) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DualStack.
func (*DualStack) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EC2 ¶
type EC2 struct {
// KeyName is the name of the SSH key.
KeyName string `json:"keyName"`
}
EC2 contains information about the AWS EC2 resources.
func (*EC2) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EC2.
func (*EC2) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTPTokensValue ¶
type HTTPTokensValue string
HTTPTokensValue is a constant for HTTPTokens values.
const ( // HTTPTokensRequired is a constant for requiring the use of tokens to access IMDS. Effectively disables access via // the IMDSv1 endpoints. HTTPTokensRequired HTTPTokensValue = "required" // HTTPTokensOptional that makes the use of tokens for IMDS optional. Effectively allows access via both IMDSv1 and // IMDSv2 endpoints. HTTPTokensOptional HTTPTokensValue = "optional" )
type IAM ¶
type IAM struct {
// InstanceProfiles is a list of AWS IAM instance profiles.
InstanceProfiles []InstanceProfile `json:"instanceProfiles"`
// Roles is a list of AWS IAM roles.
Roles []Role `json:"roles"`
}
IAM contains information about the AWS IAM resources.
func (*IAM) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAM.
func (*IAM) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IAMInstanceProfile ¶
type IAMInstanceProfile struct {
// Name is the name of the instance profile.
// +optional
Name *string `json:"name,omitempty"`
// ARN is the ARN of the instance profile.
// +optional
ARN *string `json:"arn,omitempty"`
}
IAMInstanceProfile contains configuration for the IAM instance profile that should be used for the VMs of this worker pool. Either 'Name" or 'ARN' must be specified.
func (*IAMInstanceProfile) DeepCopy ¶
func (in *IAMInstanceProfile) DeepCopy() *IAMInstanceProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAMInstanceProfile.
func (*IAMInstanceProfile) DeepCopyInto ¶
func (in *IAMInstanceProfile) DeepCopyInto(out *IAMInstanceProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IgnoreTags ¶
type IgnoreTags struct {
// Keys is a list of individual tag keys, that should be ignored during infrastructure reconciliation.
// +optional
Keys []string `json:"keys,omitempty"`
// KeyPrefixes is a list of tag key prefixes, that should be ignored during infrastructure reconciliation.
// +optional
KeyPrefixes []string `json:"keyPrefixes,omitempty"`
}
IgnoreTags holds information about ignored resource tags.
func (*IgnoreTags) DeepCopy ¶
func (in *IgnoreTags) DeepCopy() *IgnoreTags
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IgnoreTags.
func (*IgnoreTags) DeepCopyInto ¶
func (in *IgnoreTags) DeepCopyInto(out *IgnoreTags)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImmutableConfig ¶ added in v0.35.1
type ImmutableConfig struct {
// RetentionType specifies the type of retention for the backup bucket.
// Currently allowed value is:
// - "bucket": retention policy applies on the entire bucket.
RetentionType RetentionType `json:"retentionType"`
// RetentionPeriod specifies the immutability retention period for the backup bucket.
// S3 only supports immutability durations in days or years, therefore this field must be set as multiple of 24h.
RetentionPeriod metav1.Duration `json:"retentionPeriod"`
// S3 provides two retention modes that apply different levels of protection to objects:
// Allowed values are: "governance" or "compliance" mode.
Mode ModeType `json:"mode"`
}
ImmutableConfig represents the immutability configuration for a backup bucket.
func (*ImmutableConfig) DeepCopy ¶ added in v0.35.1
func (in *ImmutableConfig) DeepCopy() *ImmutableConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImmutableConfig.
func (*ImmutableConfig) DeepCopyInto ¶ added in v0.35.1
func (in *ImmutableConfig) DeepCopyInto(out *ImmutableConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InfrastructureConfig ¶
type InfrastructureConfig struct {
metav1.TypeMeta `json:",inline"`
// EnableECRAccess specifies whether the IAM role policy for the worker nodes shall contain
// permissions to access the ECR.
// default: true
// +optional
EnableECRAccess *bool `json:"enableECRAccess,omitempty"`
// DualStack specifies whether dual-stack or IPv4-only should be supported.
DualStack *DualStack `json:"dualStack,omitempty"`
// Networks is the AWS specific network configuration (VPC, subnets, etc.)
Networks Networks `json:"networks"`
// IgnoreTags allows to configure which resource tags on resources managed by Gardener should be ignored during
// infrastructure reconciliation. By default, all tags that are added outside of Gardener's / terraform's
// reconciliation will be removed during the next reconciliation. This field allows users and automation to add
// custom tags on resources created and managed by Gardener without loosing them on the next reconciliation.
// See https://registry.terraform.io/providers/hashicorp/aws/latest/docs/guides/resource-tagging#ignoring-changes-in-all-resources
// for details of the underlying terraform implementation.
// +optional
IgnoreTags *IgnoreTags `json:"ignoreTags,omitempty"`
}
InfrastructureConfig infrastructure configuration resource
func (*InfrastructureConfig) DeepCopy ¶
func (in *InfrastructureConfig) DeepCopy() *InfrastructureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureConfig.
func (*InfrastructureConfig) DeepCopyInto ¶
func (in *InfrastructureConfig) DeepCopyInto(out *InfrastructureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InfrastructureConfig) DeepCopyObject ¶
func (in *InfrastructureConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InfrastructureState ¶
InfrastructureState is the state which is persisted as part of the infrastructure status.
func (*InfrastructureState) DeepCopy ¶
func (in *InfrastructureState) DeepCopy() *InfrastructureState
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureState.
func (*InfrastructureState) DeepCopyInto ¶
func (in *InfrastructureState) DeepCopyInto(out *InfrastructureState)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InfrastructureState) DeepCopyObject ¶
func (in *InfrastructureState) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InfrastructureStatus ¶
type InfrastructureStatus struct {
metav1.TypeMeta `json:",inline"`
// EC2 contains information about the created AWS EC2 resources.
EC2 EC2 `json:"ec2"`
// IAM contains information about the created AWS IAM resources.
IAM IAM `json:"iam"`
// VPC contains information about the created AWS VPC and some related resources.
VPC VPCStatus `json:"vpc"`
}
InfrastructureStatus contains information about created infrastructure resources.
func (*InfrastructureStatus) DeepCopy ¶
func (in *InfrastructureStatus) DeepCopy() *InfrastructureStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureStatus.
func (*InfrastructureStatus) DeepCopyInto ¶
func (in *InfrastructureStatus) DeepCopyInto(out *InfrastructureStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InfrastructureStatus) DeepCopyObject ¶
func (in *InfrastructureStatus) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InstanceMetadataOptions ¶
type InstanceMetadataOptions struct {
// HTTPTokens enforces the use of metadata v2 API.
HTTPTokens *HTTPTokensValue `json:"httpTokens,omitempty"`
// HTTPPutResponseHopLimit is the response hop limit for instance metadata requests.
// Valid values are between 1 and 64.
HTTPPutResponseHopLimit *int64 `json:"httpPutResponseHopLimit,omitempty"`
}
InstanceMetadataOptions contains configuration for controlling access to the metadata API.
func (*InstanceMetadataOptions) DeepCopy ¶
func (in *InstanceMetadataOptions) DeepCopy() *InstanceMetadataOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceMetadataOptions.
func (*InstanceMetadataOptions) DeepCopyInto ¶
func (in *InstanceMetadataOptions) DeepCopyInto(out *InstanceMetadataOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InstanceProfile ¶
type InstanceProfile struct {
// Purpose is a logical description of the instance profile.
Purpose string `json:"purpose"`
// Name is the name for this instance profile.
Name string `json:"name"`
}
InstanceProfile is an AWS IAM instance profile.
func (*InstanceProfile) DeepCopy ¶
func (in *InstanceProfile) DeepCopy() *InstanceProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceProfile.
func (*InstanceProfile) DeepCopyInto ¶
func (in *InstanceProfile) DeepCopyInto(out *InstanceProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadBalancerControllerConfig ¶
type LoadBalancerControllerConfig struct {
// Enabled controls if the ALB should be deployed.
Enabled bool `json:"enabled"`
// IngressClassName is the name of the ingress class the ALB controller will target. Default value is 'alb'.
// If empty string is specified, it will match all ingresses without ingress class annotation and ingresses of type alb
// +optional
IngressClassName *string `json:"ingressClassName,omitempty"`
}
LoadBalancerControllerConfig contains configuration settings for the optional aws-load-balancer-controller (ALB).
func (*LoadBalancerControllerConfig) DeepCopy ¶
func (in *LoadBalancerControllerConfig) DeepCopy() *LoadBalancerControllerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerControllerConfig.
func (*LoadBalancerControllerConfig) DeepCopyInto ¶
func (in *LoadBalancerControllerConfig) DeepCopyInto(out *LoadBalancerControllerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MachineImage ¶
type MachineImage struct {
// Name is the logical name of the machine image.
Name string `json:"name"`
// Version is the logical version of the machine image.
Version string `json:"version"`
// AMI is the AMI for the machine image.
AMI string `json:"ami"`
// Architecture is the CPU architecture of the machine image.
// +optional
Architecture *string `json:"architecture,omitempty"`
}
MachineImage is a mapping from logical names and versions to provider-specific machine image data.
func (*MachineImage) DeepCopy ¶
func (in *MachineImage) DeepCopy() *MachineImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineImage.
func (*MachineImage) DeepCopyInto ¶
func (in *MachineImage) DeepCopyInto(out *MachineImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MachineImageVersion ¶
type MachineImageVersion struct {
// Version is the version of the image.
Version string `json:"version"`
// Regions is a mapping to the correct AMI for the machine image in the supported regions.
Regions []RegionAMIMapping `json:"regions"`
}
MachineImageVersion contains a version and a provider-specific identifier.
func (*MachineImageVersion) DeepCopy ¶
func (in *MachineImageVersion) DeepCopy() *MachineImageVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineImageVersion.
func (*MachineImageVersion) DeepCopyInto ¶
func (in *MachineImageVersion) DeepCopyInto(out *MachineImageVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MachineImages ¶
type MachineImages struct {
// Name is the logical name of the machine image.
Name string `json:"name"`
// Versions contains versions and a provider-specific identifier.
Versions []MachineImageVersion `json:"versions"`
}
MachineImages is a mapping from logical names and versions to provider-specific identifiers.
func (*MachineImages) DeepCopy ¶
func (in *MachineImages) DeepCopy() *MachineImages
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineImages.
func (*MachineImages) DeepCopyInto ¶
func (in *MachineImages) DeepCopyInto(out *MachineImages)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModeType ¶ added in v0.35.1
type ModeType string
ModeType defines the type of object lock mode for immutability settings.
type Networks ¶
type Networks struct {
// VPC indicates whether to use an existing VPC or create a new one.
VPC VPC `json:"vpc"`
// Zones belonging to the same region
Zones []Zone `json:"zones"`
}
Networks holds information about the Kubernetes and infrastructure networks.
func (*Networks) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Networks.
func (*Networks) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegionAMIMapping ¶
type RegionAMIMapping struct {
// Name is the name of the region.
Name string `json:"name"`
// AMI is the AMI for the machine image.
AMI string `json:"ami"`
// Architecture is the CPU architecture of the machine image.
// +optional
Architecture *string `json:"architecture,omitempty"`
}
RegionAMIMapping is a mapping to the correct AMI for the machine image in the given region.
func (*RegionAMIMapping) DeepCopy ¶
func (in *RegionAMIMapping) DeepCopy() *RegionAMIMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAMIMapping.
func (*RegionAMIMapping) DeepCopyInto ¶
func (in *RegionAMIMapping) DeepCopyInto(out *RegionAMIMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RetentionType ¶ added in v0.35.1
type RetentionType string
RetentionType defines the level at which immutability properties are applied on objects.
type Role ¶
type Role struct {
// Purpose is a logical description of the role.
Purpose string `json:"purpose"`
// ARN is the AWS Resource Name for this role.
ARN string `json:"arn"`
}
Role is an AWS IAM role.
func (*Role) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Role.
func (*Role) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroup ¶
type SecurityGroup struct {
// Purpose is a logical description of the security group.
Purpose string `json:"purpose"`
// ID is the subnet id.
ID string `json:"id"`
}
SecurityGroup is an AWS security group related to a VPC.
func (*SecurityGroup) DeepCopy ¶
func (in *SecurityGroup) DeepCopy() *SecurityGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroup.
func (*SecurityGroup) DeepCopyInto ¶
func (in *SecurityGroup) DeepCopyInto(out *SecurityGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Storage ¶
type Storage struct {
// ManagedDefaultClass controls if the 'default' StorageClass and 'default' VolumeSnapshotClass
// would be marked as default. Set to false to manually set the default to another class not
// managed by Gardener.
// Defaults to true.
// +optional
ManagedDefaultClass *bool `json:"managedDefaultClass,omitempty"`
}
Storage contains configuration for storage in the cluster.
func (*Storage) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage.
func (*Storage) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Subnet ¶
type Subnet struct {
// Purpose is a logical description of the subnet.
Purpose string `json:"purpose"`
// ID is the subnet id.
ID string `json:"id"`
// Zone is the availability zone into which the subnet has been created.
Zone string `json:"zone"`
}
Subnet is an AWS subnet related to a VPC.
func (*Subnet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subnet.
func (*Subnet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VPC ¶
type VPC struct {
// ID is the VPC id.
// +optional
ID *string `json:"id,omitempty"`
// CIDR is the VPC CIDR.
// +optional
CIDR *string `json:"cidr,omitempty"`
// GatewayEndpoints service names to configure as gateway endpoints in the VPC.
// +optional
GatewayEndpoints []string `json:"gatewayEndpoints,omitempty"`
}
VPC contains information about the AWS VPC and some related resources.
func (*VPC) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPC.
func (*VPC) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VPCStatus ¶
type VPCStatus struct {
// ID is the VPC id.
ID string `json:"id"`
// Subnets is a list of subnets that have been created.
Subnets []Subnet `json:"subnets"`
// SecurityGroups is a list of security groups that have been created.
SecurityGroups []SecurityGroup `json:"securityGroups"`
}
VPCStatus contains information about a generated VPC or resources inside an existing VPC.
func (*VPCStatus) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPCStatus.
func (*VPCStatus) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Volume ¶
type Volume struct {
// IOPS is the number of I/O operations per second (IOPS) that the volume supports.
// For io1 volume type, this represents the number of IOPS that are provisioned for the
// volume. For gp2 volume type, this represents the baseline performance of the volume and
// the rate at which the volume accumulates I/O credits for bursting. For more
// information about General Purpose SSD baseline performance, I/O credits,
// and bursting, see Amazon EBS Volume Types (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html)
// in the Amazon Elastic Compute Cloud User Guide.
//
// Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for
// gp2 volumes.
//
// Condition: This parameter is required for requests to create io1 volumes;
// it is not used in requests to create gp2, st1, sc1, or standard volumes.
// +optional
IOPS *int64 `json:"iops,omitempty"`
// The throughput that the volume supports, in MiB/s.
//
// This parameter is valid only for gp3 volumes.
//
// Valid Range: The range as of 16th Aug 2022 is from 125 MiB/s to 1000 MiB/s. For more info refer (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html)
Throughput *int64 `json:"throughput,omitempty"`
}
Volume contains configuration for the root disks attached to VMs.
func (*Volume) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume.
func (*Volume) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeType ¶
type VolumeType string
VolumeType is a constant for volume types.
const ( // VolumeTypeIO1 is a constant for the io1 volume type. VolumeTypeIO1 VolumeType = "io1" // VolumeTypeGP2 is a constant for the gp2 volume type. VolumeTypeGP2 VolumeType = "gp2" // VolumeTypeGP3 is a constant for the gp3 volume type. VolumeTypeGP3 VolumeType = "gp3" )
type WorkerConfig ¶
type WorkerConfig struct {
metav1.TypeMeta `json:",inline"`
// NodeTemplate contains resource information of the machine which is used by Cluster Autoscaler to generate nodeTemplate during scaling a nodeGroup from zero.
// +optional
NodeTemplate *extensionsv1alpha1.NodeTemplate `json:"nodeTemplate,omitempty"`
// Volume contains configuration for the root disks attached to VMs.
// +optional
Volume *Volume `json:"volume,omitempty"`
// DataVolumes contains configuration for the additional disks attached to VMs.
// +optional
DataVolumes []DataVolume `json:"dataVolumes,omitempty"`
// IAMInstanceProfile contains configuration for the IAM instance profile that should be used for the VMs of this
// worker pool.
// +optional
IAMInstanceProfile *IAMInstanceProfile `json:"iamInstanceProfile,omitempty"`
// InstanceMetadataOptions contains configuration for controlling access to the metadata API.
InstanceMetadataOptions *InstanceMetadataOptions `json:"instanceMetadataOptions,omitempty"`
// CpuOptions contains detailed configuration for the number of cores and threads for the instance.
CpuOptions *CpuOptions `json:"cpuOptions,omitempty"`
}
WorkerConfig contains configuration settings for the worker nodes.
func (*WorkerConfig) DeepCopy ¶
func (in *WorkerConfig) DeepCopy() *WorkerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerConfig.
func (*WorkerConfig) DeepCopyInto ¶
func (in *WorkerConfig) DeepCopyInto(out *WorkerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WorkerConfig) DeepCopyObject ¶
func (in *WorkerConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WorkerStatus ¶
type WorkerStatus struct {
metav1.TypeMeta `json:",inline"`
// MachineImages is a list of machine images that have been used in this worker. Usually, the extension controller
// gets the mapping from name/version to the provider-specific machine image data in its componentconfig. However, if
// a version that is still in use gets removed from this componentconfig it cannot reconcile anymore existing `Worker`
// resources that are still using this version. Hence, it stores the used versions in the provider status to ensure
// reconciliation is possible.
// +optional
MachineImages []MachineImage `json:"machineImages,omitempty"`
}
WorkerStatus contains information about created worker resources.
func (*WorkerStatus) DeepCopy ¶
func (in *WorkerStatus) DeepCopy() *WorkerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerStatus.
func (*WorkerStatus) DeepCopyInto ¶
func (in *WorkerStatus) DeepCopyInto(out *WorkerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WorkerStatus) DeepCopyObject ¶
func (in *WorkerStatus) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WorkloadIdentityConfig ¶ added in v0.35.1
type WorkloadIdentityConfig struct {
metav1.TypeMeta
// RoleARN is the identifier of the role that the workload identity will assume.
RoleARN string `json:"roleARN,omitempty"`
}
WorkloadIdentityConfig contains configuration settings for workload identity.
func (*WorkloadIdentityConfig) DeepCopy ¶ added in v0.35.1
func (in *WorkloadIdentityConfig) DeepCopy() *WorkloadIdentityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadIdentityConfig.
func (*WorkloadIdentityConfig) DeepCopyInto ¶ added in v0.35.1
func (in *WorkloadIdentityConfig) DeepCopyInto(out *WorkloadIdentityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WorkloadIdentityConfig) DeepCopyObject ¶ added in v0.35.1
func (in *WorkloadIdentityConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type Zone ¶
type Zone struct {
// Name is the name for this zone.
Name string `json:"name"`
// Internal is the private subnet range to create (used for internal load balancers).
Internal string `json:"internal"`
// Public is the public subnet range to create (used for bastion and load balancers).
Public string `json:"public"`
// Workers is the workers subnet range to create (used for the VMs).
Workers string `json:"workers"`
// ElasticIPAllocationID contains the allocation ID of an Elastic IP that will be attached to the NAT gateway in
// this zone (e.g., `eipalloc-123456`). If it's not provided then a new Elastic IP will be automatically created
// and attached.
// Important: If this field is changed then the already attached Elastic IP will be disassociated from the NAT gateway
// (and potentially removed if it was created by this extension). Also, the NAT gateway will be deleted. This will
// disrupt egress traffic for a while.
// +optional
ElasticIPAllocationID *string `json:"elasticIPAllocationID,omitempty"`
}
Zone describes the properties of a zone.
func (*Zone) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Zone.
func (*Zone) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.