ec2.v1alpha1.instance
"Instance is a managed resource that represents a specified number of AWS EC2 Instance"
Index
fn new(name)
obj metadata
fn withAnnotations(annotations)
fn withAnnotationsMixin(annotations)
fn withClusterName(clusterName)
fn withCreationTimestamp(creationTimestamp)
fn withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
fn withDeletionTimestamp(deletionTimestamp)
fn withFinalizers(finalizers)
fn withFinalizersMixin(finalizers)
fn withGenerateName(generateName)
fn withGeneration(generation)
fn withLabels(labels)
fn withLabelsMixin(labels)
fn withName(name)
fn withNamespace(namespace)
fn withOwnerReferences(ownerReferences)
fn withOwnerReferencesMixin(ownerReferences)
fn withResourceVersion(resourceVersion)
fn withSelfLink(selfLink)
fn withUid(uid)
obj spec
fn withDeletionPolicy(deletionPolicy)
obj spec.forProvider
fn withBlockDeviceMappings(blockDeviceMappings)
fn withBlockDeviceMappingsMixin(blockDeviceMappings)
fn withClientToken(clientToken)
fn withDisableAPITermination(disableAPITermination)
fn withEbsOptimized(ebsOptimized)
fn withElasticGpuSpecification(elasticGpuSpecification)
fn withElasticGpuSpecificationMixin(elasticGpuSpecification)
fn withElasticInferenceAccelerators(elasticInferenceAccelerators)
fn withElasticInferenceAcceleratorsMixin(elasticInferenceAccelerators)
fn withImageId(imageId)
fn withInstanceInitiatedShutdownBehavior(instanceInitiatedShutdownBehavior)
fn withInstanceType(instanceType)
fn withIpv6AddressCount(ipv6AddressCount)
fn withIpv6Addresses(ipv6Addresses)
fn withIpv6AddressesMixin(ipv6Addresses)
fn withKernelId(kernelId)
fn withKeyName(keyName)
fn withLicenseSpecifications(licenseSpecifications)
fn withLicenseSpecificationsMixin(licenseSpecifications)
fn withNetworkInterfaces(networkInterfaces)
fn withNetworkInterfacesMixin(networkInterfaces)
fn withPrivateIpAddress(privateIpAddress)
fn withRamDiskId(ramDiskId)
fn withRegion(region)
fn withSecurityGroupIds(securityGroupIds)
fn withSecurityGroupIdsMixin(securityGroupIds)
fn withSecurityGroupRefs(securityGroupRefs)
fn withSecurityGroupRefsMixin(securityGroupRefs)
fn withSubnetId(subnetId)
fn withTagSpecifications(tagSpecifications)
fn withTagSpecificationsMixin(tagSpecifications)
fn withTags(tags)
fn withTagsMixin(tags)
fn withUserData(userData)
obj spec.forProvider.blockDeviceMappings
fn withDeviceName(deviceName)
fn withNoDevice(noDevice)
fn withVirtualName(virtualName)
obj spec.forProvider.blockDeviceMappings.ebs
fn withDeleteOnTermination(deleteOnTermination)
fn withEncrypted(encrypted)
fn withIops(iops)
fn withKmsKeyId(kmsKeyId)
fn withSnapshotId(snapshotId)
fn withVolumeSize(volumeSize)
fn withVolumeType(volumeType)
obj spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdRef
obj spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdSelector
obj spec.forProvider.capacityReservationSpecification
obj spec.forProvider.cpuOptions
obj spec.forProvider.creditSpecification
obj spec.forProvider.elasticGpuSpecification
obj spec.forProvider.elasticInferenceAccelerators
obj spec.forProvider.hibernationOptions
obj spec.forProvider.iamInstanceProfile
obj spec.forProvider.instanceMarketOptions
obj spec.forProvider.ipv6Addresses
obj spec.forProvider.launchTemplate
obj spec.forProvider.licenseSpecifications
obj spec.forProvider.metadataOptions
obj spec.forProvider.monitoring
obj spec.forProvider.networkInterfaces
fn withAssociatePublicIpAddress(associatePublicIpAddress)
fn withDeleteOnTermination(deleteOnTermination)
fn withDescription(description)
fn withDeviceIndex(deviceIndex)
fn withGroups(groups)
fn withGroupsMixin(groups)
fn withInterfaceType(interfaceType)
fn withIpv6AddressCount(ipv6AddressCount)
fn withIpv6Addresses(ipv6Addresses)
fn withIpv6AddressesMixin(ipv6Addresses)
fn withNetworkInterfaceId(networkInterfaceId)
fn withPrivateIpAddress(privateIpAddress)
fn withPrivateIpAddresses(privateIpAddresses)
fn withPrivateIpAddressesMixin(privateIpAddresses)
fn withSecondaryPrivateIpAddressCount(secondaryPrivateIpAddressCount)
fn withSubnetId(subnetId)
obj spec.forProvider.networkInterfaces.ipv6Addresses
obj spec.forProvider.networkInterfaces.privateIpAddresses
obj spec.forProvider.placement
obj spec.forProvider.securityGroupRefs
obj spec.forProvider.securityGroupSelector
obj spec.forProvider.subnetIdRef
obj spec.forProvider.subnetIdSelector
obj spec.forProvider.tagSpecifications
obj spec.forProvider.tags
obj spec.providerConfigRef
obj spec.providerRef
obj spec.publishConnectionDetailsTo
obj spec.writeConnectionSecretToRef
Fields
fn new
new(name)
new returns an instance of Instance
obj metadata
"ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create."
fn metadata.withAnnotations
withAnnotations(annotations)
"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"
fn metadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"
Note: This function appends passed data to existing values
fn metadata.withClusterName
withClusterName(clusterName)
"The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request."
fn metadata.withCreationTimestamp
withCreationTimestamp(creationTimestamp)
"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."
fn metadata.withDeletionGracePeriodSeconds
withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
"Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only."
fn metadata.withDeletionTimestamp
withDeletionTimestamp(deletionTimestamp)
"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."
fn metadata.withFinalizers
withFinalizers(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
fn metadata.withFinalizersMixin
withFinalizersMixin(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
Note: This function appends passed data to existing values
fn metadata.withGenerateName
withGenerateName(generateName)
"GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency"
fn metadata.withGeneration
withGeneration(generation)
"A sequence number representing a specific generation of the desired state. Populated by the system. Read-only."
fn metadata.withLabels
withLabels(labels)
"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"
fn metadata.withLabelsMixin
withLabelsMixin(labels)
"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"
Note: This function appends passed data to existing values
fn metadata.withName
withName(name)
"Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names"
fn metadata.withNamespace
withNamespace(namespace)
"Namespace defines the space within which each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces"
fn metadata.withOwnerReferences
withOwnerReferences(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
fn metadata.withOwnerReferencesMixin
withOwnerReferencesMixin(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
Note: This function appends passed data to existing values
fn metadata.withResourceVersion
withResourceVersion(resourceVersion)
"An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency"
fn metadata.withSelfLink
withSelfLink(selfLink)
"SelfLink is a URL representing this object. Populated by the system. Read-only.\n\nDEPRECATED Kubernetes will stop propagating this field in 1.20 release and the field is planned to be removed in 1.21 release."
fn metadata.withUid
withUid(uid)
"UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids"
obj spec
"An InstanceSpec defines the desired state of Instances."
fn spec.withDeletionPolicy
withDeletionPolicy(deletionPolicy)
"DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either \"Delete\" or \"Orphan\" the external resource."
obj spec.forProvider
"InstanceParameters define the desired state of the Instances"
fn spec.forProvider.withBlockDeviceMappings
withBlockDeviceMappings(blockDeviceMappings)
"The block device mapping entries."
fn spec.forProvider.withBlockDeviceMappingsMixin
withBlockDeviceMappingsMixin(blockDeviceMappings)
"The block device mapping entries."
Note: This function appends passed data to existing values
fn spec.forProvider.withClientToken
withClientToken(clientToken)
"Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you do not specify a client token, a randomly generated token is used for the request to ensure idempotency. \n For more information, see Ensuring Idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). \n Constraints: Maximum 64 ASCII characters"
fn spec.forProvider.withDisableAPITermination
withDisableAPITermination(disableAPITermination)
"If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html). Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance. \n Default: false"
fn spec.forProvider.withEbsOptimized
withEbsOptimized(ebsOptimized)
"Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance. \n Default: false"
fn spec.forProvider.withElasticGpuSpecification
withElasticGpuSpecification(elasticGpuSpecification)
"An elastic GPU to associate with the instance. An Elastic GPU is a GPU resource that you can attach to your Windows instance to accelerate the graphics performance of your applications. For more information, see Amazon EC2 Elastic GPUs (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html) in the Amazon Elastic Compute Cloud User Guide."
fn spec.forProvider.withElasticGpuSpecificationMixin
withElasticGpuSpecificationMixin(elasticGpuSpecification)
"An elastic GPU to associate with the instance. An Elastic GPU is a GPU resource that you can attach to your Windows instance to accelerate the graphics performance of your applications. For more information, see Amazon EC2 Elastic GPUs (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html) in the Amazon Elastic Compute Cloud User Guide."
Note: This function appends passed data to existing values
fn spec.forProvider.withElasticInferenceAccelerators
withElasticInferenceAccelerators(elasticInferenceAccelerators)
"An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. \n You cannot specify accelerators from different generations in the same request."
fn spec.forProvider.withElasticInferenceAcceleratorsMixin
withElasticInferenceAcceleratorsMixin(elasticInferenceAccelerators)
"An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. \n You cannot specify accelerators from different generations in the same request."
Note: This function appends passed data to existing values
fn spec.forProvider.withImageId
withImageId(imageId)
"The ID of the AMI. An AMI ID is required to launch an instance and must be specified here or in a launch template."
fn spec.forProvider.withInstanceInitiatedShutdownBehavior
withInstanceInitiatedShutdownBehavior(instanceInitiatedShutdownBehavior)
"Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). \n Default: stop"
fn spec.forProvider.withInstanceType
withInstanceType(instanceType)
"The instance type. For more information, see Instance Types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the Amazon Elastic Compute Cloud User Guide. \n Default: m1.small"
fn spec.forProvider.withIpv6AddressCount
withIpv6AddressCount(ipv6AddressCount)
"[EC2-VPC] The number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch. \n You cannot specify this option and the network interfaces option in the same request."
fn spec.forProvider.withIpv6Addresses
withIpv6Addresses(ipv6Addresses)
"[EC2-VPC] The IPv6 addresses from the range of the subnet to associate with the primary network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch. \n You cannot specify this option and the network interfaces option in the same request."
fn spec.forProvider.withIpv6AddressesMixin
withIpv6AddressesMixin(ipv6Addresses)
"[EC2-VPC] The IPv6 addresses from the range of the subnet to associate with the primary network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch. \n You cannot specify this option and the network interfaces option in the same request."
Note: This function appends passed data to existing values
fn spec.forProvider.withKernelId
withKernelId(kernelId)
"The ID of the kernel. \n AWS recommends that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html) in the Amazon Elastic Compute Cloud User Guide."
fn spec.forProvider.withKeyName
withKeyName(keyName)
"The name of the key pair. You can create a key pair using CreateKeyPair (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateKeyPair.html) or ImportKeyPair (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportKeyPair.html). \n If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in."
fn spec.forProvider.withLicenseSpecifications
withLicenseSpecifications(licenseSpecifications)
"The Amazon Resource Name (ARN) of the license configuration"
fn spec.forProvider.withLicenseSpecificationsMixin
withLicenseSpecificationsMixin(licenseSpecifications)
"The Amazon Resource Name (ARN) of the license configuration"
Note: This function appends passed data to existing values
fn spec.forProvider.withNetworkInterfaces
withNetworkInterfaces(networkInterfaces)
"The network interfaces to associate with the instance. If you specify a network interface, you must specify any security groups and subnets as part of the network interface."
fn spec.forProvider.withNetworkInterfacesMixin
withNetworkInterfacesMixin(networkInterfaces)
"The network interfaces to associate with the instance. If you specify a network interface, you must specify any security groups and subnets as part of the network interface."
Note: This function appends passed data to existing values
fn spec.forProvider.withPrivateIpAddress
withPrivateIpAddress(privateIpAddress)
"[EC2-VPC] The primary IPv4 address. You must specify a value from the IPv4 address range of the subnet. \n Only one private IP address can be designated as primary. You can't specify this option if you've specified the option to designate a private IP address as the primary IP address in a network interface specification. You cannot specify this option if you're launching more than one instance in the request. \n You cannot specify this option and the network interfaces option in the same request."
fn spec.forProvider.withRamDiskId
withRamDiskId(ramDiskId)
"The ID of the RAM disk to select. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, go to the AWS Resource Center and search for the kernel ID. \n AWS recommends that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html) in the Amazon Elastic Compute Cloud User Guide."
fn spec.forProvider.withRegion
withRegion(region)
"Region is the region you'd like your Instance to be created in."
fn spec.forProvider.withSecurityGroupIds
withSecurityGroupIds(securityGroupIds)
"The IDs of the security groups. You can create a security group using CreateSecurityGroup (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSecurityGroup.html). \n If you specify a network interface, you must specify any security groups as part of the network interface."
fn spec.forProvider.withSecurityGroupIdsMixin
withSecurityGroupIdsMixin(securityGroupIds)
"The IDs of the security groups. You can create a security group using CreateSecurityGroup (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSecurityGroup.html). \n If you specify a network interface, you must specify any security groups as part of the network interface."
Note: This function appends passed data to existing values
fn spec.forProvider.withSecurityGroupRefs
withSecurityGroupRefs(securityGroupRefs)
"SecurityGroupsRefs is a list of references to SecurityGroups used to set the SecurityGroupIDs."
fn spec.forProvider.withSecurityGroupRefsMixin
withSecurityGroupRefsMixin(securityGroupRefs)
"SecurityGroupsRefs is a list of references to SecurityGroups used to set the SecurityGroupIDs."
Note: This function appends passed data to existing values
fn spec.forProvider.withSubnetId
withSubnetId(subnetId)
"[EC2-VPC] The ID of the subnet to launch the instance into. \n If you specify a network interface, you must specify any subnets as part of the network interface."
fn spec.forProvider.withTagSpecifications
withTagSpecifications(tagSpecifications)
"The tags to apply to the resources during launch. You can only tag instances and volumes on launch. The specified tags are applied to all instances or volumes that are created during launch. To tag a resource after it has been created, see CreateTags (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html)."
fn spec.forProvider.withTagSpecificationsMixin
withTagSpecificationsMixin(tagSpecifications)
"The tags to apply to the resources during launch. You can only tag instances and volumes on launch. The specified tags are applied to all instances or volumes that are created during launch. To tag a resource after it has been created, see CreateTags (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html)."
Note: This function appends passed data to existing values
fn spec.forProvider.withTags
withTags(tags)
"Tags are used as identification helpers between AWS resources."
fn spec.forProvider.withTagsMixin
withTagsMixin(tags)
"Tags are used as identification helpers between AWS resources."
Note: This function appends passed data to existing values
fn spec.forProvider.withUserData
withUserData(userData)
"The user data to make available to the instance. For more information, see Running Commands on Your Linux Instance at Launch (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html) (Linux) and Adding User Data (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-instance-metadata.html#instancedata-add-user-data) (Windows). If you are using a command line tool, base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide base64-encoded text. User data is limited to 16 KB."
obj spec.forProvider.blockDeviceMappings
"The block device mapping entries."
fn spec.forProvider.blockDeviceMappings.withDeviceName
withDeviceName(deviceName)
"The device name (for example, /dev/sdh or xvdh)."
fn spec.forProvider.blockDeviceMappings.withNoDevice
withNoDevice(noDevice)
"Suppresses the specified device included in the block device mapping of the AMI."
fn spec.forProvider.blockDeviceMappings.withVirtualName
withVirtualName(virtualName)
"The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume. \n NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect. \n Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI."
obj spec.forProvider.blockDeviceMappings.ebs
"Parameters used to automatically set up EBS volumes when the instance is launched."
fn spec.forProvider.blockDeviceMappings.ebs.withDeleteOnTermination
withDeleteOnTermination(deleteOnTermination)
"Indicates whether the EBS volume is deleted on instance termination. For more information, see Preserving Amazon EBS Volumes on Instance Termination (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination) in the Amazon Elastic Compute Cloud User Guide."
fn spec.forProvider.blockDeviceMappings.ebs.withEncrypted
withEncrypted(encrypted)
"Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-parameters) in the Amazon Elastic Compute Cloud User Guide. \n In no case can you remove encryption from an encrypted volume. \n Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see Supported Instance Types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances). \n This parameter is not returned by ."
fn spec.forProvider.blockDeviceMappings.ebs.withIops
withIops(iops)
"The number of I/O operations per second (IOPS) that the volume supports. For io1 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information, see Amazon EBS Volume Types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the Amazon Elastic Compute Cloud User Guide. \n Constraints: Range is 100-16,000 IOPS for gp2 volumes and 100 to 64,000IOPS for io1 volumes in most Regions. Maximum io1 IOPS of 64,000 is guaranteed only on Nitro-based instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). Other instance families guarantee performance up to 32,000 IOPS. For more information, see Amazon EBS Volume Types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the Amazon Elastic Compute Cloud User Guide. \n 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."
fn spec.forProvider.blockDeviceMappings.ebs.withKmsKeyId
withKmsKeyId(kmsKeyId)
"Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted. \n This parameter is only supported on BlockDeviceMapping objects called by RunInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html), RequestSpotFleet (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotFleet.html), and RequestSpotInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html)."
fn spec.forProvider.blockDeviceMappings.ebs.withSnapshotId
withSnapshotId(snapshotId)
"The ID of the snapshot."
fn spec.forProvider.blockDeviceMappings.ebs.withVolumeSize
withVolumeSize(volumeSize)
"The size of the volume, in GiB. \n Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size. \n Constraints: 1-16384 for General Purpose SSD (gp2), 4-16384 for Provisioned IOPS SSD (io1), 500-16384 for Throughput Optimized HDD (st1), 500-16384 for Cold HDD (sc1), and 1-1024 for Magnetic (standard) volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size."
fn spec.forProvider.blockDeviceMappings.ebs.withVolumeType
withVolumeType(volumeType)
"The volume type. If you set the type to io1, you must also specify the Iops parameter. If you set the type to gp2, st1, sc1, or standard, you must omit the Iops parameter. \n Default: gp2"
obj spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdRef
"KMSKeyIDRef is a reference to a KMS Key used to set KMSKeyID."
fn spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdRef.withName
withName(name)
"Name of the referenced object."
obj spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdRef.policy
"Policies for referencing."
fn spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdSelector
"KMSKeyIDSelector selects a reference to a KMS Key used to set KMSKeyID."
fn spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdSelector.withMatchControllerRef
withMatchControllerRef(matchControllerRef)
"MatchControllerRef ensures an object with the same controller reference as the selecting object is selected."
fn spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdSelector.withMatchLabels
withMatchLabels(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
fn spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
Note: This function appends passed data to existing values
obj spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdSelector.policy
"Policies for selection."
fn spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdSelector.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.blockDeviceMappings.ebs.kmsKeyIdSelector.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.capacityReservationSpecification
"Information about the Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone)."
fn spec.forProvider.capacityReservationSpecification.withCapacityReservationsPreference
withCapacityReservationsPreference(capacityReservationsPreference)
"Indicates the instance's Capacity Reservation preferences. Possible preferences include: \n * open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). \n * none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs as an On-Demand Instance."
obj spec.forProvider.capacityReservationSpecification.capacityReservationTarget
"Information about the target Capacity Reservation."
fn spec.forProvider.capacityReservationSpecification.capacityReservationTarget.withCapacityReservationId
withCapacityReservationId(capacityReservationId)
"The ID of the Capacity Reservation."
obj spec.forProvider.cpuOptions
"The CPU options for the instance. For more information, see Optimizing CPU Options (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) in the Amazon Elastic Compute Cloud User Guide."
fn spec.forProvider.cpuOptions.withCoreCount
withCoreCount(coreCount)
"The number of CPU cores for the instance."
fn spec.forProvider.cpuOptions.withThreadsPerCore
withThreadsPerCore(threadsPerCore)
"The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2."
obj spec.forProvider.creditSpecification
"The credit option for CPU usage of the burstable performance instance. Valid values are standard and unlimited. To change this attribute after launch, use ModifyInstanceCreditSpecification (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceCreditSpecification.html). For more information, see Burstable Performance Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the Amazon Elastic Compute Cloud User Guide. \n Default: standard (T2 instances) or unlimited (T3/T3a instances)"
fn spec.forProvider.creditSpecification.withCpuCredits
withCpuCredits(cpuCredits)
"The credit option for CPU usage of a T2 or T3 instance. Valid values are standard and unlimited. \n CPUCredits is a required field"
obj spec.forProvider.elasticGpuSpecification
"An elastic GPU to associate with the instance. An Elastic GPU is a GPU resource that you can attach to your Windows instance to accelerate the graphics performance of your applications. For more information, see Amazon EC2 Elastic GPUs (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html) in the Amazon Elastic Compute Cloud User Guide."
fn spec.forProvider.elasticGpuSpecification.withType
withType(type)
"The type of Elastic Graphics accelerator. For more information about the values to specify for Type, see Elastic Graphics Basics (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html#elastic-graphics-basics), specifically the Elastic Graphics accelerator column, in the Amazon Elastic Compute Cloud User Guide for Windows Instances. \n Type is a required field"
obj spec.forProvider.elasticInferenceAccelerators
"An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. \n You cannot specify accelerators from different generations in the same request."
fn spec.forProvider.elasticInferenceAccelerators.withCount
withCount(count)
"The number of elastic inference accelerators to attach to the instance. \n Default: 1"
fn spec.forProvider.elasticInferenceAccelerators.withType
withType(type)
"The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge. \n Type is a required field"
obj spec.forProvider.hibernationOptions
"Indicates whether an instance is enabled for hibernation. For more information, see Hibernate Your Instance (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html) in the Amazon Elastic Compute Cloud User Guide."
fn spec.forProvider.hibernationOptions.withConfigured
withConfigured(configured)
"If you set this parameter to true, your instance is enabled for hibernation. \n Default: false"
obj spec.forProvider.iamInstanceProfile
"The IAM instance profile."
fn spec.forProvider.iamInstanceProfile.withArn
withArn(arn)
"The Amazon Resource Name (ARN) of the instance profile."
fn spec.forProvider.iamInstanceProfile.withName
withName(name)
"The name of the instance profile."
obj spec.forProvider.instanceMarketOptions
"The market (purchasing) option for the instances. \n For RunInstances, persistent Spot Instance requests are only supported when InstanceInterruptionBehavior is set to either hibernate or stop."
fn spec.forProvider.instanceMarketOptions.withMarketType
withMarketType(marketType)
"The market type."
obj spec.forProvider.instanceMarketOptions.spotOptions
"The options for Spot Instances."
fn spec.forProvider.instanceMarketOptions.spotOptions.withBlockDurationMinutes
withBlockDurationMinutes(blockDurationMinutes)
"The required duration for the Spot Instances (also known as Spot blocks), in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360)."
fn spec.forProvider.instanceMarketOptions.spotOptions.withInstanceInterruptionBehavior
withInstanceInterruptionBehavior(instanceInterruptionBehavior)
"The behavior when a Spot Instance is interrupted. The default is terminate."
fn spec.forProvider.instanceMarketOptions.spotOptions.withMaxPrice
withMaxPrice(maxPrice)
"The maximum hourly price you're willing to pay for the Spot Instances. The default is the On-Demand price."
fn spec.forProvider.instanceMarketOptions.spotOptions.withSpotInstanceType
withSpotInstanceType(spotInstanceType)
"The Spot Instance request type. For RunInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances), persistent Spot Instance requests are only supported when InstanceInterruptionBehavior is set to either hibernate or stop."
fn spec.forProvider.instanceMarketOptions.spotOptions.withValidUntil
withValidUntil(validUntil)
"The end date of the request. For a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date and time is reached. The default end date is 7 days from the current date. Must be in UTC format (YYYY-MM-DDTHH:MM:SSZ)"
obj spec.forProvider.ipv6Addresses
"[EC2-VPC] The IPv6 addresses from the range of the subnet to associate with the primary network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch. \n You cannot specify this option and the network interfaces option in the same request."
fn spec.forProvider.ipv6Addresses.withIpv6Address
withIpv6Address(ipv6Address)
"The IPv6 address."
obj spec.forProvider.launchTemplate
"The launch template to use to launch the instances. Any parameters that you specify in RunInstances override the same parameters in the launch template. You can specify either the name or ID of a launch template, but not both."
fn spec.forProvider.launchTemplate.withLaunchTemplateId
withLaunchTemplateId(launchTemplateId)
"The ID of the launch template."
fn spec.forProvider.launchTemplate.withLaunchTemplateName
withLaunchTemplateName(launchTemplateName)
"The name of the launch template."
fn spec.forProvider.launchTemplate.withVersion
withVersion(version)
"The version number of the launch template. \n Default: The default version for the launch template."
obj spec.forProvider.licenseSpecifications
"The Amazon Resource Name (ARN) of the license configuration"
fn spec.forProvider.licenseSpecifications.withLicenseConfigurationArn
withLicenseConfigurationArn(licenseConfigurationArn)
"Amazon Resource Name (ARN) of the license configuration"
obj spec.forProvider.metadataOptions
"The metadata options for the instance. For more information, see Instance Metadata and User Data (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html)."
fn spec.forProvider.metadataOptions.withHttpEndpoint
withHttpEndpoint(httpEndpoint)
"This parameter enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. \n If you specify a value of disabled, you will not be able to access your instance metadata."
fn spec.forProvider.metadataOptions.withHttpPutResponseHopLimit
withHttpPutResponseHopLimit(httpPutResponseHopLimit)
"The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. \n Default: 1 \n Possible values: Integers from 1 to 64"
fn spec.forProvider.metadataOptions.withHttpTokens
withHttpTokens(httpTokens)
"The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional. \n If the state is optional, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned. \n If the state is required, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available."
obj spec.forProvider.monitoring
"Specifies whether detailed monitoring is enabled for the instance."
fn spec.forProvider.monitoring.withEnabled
withEnabled(enabled)
"Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled. \n Enabled is a required field"
obj spec.forProvider.networkInterfaces
"The network interfaces to associate with the instance. If you specify a network interface, you must specify any security groups and subnets as part of the network interface."
fn spec.forProvider.networkInterfaces.withAssociatePublicIpAddress
withAssociatePublicIpAddress(associatePublicIpAddress)
"Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true."
fn spec.forProvider.networkInterfaces.withDeleteOnTermination
withDeleteOnTermination(deleteOnTermination)
"If set to true, the interface is deleted when the instance is terminated. You can specify true only if creating a new network interface when launching an instance."
fn spec.forProvider.networkInterfaces.withDescription
withDescription(description)
"The description of the network interface. Applies only if creating a network interface when launching an instance."
fn spec.forProvider.networkInterfaces.withDeviceIndex
withDeviceIndex(deviceIndex)
"The position of the network interface in the attachment order. A primary network interface has a device index of 0. \n If you specify a network interface when launching an instance, you must specify the device index."
fn spec.forProvider.networkInterfaces.withGroups
withGroups(groups)
"The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance."
fn spec.forProvider.networkInterfaces.withGroupsMixin
withGroupsMixin(groups)
"The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance."
Note: This function appends passed data to existing values
fn spec.forProvider.networkInterfaces.withInterfaceType
withInterfaceType(interfaceType)
"The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html) in the Amazon Elastic Compute Cloud User Guide. \n If you are not creating an EFA, specify interface or omit this parameter. \n Valid values: interface | efa"
fn spec.forProvider.networkInterfaces.withIpv6AddressCount
withIpv6AddressCount(ipv6AddressCount)
"A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch."
fn spec.forProvider.networkInterfaces.withIpv6Addresses
withIpv6Addresses(ipv6Addresses)
"One or more IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch."
fn spec.forProvider.networkInterfaces.withIpv6AddressesMixin
withIpv6AddressesMixin(ipv6Addresses)
"One or more IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch."
Note: This function appends passed data to existing values
fn spec.forProvider.networkInterfaces.withNetworkInterfaceId
withNetworkInterfaceId(networkInterfaceId)
"The ID of the network interface. \n If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification."
fn spec.forProvider.networkInterfaces.withPrivateIpAddress
withPrivateIpAddress(privateIpAddress)
"The private IPv4 address of the network interface. Applies only if creating a network interface when launching an instance. You cannot specify this option if you're launching more than one instance in a RunInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) request."
fn spec.forProvider.networkInterfaces.withPrivateIpAddresses
withPrivateIpAddresses(privateIpAddresses)
"One or more private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) request."
fn spec.forProvider.networkInterfaces.withPrivateIpAddressesMixin
withPrivateIpAddressesMixin(privateIpAddresses)
"One or more private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) request."
Note: This function appends passed data to existing values
fn spec.forProvider.networkInterfaces.withSecondaryPrivateIpAddressCount
withSecondaryPrivateIpAddressCount(secondaryPrivateIpAddressCount)
"The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) request."
fn spec.forProvider.networkInterfaces.withSubnetId
withSubnetId(subnetId)
"The ID of the subnet associated with the network interface. Applies only if creating a network interface when launching an instance."
obj spec.forProvider.networkInterfaces.ipv6Addresses
"One or more IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch."
fn spec.forProvider.networkInterfaces.ipv6Addresses.withIpv6Address
withIpv6Address(ipv6Address)
"The IPv6 address."
obj spec.forProvider.networkInterfaces.privateIpAddresses
"One or more private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) request."
fn spec.forProvider.networkInterfaces.privateIpAddresses.withPrimary
withPrimary(primary)
"Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary."
fn spec.forProvider.networkInterfaces.privateIpAddresses.withPrivateIPAddress
withPrivateIPAddress(privateIPAddress)
"The private IPv4 addresses."
obj spec.forProvider.placement
"The placement for the instance."
fn spec.forProvider.placement.withAffinity
withAffinity(affinity)
"The affinity setting for the instance on the Dedicated Host. This parameter is not supported for the ImportInstance (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html) command. \n This parameter is not supported by CreateFleet (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet)."
fn spec.forProvider.placement.withAvailabilityZone
withAvailabilityZone(availabilityZone)
"The Availability Zone of the instance. \n If not specified, an Availability Zone will be automatically chosen for you based on the load balancing criteria for the Region. \n This parameter is not supported by CreateFleet (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet)."
fn spec.forProvider.placement.withGroupName
withGroupName(groupName)
"The name of the placement group the instance is in."
fn spec.forProvider.placement.withHostId
withHostId(hostId)
"The ID of the Dedicated Host on which the instance resides. This parameter is not supported for the ImportInstance (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html) command. \n This parameter is not supported by CreateFleet (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet)."
fn spec.forProvider.placement.withHostResourceGroupArn
withHostResourceGroupArn(hostResourceGroupArn)
"The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host. \n This parameter is not supported by CreateFleet (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet)."
fn spec.forProvider.placement.withPartitionNumber
withPartitionNumber(partitionNumber)
"The number of the partition the instance is in. Valid only if the placement group strategy is set to partition. \n This parameter is not supported by CreateFleet (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet)."
fn spec.forProvider.placement.withSpreadDomain
withSpreadDomain(spreadDomain)
"Reserved for future use. \n This parameter is not supported by CreateFleet (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet)."
fn spec.forProvider.placement.withTenancy
withTenancy(tenancy)
"The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the ImportInstance (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html) command. \n This parameter is not supported by CreateFleet (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet)."
obj spec.forProvider.securityGroupRefs
"SecurityGroupsRefs is a list of references to SecurityGroups used to set the SecurityGroupIDs."
fn spec.forProvider.securityGroupRefs.withName
withName(name)
"Name of the referenced object."
obj spec.forProvider.securityGroupRefs.policy
"Policies for referencing."
fn spec.forProvider.securityGroupRefs.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.securityGroupRefs.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.securityGroupSelector
"SecurityGroupsSelector selects references to SecurityGroups used to set the SecurityGroupIDs."
fn spec.forProvider.securityGroupSelector.withMatchControllerRef
withMatchControllerRef(matchControllerRef)
"MatchControllerRef ensures an object with the same controller reference as the selecting object is selected."
fn spec.forProvider.securityGroupSelector.withMatchLabels
withMatchLabels(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
fn spec.forProvider.securityGroupSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
Note: This function appends passed data to existing values
obj spec.forProvider.securityGroupSelector.policy
"Policies for selection."
fn spec.forProvider.securityGroupSelector.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.securityGroupSelector.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.subnetIdRef
"SubnetIDRef is a reference to a Subnet used to set the SubnetID."
fn spec.forProvider.subnetIdRef.withName
withName(name)
"Name of the referenced object."
obj spec.forProvider.subnetIdRef.policy
"Policies for referencing."
fn spec.forProvider.subnetIdRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.subnetIdRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.subnetIdSelector
"SubnetIDSelector selects a reference to a Subnet used to set the SubnetID."
fn spec.forProvider.subnetIdSelector.withMatchControllerRef
withMatchControllerRef(matchControllerRef)
"MatchControllerRef ensures an object with the same controller reference as the selecting object is selected."
fn spec.forProvider.subnetIdSelector.withMatchLabels
withMatchLabels(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
fn spec.forProvider.subnetIdSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
Note: This function appends passed data to existing values
obj spec.forProvider.subnetIdSelector.policy
"Policies for selection."
fn spec.forProvider.subnetIdSelector.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.subnetIdSelector.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.tagSpecifications
"The tags to apply to the resources during launch. You can only tag instances and volumes on launch. The specified tags are applied to all instances or volumes that are created during launch. To tag a resource after it has been created, see CreateTags (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html)."
fn spec.forProvider.tagSpecifications.withResourceType
withResourceType(resourceType)
"The type of resource to tag. Currently, the resource types that support tagging on creation are: capacity-reservation | client-vpn-endpoint | dedicated-host | fleet | fpga-image | instance | ipv4pool-ec2 | ipv6pool-ec2 | key-pair | launch-template | natgateway | spot-fleet-request | placement-group | snapshot | traffic-mirror-filter | traffic-mirror-session | traffic-mirror-target | transit-gateway | transit-gateway-attachment | transit-gateway-route-table | vpc-endpoint (for interface VPC endpoints)| vpc-endpoint-service (for gateway VPC endpoints) | volume | vpc-flow-log. \n To tag a resource after it has been created, see CreateTags (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html)."
fn spec.forProvider.tagSpecifications.withTags
withTags(tags)
"The tags to apply to the resource"
fn spec.forProvider.tagSpecifications.withTagsMixin
withTagsMixin(tags)
"The tags to apply to the resource"
Note: This function appends passed data to existing values
obj spec.forProvider.tagSpecifications.tags
"The tags to apply to the resource"
fn spec.forProvider.tagSpecifications.tags.withKey
withKey(key)
"Key is the name of the tag."
fn spec.forProvider.tagSpecifications.tags.withValue
withValue(value)
"Value is the value of the tag."
obj spec.forProvider.tags
"Tags are used as identification helpers between AWS resources."
fn spec.forProvider.tags.withKey
withKey(key)
"Key is the name of the tag."
fn spec.forProvider.tags.withValue
withValue(value)
"Value is the value of the tag."
obj spec.providerConfigRef
"ProviderConfigReference specifies how the provider that will be used to create, observe, update, and delete this managed resource should be configured."
fn spec.providerConfigRef.withName
withName(name)
"Name of the referenced object."
obj spec.providerConfigRef.policy
"Policies for referencing."
fn spec.providerConfigRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.providerConfigRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.providerRef
"ProviderReference specifies the provider that will be used to create, observe, update, and delete this managed resource. Deprecated: Please use ProviderConfigReference, i.e. providerConfigRef
"
fn spec.providerRef.withName
withName(name)
"Name of the referenced object."
obj spec.providerRef.policy
"Policies for referencing."
fn spec.providerRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.providerRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.publishConnectionDetailsTo
"PublishConnectionDetailsTo specifies the connection secret config which contains a name, metadata and a reference to secret store config to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource."
fn spec.publishConnectionDetailsTo.withName
withName(name)
"Name is the name of the connection secret."
obj spec.publishConnectionDetailsTo.configRef
"SecretStoreConfigRef specifies which secret store config should be used for this ConnectionSecret."
fn spec.publishConnectionDetailsTo.configRef.withName
withName(name)
"Name of the referenced object."
obj spec.publishConnectionDetailsTo.configRef.policy
"Policies for referencing."
fn spec.publishConnectionDetailsTo.configRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.publishConnectionDetailsTo.configRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.publishConnectionDetailsTo.metadata
"Metadata is the metadata for connection secret."
fn spec.publishConnectionDetailsTo.metadata.withAnnotations
withAnnotations(annotations)
"Annotations are the annotations to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.annotations\". - It is up to Secret Store implementation for others store types."
fn spec.publishConnectionDetailsTo.metadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"Annotations are the annotations to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.annotations\". - It is up to Secret Store implementation for others store types."
Note: This function appends passed data to existing values
fn spec.publishConnectionDetailsTo.metadata.withLabels
withLabels(labels)
"Labels are the labels/tags to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.labels\". - It is up to Secret Store implementation for others store types."
fn spec.publishConnectionDetailsTo.metadata.withLabelsMixin
withLabelsMixin(labels)
"Labels are the labels/tags to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.labels\". - It is up to Secret Store implementation for others store types."
Note: This function appends passed data to existing values
fn spec.publishConnectionDetailsTo.metadata.withType
withType(type)
"Type is the SecretType for the connection secret. - Only valid for Kubernetes Secret Stores."
obj spec.writeConnectionSecretToRef
"WriteConnectionSecretToReference specifies the namespace and name of a Secret to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource. This field is planned to be replaced in a future release in favor of PublishConnectionDetailsTo. Currently, both could be set independently and connection details would be published to both without affecting each other."
fn spec.writeConnectionSecretToRef.withName
withName(name)
"Name of the secret."
fn spec.writeConnectionSecretToRef.withNamespace
withNamespace(namespace)
"Namespace of the secret."