Documentation ¶
Index ¶
- Constants
- Variables
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type CloudControllerManagerConfig
- type CloudProfileConfig
- type ControlPlaneConfig
- type DataVolume
- type EC2
- type IAM
- type IAMInstanceProfile
- type IgnoreTags
- type InfrastructureConfig
- type InfrastructureStatus
- type InstanceProfile
- type MachineImage
- type MachineImageVersion
- type MachineImages
- type Networks
- type RegionAMIMapping
- type Role
- type SecurityGroup
- type Storage
- type Subnet
- type VPC
- type VPCStatus
- type Volume
- type VolumeType
- type WorkerConfig
- type WorkerStatus
- type Zone
Constants ¶
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.NewSchemeBuilder(addKnownTypes) // AddToScheme is a pointer to SchemeBuilder.AddToScheme. AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}
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 CloudControllerManagerConfig ¶
type CloudControllerManagerConfig struct { // FeatureGates contains information about enabled feature gates. FeatureGates map[string]bool }
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 // 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 }
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 // CloudControllerManager contains configuration settings for the cloud-controller-manager. CloudControllerManager *CloudControllerManagerConfig // Storage contains configuration for storage in the cluster. Storage *Storage }
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 DataVolume ¶ added in v1.9.0
type DataVolume struct { // Name is the name of the data volume this configuration applies to. Name string // Volume contains configuration for the volume. Volume // SnapshotID is the ID of the snapshot. SnapshotID *string }
DataVolume contains configuration for data volumes attached to VMs.
func (*DataVolume) DeepCopy ¶ added in v1.9.0
func (in *DataVolume) DeepCopy() *DataVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataVolume.
func (*DataVolume) DeepCopyInto ¶ added in v1.9.0
func (in *DataVolume) DeepCopyInto(out *DataVolume)
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 }
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 IAM ¶
type IAM struct { // InstanceProfiles is a list of AWS IAM instance profiles. InstanceProfiles []InstanceProfile // Roles is a list of AWS IAM roles. Roles []Role }
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 ¶ added in v1.25.0
type IAMInstanceProfile struct { // Name is the name of the instance profile. Name *string // ARN is the ARN of the instance profile. ARN *string }
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 ¶ added in v1.25.0
func (in *IAMInstanceProfile) DeepCopy() *IAMInstanceProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAMInstanceProfile.
func (*IAMInstanceProfile) DeepCopyInto ¶ added in v1.25.0
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 ¶ added in v1.20.0
type IgnoreTags struct { // Keys is a list of individual tag keys, that should be ignored during infrastructure reconciliation. Keys []string // KeyPrefixes is a list of tag key prefixes, that should be ignored during infrastructure reconciliation. KeyPrefixes []string }
IgnoreTags holds information about ignored resource tags.
func (*IgnoreTags) DeepCopy ¶ added in v1.20.0
func (in *IgnoreTags) DeepCopy() *IgnoreTags
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IgnoreTags.
func (*IgnoreTags) DeepCopyInto ¶ added in v1.20.0
func (in *IgnoreTags) DeepCopyInto(out *IgnoreTags)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InfrastructureConfig ¶
type InfrastructureConfig struct { metav1.TypeMeta // EnableECRAccess specifies whether the IAM role policy for the worker nodes shall contain // permissions to access the ECR. // default: true EnableECRAccess *bool // Networks is the AWS specific network configuration (VPC, subnets, etc.) Networks 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. IgnoreTags *IgnoreTags }
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 InfrastructureStatus ¶
type InfrastructureStatus struct { metav1.TypeMeta // EC2 contains information about the created AWS EC2 resources. EC2 EC2 // IAM contains information about the created AWS IAM resources. IAM IAM // VPC contains information about the created AWS VPC and some related resources. VPC VPCStatus }
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 InstanceProfile ¶
type InstanceProfile struct { // Purpose is a logical description of the instance profile. Purpose string // Name is the name for this instance profile. Name string }
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 MachineImage ¶
type MachineImage struct { // Name is the logical name of the machine image. Name string // Version is the logical version of the machine image. Version string // AMI is the AMI for the machine image. AMI string }
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 // Regions is a mapping to the correct AMI for the machine image in the supported regions. Regions []RegionAMIMapping }
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 // Versions contains versions and a provider-specific identifier. Versions []MachineImageVersion }
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 Networks ¶
type Networks struct { // VPC indicates whether to use an existing VPC or create a new one. VPC VPC // Zones belonging to the same region Zones []Zone }
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 // AMI is the AMI for the machine image. AMI string }
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 Role ¶
type Role struct { // Purpose is a logical description of the role. Purpose string // ARN is the AWS Resource Name for this role. ARN string }
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 // ID is the subnet id. ID string }
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 ¶ added in v1.19.0
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. ManagedDefaultClass *bool }
Storage contains configuration for storage in the cluster.
func (*Storage) DeepCopy ¶ added in v1.19.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage.
func (*Storage) DeepCopyInto ¶ added in v1.19.0
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 // ID is the subnet id. ID string // Zone is the availability zone into which the subnet has been created. Zone string }
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. ID *string // CIDR is the VPC CIDR. CIDR *string // GatewayEndpoints service names to configure as gateway endpoints in the VPC. GatewayEndpoints []string }
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 // Subnets is a list of subnets that have been created. Subnets []Subnet // SecurityGroups is a list of security groups that have been created. SecurityGroups []SecurityGroup }
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. IOPS *int64 }
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 ¶ added in v1.6.2
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" )
type WorkerConfig ¶
type WorkerConfig struct { metav1.TypeMeta // Volume contains configuration for the root disks attached to VMs. Volume *Volume // DataVolumes contains configuration for the additional disks attached to VMs. DataVolumes []DataVolume // IAMInstanceProfile contains configuration for the IAM instance profile that should be used for the VMs of this // worker pool. IAMInstanceProfile *IAMInstanceProfile }
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 // 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. MachineImages []MachineImage }
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 Zone ¶
type Zone struct { // Name is the name for this zone. Name string // Internal is the private subnet range to create (used for internal load balancers). Internal string // Public is the public subnet range to create (used for bastion and load balancers). Public string // Workers is the workers subnet range to create (used for the VMs). Workers string // 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. ElasticIPAllocationID *string }
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.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package v1alpha1 contains the AWS provider API resources.
|
Package v1alpha1 contains the AWS provider API resources. |