Module ec2

ec2

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-aws repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-aws repo.
class pulumi_aws.ec2.Ami(resource_name, opts=None, architecture=None, description=None, ebs_block_devices=None, ena_support=None, ephemeral_block_devices=None, image_location=None, kernel_id=None, name=None, ramdisk_id=None, root_device_name=None, sriov_net_support=None, tags=None, virtualization_type=None, __props__=None, __name__=None, __opts__=None)

The AMI resource allows the creation and management of a completely-custom Amazon Machine Image (AMI).

If you just want to duplicate an existing AMI, possibly copying it to another region, it’s better to use ec2.AmiCopy instead.

If you just want to share an existing AMI with another AWS account, it’s better to use ec2.AmiLaunchPermission instead.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • architecture (pulumi.Input[str]) – Machine architecture for created instances. Defaults to “x86_64”.
  • description (pulumi.Input[str]) – A longer, human-readable description for the AMI.
  • ebs_block_devices (pulumi.Input[list]) – Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
  • ena_support (pulumi.Input[bool]) – Specifies whether enhanced networking with ENA is enabled. Defaults to false.
  • ephemeral_block_devices (pulumi.Input[list]) – Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
  • image_location (pulumi.Input[str]) – Path to an S3 object containing an image manifest, e.g. created by the ec2-upload-bundle command in the EC2 command line tools.
  • kernel_id (pulumi.Input[str]) – The id of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
  • name (pulumi.Input[str]) – A region-unique name for the AMI.
  • ramdisk_id (pulumi.Input[str]) – The id of an initrd image (ARI) that will be used when booting the created instances.
  • root_device_name (pulumi.Input[str]) – The name of the root device (for example, /dev/sda1, or /dev/xvda).
  • sriov_net_support (pulumi.Input[str]) – When set to “simple” (the default), enables enhanced networking for created instances. No other value is supported at this time.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • virtualization_type (pulumi.Input[str]) – Keyword to choose what virtualization mode created instances will use. Can be either “paravirtual” (the default) or “hvm”. The choice of virtualization type changes the set of further arguments that are required, as described below.
architecture = None

Machine architecture for created instances. Defaults to “x86_64”.

description = None

A longer, human-readable description for the AMI.

ebs_block_devices = None

Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.

ena_support = None

Specifies whether enhanced networking with ENA is enabled. Defaults to false.

ephemeral_block_devices = None

Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.

image_location = None

Path to an S3 object containing an image manifest, e.g. created by the ec2-upload-bundle command in the EC2 command line tools.

kernel_id = None

The id of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.

name = None

A region-unique name for the AMI.

ramdisk_id = None

The id of an initrd image (ARI) that will be used when booting the created instances.

root_device_name = None

The name of the root device (for example, /dev/sda1, or /dev/xvda).

root_snapshot_id = None

The Snapshot ID for the root volume (for EBS-backed AMIs)

sriov_net_support = None

When set to “simple” (the default), enables enhanced networking for created instances. No other value is supported at this time.

tags = None

A mapping of tags to assign to the resource.

virtualization_type = None

Keyword to choose what virtualization mode created instances will use. Can be either “paravirtual” (the default) or “hvm”. The choice of virtualization type changes the set of further arguments that are required, as described below.

static get(resource_name, id, opts=None, architecture=None, description=None, ebs_block_devices=None, ena_support=None, ephemeral_block_devices=None, image_location=None, kernel_id=None, manage_ebs_snapshots=None, name=None, ramdisk_id=None, root_device_name=None, root_snapshot_id=None, sriov_net_support=None, tags=None, virtualization_type=None)

Get an existing Ami resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] architecture: Machine architecture for created instances. Defaults to “x86_64”. :param pulumi.Input[str] description: A longer, human-readable description for the AMI. :param pulumi.Input[list] ebs_block_devices: Nested block describing an EBS block device that should be

attached to created instances. The structure of this block is described below.
Parameters:
  • ena_support (pulumi.Input[bool]) – Specifies whether enhanced networking with ENA is enabled. Defaults to false.
  • ephemeral_block_devices (pulumi.Input[list]) – Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
  • image_location (pulumi.Input[str]) – Path to an S3 object containing an image manifest, e.g. created by the ec2-upload-bundle command in the EC2 command line tools.
  • kernel_id (pulumi.Input[str]) – The id of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
  • name (pulumi.Input[str]) – A region-unique name for the AMI.
  • ramdisk_id (pulumi.Input[str]) – The id of an initrd image (ARI) that will be used when booting the created instances.
  • root_device_name (pulumi.Input[str]) – The name of the root device (for example, /dev/sda1, or /dev/xvda).
  • root_snapshot_id (pulumi.Input[str]) – The Snapshot ID for the root volume (for EBS-backed AMIs)
  • sriov_net_support (pulumi.Input[str]) – When set to “simple” (the default), enables enhanced networking for created instances. No other value is supported at this time.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • virtualization_type (pulumi.Input[str]) – Keyword to choose what virtualization mode created instances will use. Can be either “paravirtual” (the default) or “hvm”. The choice of virtualization type changes the set of further arguments that are required, as described below.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.AmiCopy(resource_name, opts=None, description=None, ebs_block_devices=None, encrypted=None, ephemeral_block_devices=None, kms_key_id=None, name=None, source_ami_id=None, source_ami_region=None, tags=None, __props__=None, __name__=None, __opts__=None)

The “AMI copy” resource allows duplication of an Amazon Machine Image (AMI), including cross-region copies.

If the source AMI has associated EBS snapshots, those will also be duplicated along with the AMI.

This is useful for taking a single AMI provisioned in one region and making it available in another for a multi-region deployment.

Copying an AMI can take several minutes. The creation of this resource will block until the new AMI is available for use on new instances.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – A longer, human-readable description for the AMI.
  • ebs_block_devices (pulumi.Input[list]) – Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
  • encrypted (pulumi.Input[bool]) – Specifies whether the destination snapshots of the copied image should be encrypted. Defaults to false
  • ephemeral_block_devices (pulumi.Input[list]) – Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
  • kms_key_id (pulumi.Input[str]) – The full ARN of the KMS Key to use when encrypting the snapshots of an image during a copy operation. If not specified, then the default AWS KMS Key will be used
  • name (pulumi.Input[str]) – A region-unique name for the AMI.
  • source_ami_id (pulumi.Input[str]) – The id of the AMI to copy. This id must be valid in the region given by source_ami_region.
  • source_ami_region (pulumi.Input[str]) – The region from which the AMI will be copied. This may be the same as the AWS provider region in order to create a copy within the same region.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
architecture = None

Machine architecture for created instances. Defaults to “x86_64”.

description = None

A longer, human-readable description for the AMI.

ebs_block_devices = None

Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.

ena_support = None

Specifies whether enhanced networking with ENA is enabled. Defaults to false.

encrypted = None

Specifies whether the destination snapshots of the copied image should be encrypted. Defaults to false

ephemeral_block_devices = None

Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.

image_location = None

Path to an S3 object containing an image manifest, e.g. created by the ec2-upload-bundle command in the EC2 command line tools.

kernel_id = None

The id of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.

kms_key_id = None

The full ARN of the KMS Key to use when encrypting the snapshots of an image during a copy operation. If not specified, then the default AWS KMS Key will be used

name = None

A region-unique name for the AMI.

ramdisk_id = None

The id of an initrd image (ARI) that will be used when booting the created instances.

root_device_name = None

The name of the root device (for example, /dev/sda1, or /dev/xvda).

source_ami_id = None

The id of the AMI to copy. This id must be valid in the region given by source_ami_region.

source_ami_region = None

The region from which the AMI will be copied. This may be the same as the AWS provider region in order to create a copy within the same region.

sriov_net_support = None

When set to “simple” (the default), enables enhanced networking for created instances. No other value is supported at this time.

tags = None

A mapping of tags to assign to the resource.

virtualization_type = None

Keyword to choose what virtualization mode created instances will use. Can be either “paravirtual” (the default) or “hvm”. The choice of virtualization type changes the set of further arguments that are required, as described below.

static get(resource_name, id, opts=None, architecture=None, description=None, ebs_block_devices=None, ena_support=None, encrypted=None, ephemeral_block_devices=None, image_location=None, kernel_id=None, kms_key_id=None, manage_ebs_snapshots=None, name=None, ramdisk_id=None, root_device_name=None, root_snapshot_id=None, source_ami_id=None, source_ami_region=None, sriov_net_support=None, tags=None, virtualization_type=None)

Get an existing AmiCopy resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] architecture: Machine architecture for created instances. Defaults to “x86_64”. :param pulumi.Input[str] description: A longer, human-readable description for the AMI. :param pulumi.Input[list] ebs_block_devices: Nested block describing an EBS block device that should be

attached to created instances. The structure of this block is described below.
Parameters:
  • ena_support (pulumi.Input[bool]) – Specifies whether enhanced networking with ENA is enabled. Defaults to false.
  • encrypted (pulumi.Input[bool]) – Specifies whether the destination snapshots of the copied image should be encrypted. Defaults to false
  • ephemeral_block_devices (pulumi.Input[list]) – Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
  • image_location (pulumi.Input[str]) – Path to an S3 object containing an image manifest, e.g. created by the ec2-upload-bundle command in the EC2 command line tools.
  • kernel_id (pulumi.Input[str]) – The id of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
  • kms_key_id (pulumi.Input[str]) – The full ARN of the KMS Key to use when encrypting the snapshots of an image during a copy operation. If not specified, then the default AWS KMS Key will be used
  • name (pulumi.Input[str]) – A region-unique name for the AMI.
  • ramdisk_id (pulumi.Input[str]) – The id of an initrd image (ARI) that will be used when booting the created instances.
  • root_device_name (pulumi.Input[str]) – The name of the root device (for example, /dev/sda1, or /dev/xvda).
  • source_ami_id (pulumi.Input[str]) – The id of the AMI to copy. This id must be valid in the region given by source_ami_region.
  • source_ami_region (pulumi.Input[str]) – The region from which the AMI will be copied. This may be the same as the AWS provider region in order to create a copy within the same region.
  • sriov_net_support (pulumi.Input[str]) – When set to “simple” (the default), enables enhanced networking for created instances. No other value is supported at this time.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • virtualization_type (pulumi.Input[str]) – Keyword to choose what virtualization mode created instances will use. Can be either “paravirtual” (the default) or “hvm”. The choice of virtualization type changes the set of further arguments that are required, as described below.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.AmiFromInstance(resource_name, opts=None, description=None, ebs_block_devices=None, ephemeral_block_devices=None, name=None, snapshot_without_reboot=None, source_instance_id=None, tags=None, __props__=None, __name__=None, __opts__=None)

The “AMI from instance” resource allows the creation of an Amazon Machine Image (AMI) modelled after an existing EBS-backed EC2 instance.

The created AMI will refer to implicitly-created snapshots of the instance’s EBS volumes and mimick its assigned block device configuration at the time the resource is created.

This resource is best applied to an instance that is stopped when this instance is created, so that the contents of the created image are predictable. When applied to an instance that is running, the instance will be stopped before taking the snapshots and then started back up again, resulting in a period of downtime.

Note that the source instance is inspected only at the initial creation of this resource. Ongoing updates to the referenced instance will not be propagated into the generated AMI. Users may taint or otherwise recreate the resource in order to produce a fresh snapshot.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – A longer, human-readable description for the AMI.
  • ebs_block_devices (pulumi.Input[list]) – Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
  • ephemeral_block_devices (pulumi.Input[list]) – Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
  • name (pulumi.Input[str]) – A region-unique name for the AMI.
  • snapshot_without_reboot (pulumi.Input[bool]) – Boolean that overrides the behavior of stopping the instance before snapshotting. This is risky since it may cause a snapshot of an inconsistent filesystem state, but can be used to avoid downtime if the user otherwise guarantees that no filesystem writes will be underway at the time of snapshot.
  • source_instance_id (pulumi.Input[str]) – The id of the instance to use as the basis of the AMI.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
architecture = None

Machine architecture for created instances. Defaults to “x86_64”.

description = None

A longer, human-readable description for the AMI.

ebs_block_devices = None

Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.

ena_support = None

Specifies whether enhanced networking with ENA is enabled. Defaults to false.

ephemeral_block_devices = None

Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.

image_location = None

Path to an S3 object containing an image manifest, e.g. created by the ec2-upload-bundle command in the EC2 command line tools.

kernel_id = None

The id of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.

name = None

A region-unique name for the AMI.

ramdisk_id = None

The id of an initrd image (ARI) that will be used when booting the created instances.

root_device_name = None

The name of the root device (for example, /dev/sda1, or /dev/xvda).

snapshot_without_reboot = None

Boolean that overrides the behavior of stopping the instance before snapshotting. This is risky since it may cause a snapshot of an inconsistent filesystem state, but can be used to avoid downtime if the user otherwise guarantees that no filesystem writes will be underway at the time of snapshot.

source_instance_id = None

The id of the instance to use as the basis of the AMI.

sriov_net_support = None

When set to “simple” (the default), enables enhanced networking for created instances. No other value is supported at this time.

tags = None

A mapping of tags to assign to the resource.

virtualization_type = None

Keyword to choose what virtualization mode created instances will use. Can be either “paravirtual” (the default) or “hvm”. The choice of virtualization type changes the set of further arguments that are required, as described below.

static get(resource_name, id, opts=None, architecture=None, description=None, ebs_block_devices=None, ena_support=None, ephemeral_block_devices=None, image_location=None, kernel_id=None, manage_ebs_snapshots=None, name=None, ramdisk_id=None, root_device_name=None, root_snapshot_id=None, snapshot_without_reboot=None, source_instance_id=None, sriov_net_support=None, tags=None, virtualization_type=None)

Get an existing AmiFromInstance resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] architecture: Machine architecture for created instances. Defaults to “x86_64”. :param pulumi.Input[str] description: A longer, human-readable description for the AMI. :param pulumi.Input[list] ebs_block_devices: Nested block describing an EBS block device that should be

attached to created instances. The structure of this block is described below.
Parameters:
  • ena_support (pulumi.Input[bool]) – Specifies whether enhanced networking with ENA is enabled. Defaults to false.
  • ephemeral_block_devices (pulumi.Input[list]) – Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
  • image_location (pulumi.Input[str]) – Path to an S3 object containing an image manifest, e.g. created by the ec2-upload-bundle command in the EC2 command line tools.
  • kernel_id (pulumi.Input[str]) – The id of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
  • name (pulumi.Input[str]) – A region-unique name for the AMI.
  • ramdisk_id (pulumi.Input[str]) – The id of an initrd image (ARI) that will be used when booting the created instances.
  • root_device_name (pulumi.Input[str]) – The name of the root device (for example, /dev/sda1, or /dev/xvda).
  • snapshot_without_reboot (pulumi.Input[bool]) – Boolean that overrides the behavior of stopping the instance before snapshotting. This is risky since it may cause a snapshot of an inconsistent filesystem state, but can be used to avoid downtime if the user otherwise guarantees that no filesystem writes will be underway at the time of snapshot.
  • source_instance_id (pulumi.Input[str]) – The id of the instance to use as the basis of the AMI.
  • sriov_net_support (pulumi.Input[str]) – When set to “simple” (the default), enables enhanced networking for created instances. No other value is supported at this time.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • virtualization_type (pulumi.Input[str]) – Keyword to choose what virtualization mode created instances will use. Can be either “paravirtual” (the default) or “hvm”. The choice of virtualization type changes the set of further arguments that are required, as described below.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.AmiLaunchPermission(resource_name, opts=None, account_id=None, image_id=None, __props__=None, __name__=None, __opts__=None)

Adds launch permission to Amazon Machine Image (AMI) from another AWS account.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • account_id (pulumi.Input[str]) – An AWS Account ID to add launch permissions.
  • image_id (pulumi.Input[str]) – A region-unique name for the AMI.
account_id = None

An AWS Account ID to add launch permissions.

image_id = None

A region-unique name for the AMI.

static get(resource_name, id, opts=None, account_id=None, image_id=None)

Get an existing AmiLaunchPermission resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] account_id: An AWS Account ID to add launch permissions. :param pulumi.Input[str] image_id: A region-unique name for the AMI.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.AwaitableGetCustomerGatewayResult(bgp_asn=None, filters=None, id=None, ip_address=None, tags=None, type=None)
class pulumi_aws.ec2.AwaitableGetInstanceResult(ami=None, arn=None, associate_public_ip_address=None, availability_zone=None, credit_specifications=None, disable_api_termination=None, ebs_block_devices=None, ebs_optimized=None, ephemeral_block_devices=None, filters=None, get_password_data=None, get_user_data=None, host_id=None, iam_instance_profile=None, instance_id=None, instance_state=None, instance_tags=None, instance_type=None, key_name=None, monitoring=None, network_interface_id=None, password_data=None, placement_group=None, private_dns=None, private_ip=None, public_dns=None, public_ip=None, root_block_devices=None, security_groups=None, source_dest_check=None, subnet_id=None, tags=None, tenancy=None, user_data=None, user_data_base64=None, vpc_security_group_ids=None, id=None)
class pulumi_aws.ec2.AwaitableGetInstancesResult(filters=None, ids=None, instance_state_names=None, instance_tags=None, private_ips=None, public_ips=None, id=None)
class pulumi_aws.ec2.AwaitableGetInternetGatewayResult(attachments=None, filters=None, internet_gateway_id=None, owner_id=None, tags=None, id=None)
class pulumi_aws.ec2.AwaitableGetLaunchConfigurationResult(associate_public_ip_address=None, ebs_block_devices=None, ebs_optimized=None, enable_monitoring=None, ephemeral_block_devices=None, iam_instance_profile=None, image_id=None, instance_type=None, key_name=None, name=None, placement_tenancy=None, root_block_devices=None, security_groups=None, spot_price=None, user_data=None, vpc_classic_link_id=None, vpc_classic_link_security_groups=None, id=None)
class pulumi_aws.ec2.AwaitableGetLaunchTemplateResult(arn=None, block_device_mappings=None, credit_specifications=None, default_version=None, description=None, disable_api_termination=None, ebs_optimized=None, elastic_gpu_specifications=None, iam_instance_profiles=None, image_id=None, instance_initiated_shutdown_behavior=None, instance_market_options=None, instance_type=None, kernel_id=None, key_name=None, latest_version=None, monitorings=None, name=None, network_interfaces=None, placements=None, ram_disk_id=None, security_group_names=None, tag_specifications=None, tags=None, user_data=None, vpc_security_group_ids=None, id=None)
class pulumi_aws.ec2.AwaitableGetNatGatewayResult(allocation_id=None, filters=None, id=None, network_interface_id=None, private_ip=None, public_ip=None, state=None, subnet_id=None, tags=None, vpc_id=None)
class pulumi_aws.ec2.AwaitableGetNetworkAclsResult(filters=None, ids=None, tags=None, vpc_id=None, id=None)
class pulumi_aws.ec2.AwaitableGetNetworkInterfaceResult(associations=None, attachments=None, availability_zone=None, description=None, filters=None, id=None, interface_type=None, ipv6_addresses=None, mac_address=None, owner_id=None, private_dns_name=None, private_ip=None, private_ips=None, requester_id=None, security_groups=None, subnet_id=None, tags=None, vpc_id=None)
class pulumi_aws.ec2.AwaitableGetNetworkInterfacesResult(filters=None, ids=None, tags=None, id=None)
class pulumi_aws.ec2.AwaitableGetRouteResult(destination_cidr_block=None, destination_ipv6_cidr_block=None, egress_only_gateway_id=None, gateway_id=None, instance_id=None, nat_gateway_id=None, network_interface_id=None, route_table_id=None, transit_gateway_id=None, vpc_peering_connection_id=None, id=None)
class pulumi_aws.ec2.AwaitableGetRouteTableResult(associations=None, filters=None, owner_id=None, route_table_id=None, routes=None, subnet_id=None, tags=None, vpc_id=None, id=None)
class pulumi_aws.ec2.AwaitableGetRouteTablesResult(filters=None, ids=None, tags=None, vpc_id=None, id=None)
class pulumi_aws.ec2.AwaitableGetSecurityGroupResult(arn=None, description=None, filters=None, id=None, name=None, tags=None, vpc_id=None)
class pulumi_aws.ec2.AwaitableGetSecurityGroupsResult(filters=None, ids=None, tags=None, vpc_ids=None, id=None)
class pulumi_aws.ec2.AwaitableGetSubnetIdsResult(filters=None, ids=None, tags=None, vpc_id=None, id=None)
class pulumi_aws.ec2.AwaitableGetSubnetResult(arn=None, assign_ipv6_address_on_creation=None, availability_zone=None, availability_zone_id=None, cidr_block=None, default_for_az=None, filters=None, id=None, ipv6_cidr_block=None, ipv6_cidr_block_association_id=None, map_public_ip_on_launch=None, owner_id=None, state=None, tags=None, vpc_id=None)
class pulumi_aws.ec2.AwaitableGetVpcDhcpOptionsResult(dhcp_options_id=None, domain_name=None, domain_name_servers=None, filters=None, netbios_name_servers=None, netbios_node_type=None, ntp_servers=None, owner_id=None, tags=None, id=None)
class pulumi_aws.ec2.AwaitableGetVpcEndpointResult(cidr_blocks=None, dns_entries=None, id=None, network_interface_ids=None, owner_id=None, policy=None, prefix_list_id=None, private_dns_enabled=None, requester_managed=None, route_table_ids=None, security_group_ids=None, service_name=None, state=None, subnet_ids=None, tags=None, vpc_endpoint_type=None, vpc_id=None)
class pulumi_aws.ec2.AwaitableGetVpcEndpointServiceResult(acceptance_required=None, availability_zones=None, base_endpoint_dns_names=None, manages_vpc_endpoints=None, owner=None, private_dns_name=None, service=None, service_id=None, service_name=None, service_type=None, tags=None, vpc_endpoint_policy_supported=None, id=None)
class pulumi_aws.ec2.AwaitableGetVpcPeeringConnectionResult(accepter=None, cidr_block=None, filters=None, id=None, owner_id=None, peer_cidr_block=None, peer_owner_id=None, peer_region=None, peer_vpc_id=None, region=None, requester=None, status=None, tags=None, vpc_id=None)
class pulumi_aws.ec2.AwaitableGetVpcResult(arn=None, cidr_block=None, cidr_block_associations=None, default=None, dhcp_options_id=None, enable_dns_hostnames=None, enable_dns_support=None, filters=None, id=None, instance_tenancy=None, ipv6_association_id=None, ipv6_cidr_block=None, main_route_table_id=None, owner_id=None, state=None, tags=None)
class pulumi_aws.ec2.AwaitableGetVpcsResult(filters=None, ids=None, tags=None, id=None)
class pulumi_aws.ec2.AwaitableGetVpnGatewayResult(amazon_side_asn=None, attached_vpc_id=None, availability_zone=None, filters=None, id=None, state=None, tags=None)
class pulumi_aws.ec2.CapacityReservation(resource_name, opts=None, availability_zone=None, ebs_optimized=None, end_date=None, end_date_type=None, ephemeral_storage=None, instance_count=None, instance_match_criteria=None, instance_platform=None, instance_type=None, tags=None, tenancy=None, __props__=None, __name__=None, __opts__=None)

Provides an EC2 Capacity Reservation. This allows you to reserve capacity for your Amazon EC2 instances in a specific Availability Zone for any duration.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • availability_zone (pulumi.Input[str]) – The Availability Zone in which to create the Capacity Reservation.
  • ebs_optimized (pulumi.Input[bool]) – Indicates whether the Capacity Reservation supports EBS-optimized instances.
  • end_date (pulumi.Input[str]) – The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
  • end_date_type (pulumi.Input[str]) – Indicates the way in which the Capacity Reservation ends. Specify either unlimited or limited.
  • ephemeral_storage (pulumi.Input[bool]) – Indicates whether the Capacity Reservation supports instances with temporary, block-level storage.
  • instance_count (pulumi.Input[float]) – The number of instances for which to reserve capacity.
  • instance_match_criteria (pulumi.Input[str]) – Indicates the type of instance launches that the Capacity Reservation accepts. Specify either open or targeted.
  • instance_platform (pulumi.Input[str]) – The type of operating system for which to reserve capacity. Valid options are Linux/UNIX, Red Hat Enterprise Linux, SUSE Linux, Windows, Windows with SQL Server, Windows with SQL Server Enterprise, Windows with SQL Server Standard or Windows with SQL Server Web.
  • instance_type (pulumi.Input[str]) – The instance type for which to reserve capacity.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • tenancy (pulumi.Input[str]) – Indicates the tenancy of the Capacity Reservation. Specify either default or dedicated.
availability_zone = None

The Availability Zone in which to create the Capacity Reservation.

ebs_optimized = None

Indicates whether the Capacity Reservation supports EBS-optimized instances.

end_date = None

The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)

end_date_type = None

Indicates the way in which the Capacity Reservation ends. Specify either unlimited or limited.

ephemeral_storage = None

Indicates whether the Capacity Reservation supports instances with temporary, block-level storage.

instance_count = None

The number of instances for which to reserve capacity.

instance_match_criteria = None

Indicates the type of instance launches that the Capacity Reservation accepts. Specify either open or targeted.

instance_platform = None

The type of operating system for which to reserve capacity. Valid options are Linux/UNIX, Red Hat Enterprise Linux, SUSE Linux, Windows, Windows with SQL Server, Windows with SQL Server Enterprise, Windows with SQL Server Standard or Windows with SQL Server Web.

instance_type = None

The instance type for which to reserve capacity.

tags = None

A mapping of tags to assign to the resource.

tenancy = None

Indicates the tenancy of the Capacity Reservation. Specify either default or dedicated.

static get(resource_name, id, opts=None, availability_zone=None, ebs_optimized=None, end_date=None, end_date_type=None, ephemeral_storage=None, instance_count=None, instance_match_criteria=None, instance_platform=None, instance_type=None, tags=None, tenancy=None)

Get an existing CapacityReservation resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] availability_zone: The Availability Zone in which to create the Capacity Reservation. :param pulumi.Input[bool] ebs_optimized: Indicates whether the Capacity Reservation supports EBS-optimized instances. :param pulumi.Input[str] end_date: The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ) :param pulumi.Input[str] end_date_type: Indicates the way in which the Capacity Reservation ends. Specify either unlimited or limited. :param pulumi.Input[bool] ephemeral_storage: Indicates whether the Capacity Reservation supports instances with temporary, block-level storage. :param pulumi.Input[float] instance_count: The number of instances for which to reserve capacity. :param pulumi.Input[str] instance_match_criteria: Indicates the type of instance launches that the Capacity Reservation accepts. Specify either open or targeted. :param pulumi.Input[str] instance_platform: The type of operating system for which to reserve capacity. Valid options are Linux/UNIX, Red Hat Enterprise Linux, SUSE Linux, Windows, Windows with SQL Server, Windows with SQL Server Enterprise, Windows with SQL Server Standard or Windows with SQL Server Web. :param pulumi.Input[str] instance_type: The instance type for which to reserve capacity. :param pulumi.Input[dict] tags: A mapping of tags to assign to the resource. :param pulumi.Input[str] tenancy: Indicates the tenancy of the Capacity Reservation. Specify either default or dedicated.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.CustomerGateway(resource_name, opts=None, bgp_asn=None, ip_address=None, tags=None, type=None, __props__=None, __name__=None, __opts__=None)

Provides a customer gateway inside a VPC. These objects can be connected to VPN gateways via VPN connections, and allow you to establish tunnels between your network and the VPC.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • bgp_asn (pulumi.Input[float]) – The gateway’s Border Gateway Protocol (BGP) Autonomous System Number (ASN).
  • ip_address (pulumi.Input[str]) – The IP address of the gateway’s Internet-routable external interface.
  • tags (pulumi.Input[dict]) – Tags to apply to the gateway.
  • type (pulumi.Input[str]) – The type of customer gateway. The only type AWS supports at this time is “ipsec.1”.
bgp_asn = None

The gateway’s Border Gateway Protocol (BGP) Autonomous System Number (ASN).

ip_address = None

The IP address of the gateway’s Internet-routable external interface.

tags = None

Tags to apply to the gateway.

type = None

The type of customer gateway. The only type AWS supports at this time is “ipsec.1”.

static get(resource_name, id, opts=None, bgp_asn=None, ip_address=None, tags=None, type=None)

Get an existing CustomerGateway resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[float] bgp_asn: The gateway’s Border Gateway Protocol (BGP) Autonomous System Number (ASN). :param pulumi.Input[str] ip_address: The IP address of the gateway’s Internet-routable external interface. :param pulumi.Input[dict] tags: Tags to apply to the gateway. :param pulumi.Input[str] type: The type of customer gateway. The only type AWS

supports at this time is “ipsec.1”.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.DefaultNetworkAcl(resource_name, opts=None, default_network_acl_id=None, egress=None, ingress=None, subnet_ids=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage the default AWS Network ACL. VPC Only.

Each VPC created in AWS comes with a Default Network ACL that can be managed, but not destroyed. This is an advanced resource, and has special caveats to be aware of when using it. Please read this document in its entirety before using this resource.

The ec2.DefaultNetworkAcl behaves differently from normal resources, in that this provider does not create this resource, but instead attempts to “adopt” it into management. We can do this because each VPC created has a Default Network ACL that cannot be destroyed, and is created with a known set of default rules.

When this provider first adopts the Default Network ACL, it immediately removes all rules in the ACL. It then proceeds to create any rules specified in the configuration. This step is required so that only the rules specified in the configuration are created.

This resource treats its inline rules as absolute; only the rules defined inline are created, and any additions/removals external to this resource will result in diffs being shown. For these reasons, this resource is incompatible with the ec2.NetworkAclRule resource.

For more information about Network ACLs, see the AWS Documentation on [Network ACLs][aws-network-acls].

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • default_network_acl_id (pulumi.Input[str]) – The Network ACL ID to manage. This attribute is exported from ec2.Vpc, or manually found via the AWS Console.
  • egress (pulumi.Input[list]) – Specifies an egress rule. Parameters defined below.
  • ingress (pulumi.Input[list]) – Specifies an ingress rule. Parameters defined below.
  • subnet_ids (pulumi.Input[list]) – A list of Subnet IDs to apply the ACL to. See the notes below on managing Subnets in the Default Network ACL
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
default_network_acl_id = None

The Network ACL ID to manage. This attribute is exported from ec2.Vpc, or manually found via the AWS Console.

egress = None

Specifies an egress rule. Parameters defined below.

ingress = None

Specifies an ingress rule. Parameters defined below.

owner_id = None

The ID of the AWS account that owns the Default Network ACL

subnet_ids = None

A list of Subnet IDs to apply the ACL to. See the notes below on managing Subnets in the Default Network ACL

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The ID of the associated VPC

static get(resource_name, id, opts=None, default_network_acl_id=None, egress=None, ingress=None, owner_id=None, subnet_ids=None, tags=None, vpc_id=None)

Get an existing DefaultNetworkAcl resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] default_network_acl_id: The Network ACL ID to manage. This

attribute is exported from ec2.Vpc, or manually found via the AWS Console.
Parameters:
  • egress (pulumi.Input[list]) – Specifies an egress rule. Parameters defined below.
  • ingress (pulumi.Input[list]) – Specifies an ingress rule. Parameters defined below.
  • owner_id (pulumi.Input[str]) – The ID of the AWS account that owns the Default Network ACL
  • subnet_ids (pulumi.Input[list]) – A list of Subnet IDs to apply the ACL to. See the notes below on managing Subnets in the Default Network ACL
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The ID of the associated VPC
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.DefaultRouteTable(resource_name, opts=None, default_route_table_id=None, propagating_vgws=None, routes=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage a Default VPC Routing Table.

Each VPC created in AWS comes with a Default Route Table that can be managed, but not destroyed. This is an advanced resource, and has special caveats to be aware of when using it. Please read this document in its entirety before using this resource. It is recommended you do not use both ec2.DefaultRouteTable to manage the default route table and use the ec2.MainRouteTableAssociation, due to possible conflict in routes.

The ec2.DefaultRouteTable behaves differently from normal resources, in that this provider does not create this resource, but instead attempts to “adopt” it into management. We can do this because each VPC created has a Default Route Table that cannot be destroyed, and is created with a single route.

When this provider first adopts the Default Route Table, it immediately removes all defined routes. It then proceeds to create any routes specified in the configuration. This step is required so that only the routes specified in the configuration present in the Default Route Table.

For more information about Route Tables, see the AWS Documentation on [Route Tables][aws-route-tables].

For more information about managing normal Route Tables in this provider, see our documentation on [ec2.RouteTable][tf-route-tables].

NOTE on Route Tables and Routes: This provider currently provides both a standalone Route resource and a Route Table resource with routes defined in-line. At this time you cannot use a Route Table with in-line routes in conjunction with any Route resources. Doing so will cause a conflict of rule settings and will overwrite routes.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • default_route_table_id (pulumi.Input[str]) – The ID of the Default Routing Table.
  • propagating_vgws (pulumi.Input[list]) – A list of virtual gateways for propagation.
  • routes (pulumi.Input[list]) – A list of route objects. Their keys are documented below. This argument is processed in attribute-as-blocks mode.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
default_route_table_id = None

The ID of the Default Routing Table.

owner_id = None

The ID of the AWS account that owns the route table

propagating_vgws = None

A list of virtual gateways for propagation.

routes = None

A list of route objects. Their keys are documented below. This argument is processed in attribute-as-blocks mode.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, default_route_table_id=None, owner_id=None, propagating_vgws=None, routes=None, tags=None, vpc_id=None)

Get an existing DefaultRouteTable resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] default_route_table_id: The ID of the Default Routing Table. :param pulumi.Input[str] owner_id: The ID of the AWS account that owns the route table :param pulumi.Input[list] propagating_vgws: A list of virtual gateways for propagation. :param pulumi.Input[list] routes: A list of route objects. Their keys are documented below.

This argument is processed in attribute-as-blocks mode.
Parameters:tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.DefaultSecurityGroup(resource_name, opts=None, egress=None, ingress=None, revoke_rules_on_delete=None, tags=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage the default AWS Security Group.

For EC2 Classic accounts, each region comes with a Default Security Group. Additionally, each VPC created in AWS comes with a Default Security Group that can be managed, but not destroyed. This is an advanced resource, and has special caveats to be aware of when using it. Please read this document in its entirety before using this resource.

The ec2.DefaultSecurityGroup behaves differently from normal resources, in that this provider does not create this resource, but instead “adopts” it into management. We can do this because these default security groups cannot be destroyed, and are created with a known set of default ingress/egress rules.

When this provider first adopts the Default Security Group, it immediately removes all ingress and egress rules in the Security Group. It then proceeds to create any rules specified in the configuration. This step is required so that only the rules specified in the configuration are created.

This resource treats its inline rules as absolute; only the rules defined inline are created, and any additions/removals external to this resource will result in diff shown. For these reasons, this resource is incompatible with the ec2.SecurityGroupRule resource.

For more information about Default Security Groups, see the AWS Documentation on [Default Security Groups][aws-default-security-groups].

With the exceptions mentioned above, ec2.DefaultSecurityGroup should identical behavior to ec2.SecurityGroup. Please consult AWS_SECURITY_GROUP for further usage documentation.

Each AWS VPC (or region, if using EC2 Classic) comes with a Default Security Group that cannot be deleted. The ec2.DefaultSecurityGroup allows you to manage this Security Group, but this provider cannot destroy it. Removing this resource from your configuration will remove it from your statefile and management, but will not destroy the Security Group. All ingress or egress rules will be left as they are at the time of removal. You can resume managing them via the AWS Console.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • egress (pulumi.Input[list]) – Can be specified multiple times for each egress rule. Each egress block supports fields documented below.
  • ingress (pulumi.Input[list]) – Can be specified multiple times for each ingress rule. Each ingress block supports fields documented below.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID. Note that changing the ``vpc_id`` will *not* restore any default security group rules that were modified, added, or removed. It will be left in its current state
egress = None

Can be specified multiple times for each egress rule. Each egress block supports fields documented below.

ingress = None

Can be specified multiple times for each ingress rule. Each ingress block supports fields documented below.

name = None

The name of the security group

owner_id = None

The owner ID.

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The VPC ID. Note that changing the ``vpc_id`` will *not* restore any default security group rules that were modified, added, or removed. It will be left in its current state

static get(resource_name, id, opts=None, arn=None, egress=None, ingress=None, name=None, owner_id=None, revoke_rules_on_delete=None, tags=None, vpc_id=None)

Get an existing DefaultSecurityGroup resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[list] egress: Can be specified multiple times for each

egress rule. Each egress block supports fields documented below.
Parameters:
  • ingress (pulumi.Input[list]) – Can be specified multiple times for each ingress rule. Each ingress block supports fields documented below.
  • name (pulumi.Input[str]) – The name of the security group
  • owner_id (pulumi.Input[str]) – The owner ID.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID. Note that changing the ``vpc_id`` will *not* restore any default security group rules that were modified, added, or removed. It will be left in its current state
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.DefaultSubnet(resource_name, opts=None, availability_zone=None, map_public_ip_on_launch=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage a default AWS VPC subnet in the current region.

The ec2.DefaultSubnet behaves differently from normal resources, in that this provider does not create this resource, but instead “adopts” it into management.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • map_public_ip_on_launch (pulumi.Input[bool]) – Specify true to indicate that instances launched into the subnet should be assigned a public IP address.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
cidr_block = None

The CIDR block for the subnet.

ipv6_cidr_block = None

The IPv6 CIDR block.

map_public_ip_on_launch = None

Specify true to indicate that instances launched into the subnet should be assigned a public IP address.

owner_id = None

The ID of the AWS account that owns the subnet.

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The VPC ID.

static get(resource_name, id, opts=None, arn=None, assign_ipv6_address_on_creation=None, availability_zone=None, availability_zone_id=None, cidr_block=None, ipv6_cidr_block=None, ipv6_cidr_block_association_id=None, map_public_ip_on_launch=None, owner_id=None, tags=None, vpc_id=None)

Get an existing DefaultSubnet resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] cidr_block: The CIDR block for the subnet. :param pulumi.Input[str] ipv6_cidr_block: The IPv6 CIDR block. :param pulumi.Input[bool] map_public_ip_on_launch: Specify true to indicate

that instances launched into the subnet should be assigned a public IP address.
Parameters:
  • owner_id (pulumi.Input[str]) – The ID of the AWS account that owns the subnet.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.DefaultVpc(resource_name, opts=None, enable_classiclink=None, enable_classiclink_dns_support=None, enable_dns_hostnames=None, enable_dns_support=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage the default AWS VPC in the current region.

For AWS accounts created after 2013-12-04, each region comes with a Default VPC. This is an advanced resource, and has special caveats to be aware of when using it. Please read this document in its entirety before using this resource.

The ec2.DefaultVpc behaves differently from normal resources, in that this provider does not create this resource, but instead “adopts” it into management.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • enable_classiclink (pulumi.Input[bool]) – A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the [ClassicLink documentation][1] for more information. Defaults false.
  • enable_dns_hostnames (pulumi.Input[bool]) – A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
  • enable_dns_support (pulumi.Input[bool]) – A boolean flag to enable/disable DNS support in the VPC. Defaults true.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
arn = None

Amazon Resource Name (ARN) of VPC

assign_generated_ipv6_cidr_block = None

Whether or not an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC was assigned

cidr_block = None

The CIDR block of the VPC

default_network_acl_id = None

The ID of the network ACL created by default on VPC creation

default_route_table_id = None

The ID of the route table created by default on VPC creation

default_security_group_id = None

The ID of the security group created by default on VPC creation

A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the [ClassicLink documentation][1] for more information. Defaults false.

enable_dns_hostnames = None

A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.

enable_dns_support = None

A boolean flag to enable/disable DNS support in the VPC. Defaults true.

instance_tenancy = None

Tenancy of instances spin up within VPC.

ipv6_association_id = None

The association ID for the IPv6 CIDR block of the VPC

ipv6_cidr_block = None

The IPv6 CIDR block of the VPC

main_route_table_id = None

The ID of the main route table associated with this VPC. Note that you can change a VPC’s main route table by using an ``ec2.MainRouteTableAssociation` <https://www.terraform.io/docs/providers/aws/r/main_route_table_assoc.html>`_

owner_id = None

The ID of the AWS account that owns the VPC.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, arn=None, assign_generated_ipv6_cidr_block=None, cidr_block=None, default_network_acl_id=None, default_route_table_id=None, default_security_group_id=None, dhcp_options_id=None, enable_classiclink=None, enable_classiclink_dns_support=None, enable_dns_hostnames=None, enable_dns_support=None, instance_tenancy=None, ipv6_association_id=None, ipv6_cidr_block=None, main_route_table_id=None, owner_id=None, tags=None)

Get an existing DefaultVpc resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] arn: Amazon Resource Name (ARN) of VPC :param pulumi.Input[bool] assign_generated_ipv6_cidr_block: Whether or not an Amazon-provided IPv6 CIDR

block with a /56 prefix length for the VPC was assigned
Parameters:
  • cidr_block (pulumi.Input[str]) – The CIDR block of the VPC
  • default_network_acl_id (pulumi.Input[str]) – The ID of the network ACL created by default on VPC creation
  • default_route_table_id (pulumi.Input[str]) – The ID of the route table created by default on VPC creation
  • default_security_group_id (pulumi.Input[str]) – The ID of the security group created by default on VPC creation
  • enable_classiclink (pulumi.Input[bool]) – A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the [ClassicLink documentation][1] for more information. Defaults false.
  • enable_dns_hostnames (pulumi.Input[bool]) – A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
  • enable_dns_support (pulumi.Input[bool]) – A boolean flag to enable/disable DNS support in the VPC. Defaults true.
  • instance_tenancy (pulumi.Input[str]) – Tenancy of instances spin up within VPC.
  • ipv6_association_id (pulumi.Input[str]) – The association ID for the IPv6 CIDR block of the VPC
  • ipv6_cidr_block (pulumi.Input[str]) – The IPv6 CIDR block of the VPC
  • main_route_table_id (pulumi.Input[str]) – The ID of the main route table associated with this VPC. Note that you can change a VPC’s main route table by using an ``ec2.MainRouteTableAssociation` <https://www.terraform.io/docs/providers/aws/r/main_route_table_assoc.html>`_
  • owner_id (pulumi.Input[str]) – The ID of the AWS account that owns the VPC.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.DefaultVpcDhcpOptions(resource_name, opts=None, netbios_name_servers=None, netbios_node_type=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage the default AWS DHCP Options Set in the current region.

Each AWS region comes with a default set of DHCP options. This is an advanced resource, and has special caveats to be aware of when using it. Please read this document in its entirety before using this resource.

The ec2.DefaultVpcDhcpOptions behaves differently from normal resources, in that this provider does not create this resource, but instead “adopts” it into management.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • netbios_name_servers (pulumi.Input[list]) – List of NETBIOS name servers.
  • netbios_node_type (pulumi.Input[str]) – The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see RFC 2132.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
netbios_name_servers = None

List of NETBIOS name servers.

netbios_node_type = None

The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see RFC 2132.

owner_id = None

The ID of the AWS account that owns the DHCP options set.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, domain_name=None, domain_name_servers=None, netbios_name_servers=None, netbios_node_type=None, ntp_servers=None, owner_id=None, tags=None)

Get an existing DefaultVpcDhcpOptions resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[list] netbios_name_servers: List of NETBIOS name servers. :param pulumi.Input[str] netbios_node_type: The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see RFC 2132. :param pulumi.Input[str] owner_id: The ID of the AWS account that owns the DHCP options set. :param pulumi.Input[dict] tags: A mapping of tags to assign to the resource.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.EgressOnlyInternetGateway(resource_name, opts=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

[IPv6 only] Creates an egress-only Internet gateway for your VPC. An egress-only Internet gateway is used to enable outbound communication over IPv6 from instances in your VPC to the Internet, and prevents hosts outside of your VPC from initiating an IPv6 connection with your instance.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID to create in.
vpc_id = None

The VPC ID to create in.

static get(resource_name, id, opts=None, vpc_id=None)

Get an existing EgressOnlyInternetGateway resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] vpc_id: The VPC ID to create in.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.Eip(resource_name, opts=None, associate_with_private_ip=None, instance=None, network_interface=None, public_ipv4_pool=None, tags=None, vpc=None, __props__=None, __name__=None, __opts__=None)

Provides an Elastic IP resource.

Note: EIP may require IGW to exist prior to association. Use depends_on to set an explicit dependency on the IGW.

Note: Do not use network_interface to associate the EIP to lb.LoadBalancer or ec2.NatGateway resources. Instead use the allocation_id available in those resources to allow AWS to manage the association, otherwise you will see AuthFailure errors.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • associate_with_private_ip (pulumi.Input[str]) – A user specified primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
  • instance (pulumi.Input[str]) – EC2 instance ID.
  • network_interface (pulumi.Input[str]) – Network interface ID to associate with.
  • public_ipv4_pool (pulumi.Input[str]) – EC2 IPv4 address pool identifier or amazon. This option is only available for VPC EIPs.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc (pulumi.Input[bool]) – Boolean if the EIP is in a VPC or not.
associate_with_private_ip = None

A user specified primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.

instance = None

EC2 instance ID.

network_interface = None

Network interface ID to associate with.

private_dns = None

The Private DNS associated with the Elastic IP address (if in VPC).

private_ip = None

Contains the private IP address (if in VPC).

public_dns = None

Public DNS associated with the Elastic IP address.

public_ip = None

Contains the public IP address.

public_ipv4_pool = None

EC2 IPv4 address pool identifier or amazon. This option is only available for VPC EIPs.

tags = None

A mapping of tags to assign to the resource.

vpc = None

Boolean if the EIP is in a VPC or not.

static get(resource_name, id, opts=None, allocation_id=None, associate_with_private_ip=None, association_id=None, domain=None, instance=None, network_interface=None, private_dns=None, private_ip=None, public_dns=None, public_ip=None, public_ipv4_pool=None, tags=None, vpc=None)

Get an existing Eip resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] associate_with_private_ip: A user specified primary or secondary private IP address to

associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
Parameters:
  • instance (pulumi.Input[str]) – EC2 instance ID.
  • network_interface (pulumi.Input[str]) – Network interface ID to associate with.
  • private_dns (pulumi.Input[str]) – The Private DNS associated with the Elastic IP address (if in VPC).
  • private_ip (pulumi.Input[str]) – Contains the private IP address (if in VPC).
  • public_dns (pulumi.Input[str]) – Public DNS associated with the Elastic IP address.
  • public_ip (pulumi.Input[str]) – Contains the public IP address.
  • public_ipv4_pool (pulumi.Input[str]) – EC2 IPv4 address pool identifier or amazon. This option is only available for VPC EIPs.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc (pulumi.Input[bool]) – Boolean if the EIP is in a VPC or not.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.EipAssociation(resource_name, opts=None, allocation_id=None, allow_reassociation=None, instance_id=None, network_interface_id=None, private_ip_address=None, public_ip=None, __props__=None, __name__=None, __opts__=None)

Provides an AWS EIP Association as a top level resource, to associate and disassociate Elastic IPs from AWS Instances and Network Interfaces.

NOTE: Do not use this resource to associate an EIP to lb.LoadBalancer or ec2.NatGateway resources. Instead use the allocation_id available in those resources to allow AWS to manage the association, otherwise you will see AuthFailure errors.

NOTE: ec2.EipAssociation is useful in scenarios where EIPs are either pre-existing or distributed to customers or users and therefore cannot be changed.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • allocation_id (pulumi.Input[str]) – The allocation ID. This is required for EC2-VPC.
  • allow_reassociation (pulumi.Input[bool]) – Whether to allow an Elastic IP to be re-associated. Defaults to true in VPC.
  • instance_id (pulumi.Input[str]) – The ID of the instance. This is required for EC2-Classic. For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. The operation fails if you specify an instance ID unless exactly one network interface is attached.
  • network_interface_id (pulumi.Input[str]) – The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.
  • private_ip_address (pulumi.Input[str]) – The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
  • public_ip (pulumi.Input[str]) – The Elastic IP address. This is required for EC2-Classic.
allocation_id = None

The allocation ID. This is required for EC2-VPC.

allow_reassociation = None

Whether to allow an Elastic IP to be re-associated. Defaults to true in VPC.

instance_id = None

The ID of the instance. This is required for EC2-Classic. For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. The operation fails if you specify an instance ID unless exactly one network interface is attached.

network_interface_id = None

The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.

private_ip_address = None

The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.

public_ip = None

The Elastic IP address. This is required for EC2-Classic.

static get(resource_name, id, opts=None, allocation_id=None, allow_reassociation=None, instance_id=None, network_interface_id=None, private_ip_address=None, public_ip=None)

Get an existing EipAssociation resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] allocation_id: The allocation ID. This is required for EC2-VPC. :param pulumi.Input[bool] allow_reassociation: Whether to allow an Elastic IP to

be re-associated. Defaults to true in VPC.
Parameters:
  • instance_id (pulumi.Input[str]) – The ID of the instance. This is required for EC2-Classic. For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. The operation fails if you specify an instance ID unless exactly one network interface is attached.
  • network_interface_id (pulumi.Input[str]) – The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.
  • private_ip_address (pulumi.Input[str]) – The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
  • public_ip (pulumi.Input[str]) – The Elastic IP address. This is required for EC2-Classic.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.Fleet(resource_name, opts=None, excess_capacity_termination_policy=None, launch_template_config=None, on_demand_options=None, replace_unhealthy_instances=None, spot_options=None, tags=None, target_capacity_specification=None, terminate_instances=None, terminate_instances_with_expiration=None, type=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage EC2 Fleets.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • excess_capacity_termination_policy (pulumi.Input[str]) – Whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2. Valid values: no-termination, termination. Defaults to termination.
  • launch_template_config (pulumi.Input[dict]) – Nested argument containing EC2 Launch Template configurations. Defined below.
  • on_demand_options (pulumi.Input[dict]) – Nested argument containing On-Demand configurations. Defined below.
  • replace_unhealthy_instances (pulumi.Input[bool]) – Whether EC2 Fleet should replace unhealthy instances. Defaults to false.
  • spot_options (pulumi.Input[dict]) – Nested argument containing Spot configurations. Defined below.
  • tags (pulumi.Input[dict]) – Map of Fleet tags. To tag instances at launch, specify the tags in the Launch Template.
  • target_capacity_specification (pulumi.Input[dict]) – Nested argument containing target capacity configurations. Defined below.
  • terminate_instances (pulumi.Input[bool]) – Whether to terminate instances for an EC2 Fleet if it is deleted successfully. Defaults to false.
  • terminate_instances_with_expiration (pulumi.Input[bool]) – Whether running instances should be terminated when the EC2 Fleet expires. Defaults to false.
  • type (pulumi.Input[str]) – The type of request. Indicates whether the EC2 Fleet only requests the target capacity, or also attempts to maintain it. Valid values: maintain, request. Defaults to maintain.
excess_capacity_termination_policy = None

Whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2. Valid values: no-termination, termination. Defaults to termination.

launch_template_config = None

Nested argument containing EC2 Launch Template configurations. Defined below.

on_demand_options = None

Nested argument containing On-Demand configurations. Defined below.

replace_unhealthy_instances = None

Whether EC2 Fleet should replace unhealthy instances. Defaults to false.

spot_options = None

Nested argument containing Spot configurations. Defined below.

tags = None

Map of Fleet tags. To tag instances at launch, specify the tags in the Launch Template.

target_capacity_specification = None

Nested argument containing target capacity configurations. Defined below.

terminate_instances = None

Whether to terminate instances for an EC2 Fleet if it is deleted successfully. Defaults to false.

terminate_instances_with_expiration = None

Whether running instances should be terminated when the EC2 Fleet expires. Defaults to false.

type = None

The type of request. Indicates whether the EC2 Fleet only requests the target capacity, or also attempts to maintain it. Valid values: maintain, request. Defaults to maintain.

static get(resource_name, id, opts=None, excess_capacity_termination_policy=None, launch_template_config=None, on_demand_options=None, replace_unhealthy_instances=None, spot_options=None, tags=None, target_capacity_specification=None, terminate_instances=None, terminate_instances_with_expiration=None, type=None)

Get an existing Fleet resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] excess_capacity_termination_policy: Whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2. Valid values: no-termination, termination. Defaults to termination. :param pulumi.Input[dict] launch_template_config: Nested argument containing EC2 Launch Template configurations. Defined below. :param pulumi.Input[dict] on_demand_options: Nested argument containing On-Demand configurations. Defined below. :param pulumi.Input[bool] replace_unhealthy_instances: Whether EC2 Fleet should replace unhealthy instances. Defaults to false. :param pulumi.Input[dict] spot_options: Nested argument containing Spot configurations. Defined below. :param pulumi.Input[dict] tags: Map of Fleet tags. To tag instances at launch, specify the tags in the Launch Template. :param pulumi.Input[dict] target_capacity_specification: Nested argument containing target capacity configurations. Defined below. :param pulumi.Input[bool] terminate_instances: Whether to terminate instances for an EC2 Fleet if it is deleted successfully. Defaults to false. :param pulumi.Input[bool] terminate_instances_with_expiration: Whether running instances should be terminated when the EC2 Fleet expires. Defaults to false. :param pulumi.Input[str] type: The type of request. Indicates whether the EC2 Fleet only requests the target capacity, or also attempts to maintain it. Valid values: maintain, request. Defaults to maintain.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.FlowLog(resource_name, opts=None, eni_id=None, iam_role_arn=None, log_destination=None, log_destination_type=None, log_group_name=None, subnet_id=None, traffic_type=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a VPC/Subnet/ENI Flow Log to capture IP traffic for a specific network interface, subnet, or VPC. Logs are sent to a CloudWatch Log Group or a S3 Bucket.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • eni_id (pulumi.Input[str]) – Elastic Network Interface ID to attach to
  • iam_role_arn (pulumi.Input[str]) – The ARN for the IAM role that’s used to post flow logs to a CloudWatch Logs log group
  • log_destination (pulumi.Input[str]) – The ARN of the logging destination.
  • log_destination_type (pulumi.Input[str]) – The type of the logging destination. Valid values: cloud-watch-logs, s3. Default: cloud-watch-logs.
  • log_group_name (pulumi.Input[str]) – Deprecated: Use log_destination instead. The name of the CloudWatch log group.
  • subnet_id (pulumi.Input[str]) – Subnet ID to attach to
  • traffic_type (pulumi.Input[str]) – The type of traffic to capture. Valid values: ACCEPT,REJECT, ALL.
  • vpc_id (pulumi.Input[str]) – VPC ID to attach to
eni_id = None

Elastic Network Interface ID to attach to

iam_role_arn = None

The ARN for the IAM role that’s used to post flow logs to a CloudWatch Logs log group

log_destination = None

The ARN of the logging destination.

log_destination_type = None

The type of the logging destination. Valid values: cloud-watch-logs, s3. Default: cloud-watch-logs.

log_group_name = None

Deprecated: Use log_destination instead. The name of the CloudWatch log group.

subnet_id = None

Subnet ID to attach to

traffic_type = None

The type of traffic to capture. Valid values: ACCEPT,REJECT, ALL.

vpc_id = None

VPC ID to attach to

static get(resource_name, id, opts=None, eni_id=None, iam_role_arn=None, log_destination=None, log_destination_type=None, log_group_name=None, subnet_id=None, traffic_type=None, vpc_id=None)

Get an existing FlowLog resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] eni_id: Elastic Network Interface ID to attach to :param pulumi.Input[str] iam_role_arn: The ARN for the IAM role that’s used to post flow logs to a CloudWatch Logs log group :param pulumi.Input[str] log_destination: The ARN of the logging destination. :param pulumi.Input[str] log_destination_type: The type of the logging destination. Valid values: cloud-watch-logs, s3. Default: cloud-watch-logs. :param pulumi.Input[str] log_group_name: Deprecated: Use log_destination instead. The name of the CloudWatch log group. :param pulumi.Input[str] subnet_id: Subnet ID to attach to :param pulumi.Input[str] traffic_type: The type of traffic to capture. Valid values: ACCEPT,REJECT, ALL. :param pulumi.Input[str] vpc_id: VPC ID to attach to

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.GetCustomerGatewayResult(bgp_asn=None, filters=None, id=None, ip_address=None, tags=None, type=None)

A collection of values returned by getCustomerGateway.

bgp_asn = None

(Optional) The gateway’s Border Gateway Protocol (BGP) Autonomous System Number (ASN).

ip_address = None

(Optional) The IP address of the gateway’s Internet-routable external interface.

tags = None

Map of key-value pairs assigned to the gateway.

type = None

(Optional) The type of customer gateway. The only type AWS supports at this time is “ipsec.1”.

class pulumi_aws.ec2.GetInstanceResult(ami=None, arn=None, associate_public_ip_address=None, availability_zone=None, credit_specifications=None, disable_api_termination=None, ebs_block_devices=None, ebs_optimized=None, ephemeral_block_devices=None, filters=None, get_password_data=None, get_user_data=None, host_id=None, iam_instance_profile=None, instance_id=None, instance_state=None, instance_tags=None, instance_type=None, key_name=None, monitoring=None, network_interface_id=None, password_data=None, placement_group=None, private_dns=None, private_ip=None, public_dns=None, public_ip=None, root_block_devices=None, security_groups=None, source_dest_check=None, subnet_id=None, tags=None, tenancy=None, user_data=None, user_data_base64=None, vpc_security_group_ids=None, id=None)

A collection of values returned by getInstance.

ami = None

The ID of the AMI used to launch the instance.

arn = None

The ARN of the instance.

associate_public_ip_address = None

Whether or not the Instance is associated with a public IP address or not (Boolean).

availability_zone = None

The availability zone of the Instance.

credit_specifications = None

The credit specification of the Instance.

ebs_block_devices = None

The EBS block device mappings of the Instance.

ebs_optimized = None

Whether the Instance is EBS optimized or not (Boolean).

ephemeral_block_devices = None

The ephemeral block device mappings of the Instance.

host_id = None

The Id of the dedicated host the instance will be assigned to.

iam_instance_profile = None

The name of the instance profile associated with the Instance.

instance_state = None

The state of the instance. One of: pending, running, shutting-down, terminated, stopping, stopped. See Instance Lifecycle for more information.

instance_type = None

The type of the Instance.

key_name = None

The key name of the Instance.

monitoring = None

Whether detailed monitoring is enabled or disabled for the Instance (Boolean).

network_interface_id = None

The ID of the network interface that was created with the Instance.

password_data = None

Base-64 encoded encrypted password data for the instance. Useful for getting the administrator password for instances running Microsoft Windows. This attribute is only exported if get_password_data is true. See GetPasswordData for more information.

placement_group = None

The placement group of the Instance.

private_dns = None

The private DNS name assigned to the Instance. Can only be used inside the Amazon EC2, and only available if you’ve enabled DNS hostnames for your VPC.

private_ip = None

The private IP address assigned to the Instance.

public_dns = None

The public DNS name assigned to the Instance. For EC2-VPC, this is only available if you’ve enabled DNS hostnames for your VPC.

public_ip = None

The public IP address assigned to the Instance, if applicable. NOTE: If you are using an ``ec2.Eip` <https://www.terraform.io/docs/providers/aws/r/eip.html>`_ with your instance, you should refer to the EIP’s address directly and not use public_ip, as this field will change after the EIP is attached.

root_block_devices = None

The root block device mappings of the Instance

security_groups = None

The associated security groups.

source_dest_check = None

Whether the network interface performs source/destination checking (Boolean).

subnet_id = None

The VPC subnet ID.

tags = None

A mapping of tags assigned to the Instance.

tenancy = None

The tenancy of the instance: dedicated, default, host.

user_data = None

SHA-1 hash of User Data supplied to the Instance.

user_data_base64 = None

Base64 encoded contents of User Data supplied to the Instance. Valid UTF-8 contents can be decoded with the ``base64decode` function <https://www.terraform.io/docs/configuration/functions/base64decode.html>`_. This attribute is only exported if get_user_data is true.

vpc_security_group_ids = None

The associated security groups in a non-default VPC.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetInstancesResult(filters=None, ids=None, instance_state_names=None, instance_tags=None, private_ips=None, public_ips=None, id=None)

A collection of values returned by getInstances.

ids = None

IDs of instances found through the filter

private_ips = None

Private IP addresses of instances found through the filter

public_ips = None

Public IP addresses of instances found through the filter

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetInternetGatewayResult(attachments=None, filters=None, internet_gateway_id=None, owner_id=None, tags=None, id=None)

A collection of values returned by getInternetGateway.

owner_id = None

The ID of the AWS account that owns the internet gateway.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetLaunchConfigurationResult(associate_public_ip_address=None, ebs_block_devices=None, ebs_optimized=None, enable_monitoring=None, ephemeral_block_devices=None, iam_instance_profile=None, image_id=None, instance_type=None, key_name=None, name=None, placement_tenancy=None, root_block_devices=None, security_groups=None, spot_price=None, user_data=None, vpc_classic_link_id=None, vpc_classic_link_security_groups=None, id=None)

A collection of values returned by getLaunchConfiguration.

associate_public_ip_address = None

Whether a Public IP address is associated with the instance.

ebs_block_devices = None

The EBS Block Devices attached to the instance.

ebs_optimized = None

Whether the launched EC2 instance will be EBS-optimized.

enable_monitoring = None

Whether Detailed Monitoring is Enabled.

ephemeral_block_devices = None

The Ephemeral volumes on the instance.

iam_instance_profile = None

The IAM Instance Profile to associate with launched instances.

image_id = None

The EC2 Image ID of the instance.

instance_type = None

The Instance Type of the instance to launch.

key_name = None

The Key Name that should be used for the instance.

name = None

The Name of the launch configuration.

placement_tenancy = None

The Tenancy of the instance.

root_block_devices = None

The Root Block Device of the instance.

security_groups = None

A list of associated Security Group IDS.

spot_price = None

The Price to use for reserving Spot instances.

user_data = None

The User Data of the instance.

The ID of a ClassicLink-enabled VPC.

The IDs of one or more Security Groups for the specified ClassicLink-enabled VPC.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetLaunchTemplateResult(arn=None, block_device_mappings=None, credit_specifications=None, default_version=None, description=None, disable_api_termination=None, ebs_optimized=None, elastic_gpu_specifications=None, iam_instance_profiles=None, image_id=None, instance_initiated_shutdown_behavior=None, instance_market_options=None, instance_type=None, kernel_id=None, key_name=None, latest_version=None, monitorings=None, name=None, network_interfaces=None, placements=None, ram_disk_id=None, security_group_names=None, tag_specifications=None, tags=None, user_data=None, vpc_security_group_ids=None, id=None)

A collection of values returned by getLaunchTemplate.

arn = None

Amazon Resource Name (ARN) of the launch template.

block_device_mappings = None

Specify volumes to attach to the instance besides the volumes specified by the AMI.

credit_specifications = None

Customize the credit specification of the instance. See Credit Specification below for more details.

default_version = None

The default version of the launch template.

description = None

Description of the launch template.

disable_api_termination = None

If true, enables EC2 Instance Termination Protection

ebs_optimized = None

If true, the launched EC2 instance will be EBS-optimized.

elastic_gpu_specifications = None

The elastic GPU to attach to the instance. See Elastic GPU below for more details.

iam_instance_profiles = None

The IAM Instance Profile to launch the instance with. See Instance Profile below for more details.

image_id = None

The AMI from which to launch the instance.

instance_initiated_shutdown_behavior = None

Shutdown behavior for the instance. Can be stop or terminate. (Default: stop).

instance_market_options = None

The market (purchasing) option for the instance. below for details.

instance_type = None

The type of the instance.

kernel_id = None

The kernel ID.

key_name = None

The key name to use for the instance.

latest_version = None

The latest version of the launch template.

monitorings = None

The monitoring option for the instance.

network_interfaces = None

Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.

placements = None

The placement of the instance.

ram_disk_id = None

The ID of the RAM disk.

security_group_names = None

A list of security group names to associate with. If you are creating Instances in a VPC, use vpc_security_group_ids instead.

tag_specifications = None

The tags to apply to the resources during launch.

tags = None

(Optional) A mapping of tags to assign to the launch template.

user_data = None

The Base64-encoded user data to provide when launching the instance.

vpc_security_group_ids = None

A list of security group IDs to associate with.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetNatGatewayResult(allocation_id=None, filters=None, id=None, network_interface_id=None, private_ip=None, public_ip=None, state=None, subnet_id=None, tags=None, vpc_id=None)

A collection of values returned by getNatGateway.

allocation_id = None

The Id of the EIP allocated to the selected Nat Gateway.

network_interface_id = None

The Id of the ENI allocated to the selected Nat Gateway.

private_ip = None

The private Ip address of the selected Nat Gateway.

public_ip = None

The public Ip (EIP) address of the selected Nat Gateway.

class pulumi_aws.ec2.GetNetworkAclsResult(filters=None, ids=None, tags=None, vpc_id=None, id=None)

A collection of values returned by getNetworkAcls.

ids = None

A list of all the network ACL ids found. This data source will fail if none are found.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetNetworkInterfaceResult(associations=None, attachments=None, availability_zone=None, description=None, filters=None, id=None, interface_type=None, ipv6_addresses=None, mac_address=None, owner_id=None, private_dns_name=None, private_ip=None, private_ips=None, requester_id=None, security_groups=None, subnet_id=None, tags=None, vpc_id=None)

A collection of values returned by getNetworkInterface.

associations = None

The association information for an Elastic IP address (IPv4) associated with the network interface. See supported fields below.

availability_zone = None

The Availability Zone.

description = None

Description of the network interface.

interface_type = None

The type of interface.

ipv6_addresses = None

List of IPv6 addresses to assign to the ENI.

mac_address = None

The MAC address.

owner_id = None

The AWS account ID of the owner of the network interface.

private_dns_name = None

The private DNS name.

private_ip = None

The private IPv4 address of the network interface within the subnet.

private_ips = None

The private IPv4 addresses associated with the network interface.

requester_id = None

The ID of the entity that launched the instance on your behalf.

security_groups = None

The list of security groups for the network interface.

subnet_id = None

The ID of the subnet.

tags = None

Any tags assigned to the network interface.

vpc_id = None

The ID of the VPC.

class pulumi_aws.ec2.GetNetworkInterfacesResult(filters=None, ids=None, tags=None, id=None)

A collection of values returned by getNetworkInterfaces.

ids = None

A list of all the network interface ids found. This data source will fail if none are found.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetRouteResult(destination_cidr_block=None, destination_ipv6_cidr_block=None, egress_only_gateway_id=None, gateway_id=None, instance_id=None, nat_gateway_id=None, network_interface_id=None, route_table_id=None, transit_gateway_id=None, vpc_peering_connection_id=None, id=None)

A collection of values returned by getRoute.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetRouteTableResult(associations=None, filters=None, owner_id=None, route_table_id=None, routes=None, subnet_id=None, tags=None, vpc_id=None, id=None)

A collection of values returned by getRouteTable.

owner_id = None

The ID of the AWS account that owns the route table

route_table_id = None

The Route Table ID.

subnet_id = None

The Subnet ID.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetRouteTablesResult(filters=None, ids=None, tags=None, vpc_id=None, id=None)

A collection of values returned by getRouteTables.

ids = None

A list of all the route table ids found. This data source will fail if none are found.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetSecurityGroupResult(arn=None, description=None, filters=None, id=None, name=None, tags=None, vpc_id=None)

A collection of values returned by getSecurityGroup.

arn = None

The computed ARN of the security group.

description = None

The description of the security group.

class pulumi_aws.ec2.GetSecurityGroupsResult(filters=None, ids=None, tags=None, vpc_ids=None, id=None)

A collection of values returned by getSecurityGroups.

ids = None

IDs of the matches security groups.

vpc_ids = None

The VPC IDs of the matched security groups. The data source’s tag or filter will span VPCs unless the vpc-id filter is also used.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetSubnetIdsResult(filters=None, ids=None, tags=None, vpc_id=None, id=None)

A collection of values returned by getSubnetIds.

ids = None

A list of all the subnet ids found. This data source will fail if none are found.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetSubnetResult(arn=None, assign_ipv6_address_on_creation=None, availability_zone=None, availability_zone_id=None, cidr_block=None, default_for_az=None, filters=None, id=None, ipv6_cidr_block=None, ipv6_cidr_block_association_id=None, map_public_ip_on_launch=None, owner_id=None, state=None, tags=None, vpc_id=None)

A collection of values returned by getSubnet.

arn = None

The ARN of the subnet.

owner_id = None

The ID of the AWS account that owns the subnet.

class pulumi_aws.ec2.GetVpcDhcpOptionsResult(dhcp_options_id=None, domain_name=None, domain_name_servers=None, filters=None, netbios_name_servers=None, netbios_node_type=None, ntp_servers=None, owner_id=None, tags=None, id=None)

A collection of values returned by getVpcDhcpOptions.

dhcp_options_id = None

EC2 DHCP Options ID

domain_name = None

The suffix domain name to used when resolving non Fully Qualified Domain Names. e.g. the search value in the /etc/resolv.conf file.

domain_name_servers = None

List of name servers.

netbios_name_servers = None

List of NETBIOS name servers.

netbios_node_type = None

The NetBIOS node type (1, 2, 4, or 8). For more information about these node types, see RFC 2132.

ntp_servers = None

List of NTP servers.

owner_id = None

The ID of the AWS account that owns the DHCP options set.

tags = None

A mapping of tags assigned to the resource.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetVpcEndpointResult(cidr_blocks=None, dns_entries=None, id=None, network_interface_ids=None, owner_id=None, policy=None, prefix_list_id=None, private_dns_enabled=None, requester_managed=None, route_table_ids=None, security_group_ids=None, service_name=None, state=None, subnet_ids=None, tags=None, vpc_endpoint_type=None, vpc_id=None)

A collection of values returned by getVpcEndpoint.

cidr_blocks = None

The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type Gateway.

dns_entries = None

The DNS entries for the VPC Endpoint. Applicable for endpoints of type Interface. DNS blocks are documented below.

network_interface_ids = None

One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type Interface.

owner_id = None

The ID of the AWS account that owns the VPC endpoint.

policy = None

The policy document associated with the VPC Endpoint. Applicable for endpoints of type Gateway.

prefix_list_id = None

The prefix list ID of the exposed AWS service. Applicable for endpoints of type Gateway.

private_dns_enabled = None

Whether or not the VPC is associated with a private hosted zone - true or false. Applicable for endpoints of type Interface.

requester_managed = None

Whether or not the VPC Endpoint is being managed by its service - true or false.

route_table_ids = None

One or more route tables associated with the VPC Endpoint. Applicable for endpoints of type Gateway.

security_group_ids = None

One or more security groups associated with the network interfaces. Applicable for endpoints of type Interface.

subnet_ids = None

One or more subnets in which the VPC Endpoint is located. Applicable for endpoints of type Interface.

tags = None

A mapping of tags assigned to the resource.

vpc_endpoint_type = None

The VPC Endpoint type, Gateway or Interface.

class pulumi_aws.ec2.GetVpcEndpointServiceResult(acceptance_required=None, availability_zones=None, base_endpoint_dns_names=None, manages_vpc_endpoints=None, owner=None, private_dns_name=None, service=None, service_id=None, service_name=None, service_type=None, tags=None, vpc_endpoint_policy_supported=None, id=None)

A collection of values returned by getVpcEndpointService.

acceptance_required = None

Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - true or false.

availability_zones = None

The Availability Zones in which the service is available.

base_endpoint_dns_names = None

The DNS names for the service.

manages_vpc_endpoints = None

Whether or not the service manages its VPC endpoints - true or false.

owner = None

The AWS account ID of the service owner or amazon.

private_dns_name = None

The private DNS name for the service.

service_id = None

The ID of the endpoint service.

service_type = None

The service type, Gateway or Interface.

tags = None

A mapping of tags assigned to the resource.

vpc_endpoint_policy_supported = None

Whether or not the service supports endpoint policies - true or false.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetVpcPeeringConnectionResult(accepter=None, cidr_block=None, filters=None, id=None, owner_id=None, peer_cidr_block=None, peer_owner_id=None, peer_region=None, peer_vpc_id=None, region=None, requester=None, status=None, tags=None, vpc_id=None)

A collection of values returned by getVpcPeeringConnection.

accepter = None

A configuration block that describes [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options set for the accepter VPC.

requester = None

A configuration block that describes [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options set for the requester VPC.

class pulumi_aws.ec2.GetVpcResult(arn=None, cidr_block=None, cidr_block_associations=None, default=None, dhcp_options_id=None, enable_dns_hostnames=None, enable_dns_support=None, filters=None, id=None, instance_tenancy=None, ipv6_association_id=None, ipv6_cidr_block=None, main_route_table_id=None, owner_id=None, state=None, tags=None)

A collection of values returned by getVpc.

arn = None

Amazon Resource Name (ARN) of VPC

cidr_block = None

The CIDR block for the association.

enable_dns_hostnames = None

Whether or not the VPC has DNS hostname support

enable_dns_support = None

Whether or not the VPC has DNS support

instance_tenancy = None

The allowed tenancy of instances launched into the selected VPC. May be any of "default", "dedicated", or "host".

ipv6_association_id = None

The association ID for the IPv6 CIDR block.

ipv6_cidr_block = None

The IPv6 CIDR block.

main_route_table_id = None

The ID of the main route table associated with this VPC.

owner_id = None

The ID of the AWS account that owns the VPC.

state = None

The State of the association.

class pulumi_aws.ec2.GetVpcsResult(filters=None, ids=None, tags=None, id=None)

A collection of values returned by getVpcs.

ids = None

A list of all the VPC Ids found. This data source will fail if none are found.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_aws.ec2.GetVpnGatewayResult(amazon_side_asn=None, attached_vpc_id=None, availability_zone=None, filters=None, id=None, state=None, tags=None)

A collection of values returned by getVpnGateway.

class pulumi_aws.ec2.Instance(resource_name, opts=None, ami=None, associate_public_ip_address=None, availability_zone=None, cpu_core_count=None, cpu_threads_per_core=None, credit_specification=None, disable_api_termination=None, ebs_block_devices=None, ebs_optimized=None, ephemeral_block_devices=None, get_password_data=None, host_id=None, iam_instance_profile=None, instance_initiated_shutdown_behavior=None, instance_type=None, ipv6_address_count=None, ipv6_addresses=None, key_name=None, monitoring=None, network_interfaces=None, placement_group=None, private_ip=None, root_block_device=None, security_groups=None, source_dest_check=None, subnet_id=None, tags=None, tenancy=None, user_data=None, user_data_base64=None, volume_tags=None, vpc_security_group_ids=None, __props__=None, __name__=None, __opts__=None)

Provides an EC2 instance resource. This allows instances to be created, updated, and deleted. Instances also support provisioning.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • ami (pulumi.Input[str]) – The AMI to use for the instance.
  • associate_public_ip_address (pulumi.Input[bool]) – Associate a public ip address with an instance in a VPC. Boolean value.
  • availability_zone (pulumi.Input[str]) – The AZ to start the instance in.
  • cpu_core_count (pulumi.Input[float]) – Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options CPU Cores and Threads Per CPU Core Per Instance Type - specifying this option for unsupported instance types will return an error from the EC2 API.
  • cpu_threads_per_core (pulumi.Input[float]) – If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See Optimizing CPU Options for more information.
  • credit_specification (pulumi.Input[dict]) – Customize the credit specification of the instance. See Credit Specification below for more details.
  • disable_api_termination (pulumi.Input[bool]) –

    If true, enables EC2 Instance Termination Protection

  • ebs_block_devices (pulumi.Input[list]) – Additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection.
  • ebs_optimized (pulumi.Input[bool]) – If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the EBS Optimized section of the AWS User Guide for more information.
  • ephemeral_block_devices (pulumi.Input[list]) – Customize Ephemeral (also known as “Instance Store”) volumes on the instance. See Block Devices below for details.
  • get_password_data (pulumi.Input[bool]) –

    If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the password_data attribute. See GetPasswordData for more information.

  • host_id (pulumi.Input[str]) – The Id of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
  • iam_instance_profile (pulumi.Input[str]) – The IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the EC2 documentation, notably iam:PassRole.
Parameters:
  • instance_initiated_shutdown_behavior (pulumi.Input[str]) – Shutdown behavior for the instance. Amazon defaults this to stop for EBS-backed instances and terminate for instance-store instances. Cannot be set on instance-store instances. See Shutdown Behavior for more information.
  • instance_type (pulumi.Input[str]) – The type of instance to start. Updates to this field will trigger a stop/start of the EC2 instance.
  • ipv6_addresses (pulumi.Input[list]) – Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
  • key_name (pulumi.Input[str]) – The key name of the Key Pair to use for the instance; which can be managed using the ec2.KeyPair resource.
  • monitoring (pulumi.Input[bool]) – If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
  • network_interfaces (pulumi.Input[list]) – Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
  • placement_group (pulumi.Input[str]) – The Placement Group to start the instance in.
  • private_ip (pulumi.Input[str]) – Private IP address to associate with the instance in a VPC.
  • root_block_device (pulumi.Input[dict]) – Customize details about the root block device of the instance. See Block Devices below for details.
  • security_groups (pulumi.Input[list]) – A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
  • source_dest_check (pulumi.Input[bool]) – Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
  • subnet_id (pulumi.Input[str]) – The VPC Subnet ID to launch in.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • tenancy (pulumi.Input[str]) – 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 import-instance command.
  • user_data (pulumi.Input[str]) – The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.
  • user_data_base64 (pulumi.Input[str]) – Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
  • volume_tags (pulumi.Input[dict]) – A mapping of tags to assign to the devices created by the instance at launch time.
  • vpc_security_group_ids (pulumi.Input[list]) – A list of security group IDs to associate with.
ami = None

The AMI to use for the instance.

arn = None

The ARN of the instance.

associate_public_ip_address = None

Associate a public ip address with an instance in a VPC. Boolean value.

availability_zone = None

The AZ to start the instance in.

cpu_core_count = None

Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options CPU Cores and Threads Per CPU Core Per Instance Type - specifying this option for unsupported instance types will return an error from the EC2 API.

cpu_threads_per_core = None

If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See Optimizing CPU Options for more information.

credit_specification = None

Customize the credit specification of the instance. See Credit Specification below for more details.

disable_api_termination = None

If true, enables EC2 Instance Termination Protection

ebs_block_devices = None

Additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection.

ebs_optimized = None

If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the EBS Optimized section of the AWS User Guide for more information.

ephemeral_block_devices = None

Customize Ephemeral (also known as “Instance Store”) volumes on the instance. See Block Devices below for details.

get_password_data = None

If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the password_data attribute. See GetPasswordData for more information.

host_id = None

The Id of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.

iam_instance_profile = None

The IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the EC2 documentation, notably iam:PassRole.

  • ipv6_address_count- (Optional) A number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet.
instance_initiated_shutdown_behavior = None

Shutdown behavior for the instance. Amazon defaults this to stop for EBS-backed instances and terminate for instance-store instances. Cannot be set on instance-store instances. See Shutdown Behavior for more information.

instance_state = None

The state of the instance. One of: pending, running, shutting-down, terminated, stopping, stopped. See Instance Lifecycle for more information.

instance_type = None

The type of instance to start. Updates to this field will trigger a stop/start of the EC2 instance.

ipv6_addresses = None

Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface

key_name = None

The key name of the Key Pair to use for the instance; which can be managed using the ec2.KeyPair resource.

monitoring = None

If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)

network_interfaces = None

Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.

password_data = None

Base-64 encoded encrypted password data for the instance. Useful for getting the administrator password for instances running Microsoft Windows. This attribute is only exported if get_password_data is true. Note that this encrypted value will be stored in the state file, as with all exported attributes. See GetPasswordData for more information.

placement_group = None

The Placement Group to start the instance in.

primary_network_interface_id = None

The ID of the instance’s primary network interface.

private_dns = None

The private DNS name assigned to the instance. Can only be used inside the Amazon EC2, and only available if you’ve enabled DNS hostnames for your VPC

private_ip = None

Private IP address to associate with the instance in a VPC.

public_dns = None

The public DNS name assigned to the instance. For EC2-VPC, this is only available if you’ve enabled DNS hostnames for your VPC

public_ip = None

The public IP address assigned to the instance, if applicable. NOTE: If you are using an ``ec2.Eip` <https://www.terraform.io/docs/providers/aws/r/eip.html>`_ with your instance, you should refer to the EIP’s address directly and not use public_ip, as this field will change after the EIP is attached.

root_block_device = None

Customize details about the root block device of the instance. See Block Devices below for details.

security_groups = None

A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.

source_dest_check = None

Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.

subnet_id = None

The VPC Subnet ID to launch in.

tags = None

A mapping of tags to assign to the resource.

tenancy = None

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 import-instance command.

user_data = None

The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.

user_data_base64 = None

Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.

volume_tags = None

A mapping of tags to assign to the devices created by the instance at launch time.

vpc_security_group_ids = None

A list of security group IDs to associate with.

static get(resource_name, id, opts=None, ami=None, arn=None, associate_public_ip_address=None, availability_zone=None, cpu_core_count=None, cpu_threads_per_core=None, credit_specification=None, disable_api_termination=None, ebs_block_devices=None, ebs_optimized=None, ephemeral_block_devices=None, get_password_data=None, host_id=None, iam_instance_profile=None, instance_initiated_shutdown_behavior=None, instance_state=None, instance_type=None, ipv6_address_count=None, ipv6_addresses=None, key_name=None, monitoring=None, network_interfaces=None, password_data=None, placement_group=None, primary_network_interface_id=None, private_dns=None, private_ip=None, public_dns=None, public_ip=None, root_block_device=None, security_groups=None, source_dest_check=None, subnet_id=None, tags=None, tenancy=None, user_data=None, user_data_base64=None, volume_tags=None, vpc_security_group_ids=None)

Get an existing Instance resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] ami: The AMI to use for the instance. :param pulumi.Input[str] arn: The ARN of the instance. :param pulumi.Input[bool] associate_public_ip_address: Associate a public ip address with an instance in a VPC. Boolean value. :param pulumi.Input[str] availability_zone: The AZ to start the instance in. :param pulumi.Input[float] cpu_core_count: Sets the number of CPU cores for an instance. This option is

only supported on creation of instance type that support CPU Options CPU Cores and Threads Per CPU Core Per Instance Type - specifying this option for unsupported instance types will return an error from the EC2 API.
Parameters:
  • cpu_threads_per_core (pulumi.Input[float]) –

    If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See Optimizing CPU Options for more information.

  • credit_specification (pulumi.Input[dict]) – Customize the credit specification of the instance. See Credit Specification below for more details.
  • disable_api_termination (pulumi.Input[bool]) –

    If true, enables EC2 Instance Termination Protection

  • ebs_block_devices (pulumi.Input[list]) – Additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection.
  • ebs_optimized (pulumi.Input[bool]) –

    If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the EBS Optimized section of the AWS User Guide for more information.

  • ephemeral_block_devices (pulumi.Input[list]) – Customize Ephemeral (also known as “Instance Store”) volumes on the instance. See Block Devices below for details.
  • get_password_data (pulumi.Input[bool]) –

    If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the password_data attribute. See GetPasswordData for more information.

  • host_id (pulumi.Input[str]) – The Id of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
  • iam_instance_profile (pulumi.Input[str]) –

    The IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the EC2 documentation, notably iam:PassRole.

Parameters:
  • instance_initiated_shutdown_behavior (pulumi.Input[str]) –

    Shutdown behavior for the instance. Amazon defaults this to stop for EBS-backed instances and terminate for instance-store instances. Cannot be set on instance-store instances. See Shutdown Behavior for more information.

  • instance_state (pulumi.Input[str]) –

    The state of the instance. One of: pending, running, shutting-down, terminated, stopping, stopped. See Instance Lifecycle for more information.

  • instance_type (pulumi.Input[str]) – The type of instance to start. Updates to this field will trigger a stop/start of the EC2 instance.
  • ipv6_addresses (pulumi.Input[list]) – Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
  • key_name (pulumi.Input[str]) – The key name of the Key Pair to use for the instance; which can be managed using the ec2.KeyPair resource.
  • monitoring (pulumi.Input[bool]) – If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
  • network_interfaces (pulumi.Input[list]) – Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
  • password_data (pulumi.Input[str]) –

    Base-64 encoded encrypted password data for the instance. Useful for getting the administrator password for instances running Microsoft Windows. This attribute is only exported if get_password_data is true. Note that this encrypted value will be stored in the state file, as with all exported attributes. See GetPasswordData for more information.

  • placement_group (pulumi.Input[str]) – The Placement Group to start the instance in.
  • primary_network_interface_id (pulumi.Input[str]) – The ID of the instance’s primary network interface.
  • private_dns (pulumi.Input[str]) – The private DNS name assigned to the instance. Can only be used inside the Amazon EC2, and only available if you’ve enabled DNS hostnames for your VPC
  • private_ip (pulumi.Input[str]) – Private IP address to associate with the instance in a VPC.
  • public_dns (pulumi.Input[str]) – The public DNS name assigned to the instance. For EC2-VPC, this is only available if you’ve enabled DNS hostnames for your VPC
  • public_ip (pulumi.Input[str]) – The public IP address assigned to the instance, if applicable. NOTE: If you are using an ``ec2.Eip` <https://www.terraform.io/docs/providers/aws/r/eip.html>`_ with your instance, you should refer to the EIP’s address directly and not use public_ip, as this field will change after the EIP is attached.
  • root_block_device (pulumi.Input[dict]) – Customize details about the root block device of the instance. See Block Devices below for details.
  • security_groups (pulumi.Input[list]) – A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
  • source_dest_check (pulumi.Input[bool]) – Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
  • subnet_id (pulumi.Input[str]) – The VPC Subnet ID to launch in.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • tenancy (pulumi.Input[str]) – 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 import-instance command.
  • user_data (pulumi.Input[str]) – The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.
  • user_data_base64 (pulumi.Input[str]) – Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
  • volume_tags (pulumi.Input[dict]) – A mapping of tags to assign to the devices created by the instance at launch time.
  • vpc_security_group_ids (pulumi.Input[list]) – A list of security group IDs to associate with.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.InternetGateway(resource_name, opts=None, tags=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to create a VPC Internet Gateway.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID to create in.
owner_id = None

The ID of the AWS account that owns the internet gateway.

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The VPC ID to create in.

static get(resource_name, id, opts=None, owner_id=None, tags=None, vpc_id=None)

Get an existing InternetGateway resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] owner_id: The ID of the AWS account that owns the internet gateway. :param pulumi.Input[dict] tags: A mapping of tags to assign to the resource. :param pulumi.Input[str] vpc_id: The VPC ID to create in.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.KeyPair(resource_name, opts=None, key_name=None, key_name_prefix=None, public_key=None, __props__=None, __name__=None, __opts__=None)

Provides an EC2 key pair resource. A key pair is used to control login access to EC2 instances.

Currently this resource requires an existing user-supplied key pair. This key pair’s public key will be registered with AWS to allow logging-in to EC2 instances.

When importing an existing key pair the public key material may be in any format supported by AWS. Supported formats (per the AWS documentation) are:

  • OpenSSH public key format (the format in ~/.ssh/authorized_keys)
  • Base64 encoded DER format
  • SSH public key file format as specified in RFC4716
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • key_name (pulumi.Input[str]) – The name for the key pair.
  • key_name_prefix (pulumi.Input[str]) – Creates a unique name beginning with the specified prefix. Conflicts with key_name.
  • public_key (pulumi.Input[str]) – The public key material.
fingerprint = None

The MD5 public key fingerprint as specified in section 4 of RFC 4716.

key_name = None

The name for the key pair.

key_name_prefix = None

Creates a unique name beginning with the specified prefix. Conflicts with key_name.

public_key = None

The public key material.

static get(resource_name, id, opts=None, fingerprint=None, key_name=None, key_name_prefix=None, public_key=None)

Get an existing KeyPair resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] fingerprint: The MD5 public key fingerprint as specified in section 4 of RFC 4716. :param pulumi.Input[str] key_name: The name for the key pair. :param pulumi.Input[str] key_name_prefix: Creates a unique name beginning with the specified prefix. Conflicts with key_name. :param pulumi.Input[str] public_key: The public key material.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.LaunchConfiguration(resource_name, opts=None, associate_public_ip_address=None, ebs_block_devices=None, ebs_optimized=None, enable_monitoring=None, ephemeral_block_devices=None, iam_instance_profile=None, image_id=None, instance_type=None, key_name=None, name=None, name_prefix=None, placement_tenancy=None, root_block_device=None, security_groups=None, spot_price=None, user_data=None, user_data_base64=None, vpc_classic_link_id=None, vpc_classic_link_security_groups=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to create a new launch configuration, used for autoscaling groups.

Each of the *_block_device attributes controls a portion of the AWS Launch Configuration’s “Block Device Mapping”. It’s a good idea to familiarize yourself with AWS’s Block Device Mapping docs to understand the implications of using these attributes.

The root_block_device mapping supports the following:

  • volume_type - (Optional) The type of volume. Can be "standard", "gp2", or "io1". (Default: "standard").
  • volume_size - (Optional) The size of the volume in gigabytes.
  • iops - (Optional) The amount of provisioned IOPS. This must be set with a volume_type of "io1".
  • delete_on_termination - (Optional) Whether the volume should be destroyed on instance termination (Default: true).
  • encrypted - (Optional) Whether the volume should be encrypted or not. (Default: false).

Modifying any of the root_block_device settings requires resource replacement.

Each ebs_block_device supports the following:

  • device_name - (Required) The name of the device to mount.
  • snapshot_id - (Optional) The Snapshot ID to mount.
  • volume_type - (Optional) The type of volume. Can be "standard", "gp2", or "io1". (Default: "standard").
  • volume_size - (Optional) The size of the volume in gigabytes.
  • iops - (Optional) The amount of provisioned IOPS. This must be set with a volume_type of "io1".
  • delete_on_termination - (Optional) Whether the volume should be destroyed on instance termination (Default: true).
  • encrypted - (Optional) Whether the volume should be encrypted or not. Do not use this option if you are using snapshot_id as the encrypted flag will be determined by the snapshot. (Default: false).

Modifying any ebs_block_device currently requires resource replacement.

Each ephemeral_block_device supports the following:

  • device_name - The name of the block device to mount on the instance.
  • virtual_name - The Instance Store Device Name (e.g. "ephemeral0")

Each AWS Instance type has a different set of Instance Store block devices available for attachment. AWS publishes a list of which ephemeral devices are available on each type. The devices are always identified by the virtual_name in the format "ephemeral{0..N}".

NOTE: Changes to *_block_device configuration of existing resources cannot currently be detected by this provider. After updating to block device configuration, resource recreation can be manually triggered by using the ``taint` command <https://www.terraform.io/docs/commands/taint.html>`_.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • associate_public_ip_address (pulumi.Input[bool]) – Associate a public ip address with an instance in a VPC.
  • ebs_block_devices (pulumi.Input[list]) – Additional EBS block devices to attach to the instance. See Block Devices below for details.
  • ebs_optimized (pulumi.Input[bool]) – If true, the launched EC2 instance will be EBS-optimized.
  • enable_monitoring (pulumi.Input[bool]) – Enables/disables detailed monitoring. This is enabled by default.
  • ephemeral_block_devices (pulumi.Input[list]) – Customize Ephemeral (also known as “Instance Store”) volumes on the instance. See Block Devices below for details.
  • iam_instance_profile (pulumi.Input[str]) – The name attribute of the IAM instance profile to associate with launched instances.
  • image_id (pulumi.Input[str]) – The EC2 image ID to launch.
  • instance_type (pulumi.Input[str]) – The size of instance to launch.
  • key_name (pulumi.Input[str]) – The key name that should be used for the instance.
  • name (pulumi.Input[str]) – The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name.
  • name_prefix (pulumi.Input[str]) – Creates a unique name beginning with the specified prefix. Conflicts with name.
  • placement_tenancy (pulumi.Input[str]) – The tenancy of the instance. Valid values are "default" or "dedicated", see AWS’s Create Launch Configuration for more details
  • root_block_device (pulumi.Input[dict]) – Customize details about the root block device of the instance. See Block Devices below for details.
  • security_groups (pulumi.Input[list]) – A list of associated security group IDS.
  • spot_price (pulumi.Input[str]) – The maximum price to use for reserving spot instances.
  • user_data (pulumi.Input[str]) – The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.
  • user_data_base64 (pulumi.Input[str]) – Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
  • vpc_classic_link_id (pulumi.Input[str]) – The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg. vpc-2730681a)
  • vpc_classic_link_security_groups (pulumi.Input[list]) – The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg. sg-46ae3d11).
associate_public_ip_address = None

Associate a public ip address with an instance in a VPC.

ebs_block_devices = None

Additional EBS block devices to attach to the instance. See Block Devices below for details.

ebs_optimized = None

If true, the launched EC2 instance will be EBS-optimized.

enable_monitoring = None

Enables/disables detailed monitoring. This is enabled by default.

ephemeral_block_devices = None

Customize Ephemeral (also known as “Instance Store”) volumes on the instance. See Block Devices below for details.

iam_instance_profile = None

The name attribute of the IAM instance profile to associate with launched instances.

image_id = None

The EC2 image ID to launch.

instance_type = None

The size of instance to launch.

key_name = None

The key name that should be used for the instance.

name = None

The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name.

name_prefix = None

Creates a unique name beginning with the specified prefix. Conflicts with name.

placement_tenancy = None

The tenancy of the instance. Valid values are "default" or "dedicated", see AWS’s Create Launch Configuration for more details

root_block_device = None

Customize details about the root block device of the instance. See Block Devices below for details.

security_groups = None

A list of associated security group IDS.

spot_price = None

The maximum price to use for reserving spot instances.

user_data = None

The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.

user_data_base64 = None

Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.

The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg. vpc-2730681a)

The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg. sg-46ae3d11).

static get(resource_name, id, opts=None, associate_public_ip_address=None, ebs_block_devices=None, ebs_optimized=None, enable_monitoring=None, ephemeral_block_devices=None, iam_instance_profile=None, image_id=None, instance_type=None, key_name=None, name=None, name_prefix=None, placement_tenancy=None, root_block_device=None, security_groups=None, spot_price=None, user_data=None, user_data_base64=None, vpc_classic_link_id=None, vpc_classic_link_security_groups=None)

Get an existing LaunchConfiguration resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[bool] associate_public_ip_address: Associate a public ip address with an instance in a VPC. :param pulumi.Input[list] ebs_block_devices: Additional EBS block devices to attach to the

instance. See Block Devices below for details.
Parameters:
  • ebs_optimized (pulumi.Input[bool]) – If true, the launched EC2 instance will be EBS-optimized.
  • enable_monitoring (pulumi.Input[bool]) – Enables/disables detailed monitoring. This is enabled by default.
  • ephemeral_block_devices (pulumi.Input[list]) – Customize Ephemeral (also known as “Instance Store”) volumes on the instance. See Block Devices below for details.
  • iam_instance_profile (pulumi.Input[str]) – The name attribute of the IAM instance profile to associate with launched instances.
  • image_id (pulumi.Input[str]) – The EC2 image ID to launch.
  • instance_type (pulumi.Input[str]) – The size of instance to launch.
  • key_name (pulumi.Input[str]) – The key name that should be used for the instance.
  • name (pulumi.Input[str]) – The name of the launch configuration. If you leave this blank, this provider will auto-generate a unique name.
  • name_prefix (pulumi.Input[str]) – Creates a unique name beginning with the specified prefix. Conflicts with name.
  • placement_tenancy (pulumi.Input[str]) –

    The tenancy of the instance. Valid values are "default" or "dedicated", see AWS’s Create Launch Configuration for more details

  • root_block_device (pulumi.Input[dict]) – Customize details about the root block device of the instance. See Block Devices below for details.
  • security_groups (pulumi.Input[list]) – A list of associated security group IDS.
  • spot_price (pulumi.Input[str]) – The maximum price to use for reserving spot instances.
  • user_data (pulumi.Input[str]) – The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.
  • user_data_base64 (pulumi.Input[str]) – Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
  • vpc_classic_link_id (pulumi.Input[str]) – The ID of a ClassicLink-enabled VPC. Only applies to EC2-Classic instances. (eg. vpc-2730681a)
  • vpc_classic_link_security_groups (pulumi.Input[list]) – The IDs of one or more security groups for the specified ClassicLink-enabled VPC (eg. sg-46ae3d11).
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.LaunchTemplate(resource_name, opts=None, block_device_mappings=None, capacity_reservation_specification=None, credit_specification=None, description=None, disable_api_termination=None, ebs_optimized=None, elastic_gpu_specifications=None, elastic_inference_accelerator=None, iam_instance_profile=None, image_id=None, instance_initiated_shutdown_behavior=None, instance_market_options=None, instance_type=None, kernel_id=None, key_name=None, license_specifications=None, monitoring=None, name=None, name_prefix=None, network_interfaces=None, placement=None, ram_disk_id=None, security_group_names=None, tag_specifications=None, tags=None, user_data=None, vpc_security_group_ids=None, __props__=None, __name__=None, __opts__=None)

Provides an EC2 launch template resource. Can be used to create instances or auto scaling groups.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • block_device_mappings (pulumi.Input[list]) – Specify volumes to attach to the instance besides the volumes specified by the AMI. See Block Devices below for details.
  • capacity_reservation_specification (pulumi.Input[dict]) – Targeting for EC2 capacity reservations. See Capacity Reservation Specification below for more details.
  • credit_specification (pulumi.Input[dict]) – Customize the credit specification of the instance. See Credit Specification below for more details.
  • description (pulumi.Input[str]) – Description of the launch template.
  • disable_api_termination (pulumi.Input[bool]) –

    If true, enables EC2 Instance Termination Protection

  • ebs_optimized (pulumi.Input[str]) – If true, the launched EC2 instance will be EBS-optimized.
  • elastic_gpu_specifications (pulumi.Input[list]) – The elastic GPU to attach to the instance. See Elastic GPU below for more details.
  • elastic_inference_accelerator (pulumi.Input[dict]) – Configuration block containing an Elastic Inference Accelerator to attach to the instance. See Elastic Inference Accelerator below for more details.
  • iam_instance_profile (pulumi.Input[dict]) – The IAM Instance Profile to launch the instance with. See Instance Profile below for more details.
  • image_id (pulumi.Input[str]) – The AMI from which to launch the instance.
  • instance_initiated_shutdown_behavior (pulumi.Input[str]) – Shutdown behavior for the instance. Can be stop or terminate. (Default: stop).
  • instance_market_options (pulumi.Input[dict]) – The market (purchasing) option for the instance. See Market Options below for details.
  • instance_type (pulumi.Input[str]) – The type of the instance.
  • kernel_id (pulumi.Input[str]) – The kernel ID.
  • key_name (pulumi.Input[str]) – The key name to use for the instance.
  • license_specifications (pulumi.Input[list]) – A list of license specifications to associate with. See License Specification below for more details.
  • monitoring (pulumi.Input[dict]) – The monitoring option for the instance. See Monitoring below for more details.
  • name (pulumi.Input[str]) – The name of the launch template. If you leave this blank, this provider will auto-generate a unique name.
  • name_prefix (pulumi.Input[str]) – Creates a unique name beginning with the specified prefix. Conflicts with name.
  • network_interfaces (pulumi.Input[list]) – Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
  • placement (pulumi.Input[dict]) – The placement of the instance. See Placement below for more details.
  • ram_disk_id (pulumi.Input[str]) – The ID of the RAM disk.
  • security_group_names (pulumi.Input[list]) – A list of security group names to associate with. If you are creating Instances in a VPC, use vpc_security_group_ids instead.
  • tag_specifications (pulumi.Input[list]) – The tags to apply to the resources during launch. See Tag Specifications below for more details.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the launch template.
  • user_data (pulumi.Input[str]) – The Base64-encoded user data to provide when launching the instance.
  • vpc_security_group_ids (pulumi.Input[list]) – A list of security group IDs to associate with.
arn = None

Amazon Resource Name (ARN) of the launch template.

block_device_mappings = None

Specify volumes to attach to the instance besides the volumes specified by the AMI. See Block Devices below for details.

capacity_reservation_specification = None

Targeting for EC2 capacity reservations. See Capacity Reservation Specification below for more details.

credit_specification = None

Customize the credit specification of the instance. See Credit Specification below for more details.

default_version = None

The default version of the launch template.

description = None

Description of the launch template.

disable_api_termination = None

If true, enables EC2 Instance Termination Protection

ebs_optimized = None

If true, the launched EC2 instance will be EBS-optimized.

elastic_gpu_specifications = None

The elastic GPU to attach to the instance. See Elastic GPU below for more details.

elastic_inference_accelerator = None

Configuration block containing an Elastic Inference Accelerator to attach to the instance. See Elastic Inference Accelerator below for more details.

iam_instance_profile = None

The IAM Instance Profile to launch the instance with. See Instance Profile below for more details.

image_id = None

The AMI from which to launch the instance.

instance_initiated_shutdown_behavior = None

Shutdown behavior for the instance. Can be stop or terminate. (Default: stop).

instance_market_options = None

The market (purchasing) option for the instance. See Market Options below for details.

instance_type = None

The type of the instance.

kernel_id = None

The kernel ID.

key_name = None

The key name to use for the instance.

latest_version = None

The latest version of the launch template.

license_specifications = None

A list of license specifications to associate with. See License Specification below for more details.

monitoring = None

The monitoring option for the instance. See Monitoring below for more details.

name = None

The name of the launch template. If you leave this blank, this provider will auto-generate a unique name.

name_prefix = None

Creates a unique name beginning with the specified prefix. Conflicts with name.

network_interfaces = None

Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.

placement = None

The placement of the instance. See Placement below for more details.

ram_disk_id = None

The ID of the RAM disk.

security_group_names = None

A list of security group names to associate with. If you are creating Instances in a VPC, use vpc_security_group_ids instead.

tag_specifications = None

The tags to apply to the resources during launch. See Tag Specifications below for more details.

tags = None

A mapping of tags to assign to the launch template.

user_data = None

The Base64-encoded user data to provide when launching the instance.

vpc_security_group_ids = None

A list of security group IDs to associate with.

static get(resource_name, id, opts=None, arn=None, block_device_mappings=None, capacity_reservation_specification=None, credit_specification=None, default_version=None, description=None, disable_api_termination=None, ebs_optimized=None, elastic_gpu_specifications=None, elastic_inference_accelerator=None, iam_instance_profile=None, image_id=None, instance_initiated_shutdown_behavior=None, instance_market_options=None, instance_type=None, kernel_id=None, key_name=None, latest_version=None, license_specifications=None, monitoring=None, name=None, name_prefix=None, network_interfaces=None, placement=None, ram_disk_id=None, security_group_names=None, tag_specifications=None, tags=None, user_data=None, vpc_security_group_ids=None)

Get an existing LaunchTemplate resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] arn: Amazon Resource Name (ARN) of the launch template. :param pulumi.Input[list] block_device_mappings: Specify volumes to attach to the instance besides the volumes specified by the AMI.

See Block Devices below for details.
Parameters:
  • capacity_reservation_specification (pulumi.Input[dict]) – Targeting for EC2 capacity reservations. See Capacity Reservation Specification below for more details.
  • credit_specification (pulumi.Input[dict]) – Customize the credit specification of the instance. See Credit Specification below for more details.
  • default_version (pulumi.Input[float]) – The default version of the launch template.
  • description (pulumi.Input[str]) – Description of the launch template.
  • disable_api_termination (pulumi.Input[bool]) –

    If true, enables EC2 Instance Termination Protection

  • ebs_optimized (pulumi.Input[str]) – If true, the launched EC2 instance will be EBS-optimized.
  • elastic_gpu_specifications (pulumi.Input[list]) – The elastic GPU to attach to the instance. See Elastic GPU below for more details.
  • elastic_inference_accelerator (pulumi.Input[dict]) – Configuration block containing an Elastic Inference Accelerator to attach to the instance. See Elastic Inference Accelerator below for more details.
  • iam_instance_profile (pulumi.Input[dict]) – The IAM Instance Profile to launch the instance with. See Instance Profile below for more details.
  • image_id (pulumi.Input[str]) – The AMI from which to launch the instance.
  • instance_initiated_shutdown_behavior (pulumi.Input[str]) – Shutdown behavior for the instance. Can be stop or terminate. (Default: stop).
  • instance_market_options (pulumi.Input[dict]) – The market (purchasing) option for the instance. See Market Options below for details.
  • instance_type (pulumi.Input[str]) – The type of the instance.
  • kernel_id (pulumi.Input[str]) – The kernel ID.
  • key_name (pulumi.Input[str]) – The key name to use for the instance.
  • latest_version (pulumi.Input[float]) – The latest version of the launch template.
  • license_specifications (pulumi.Input[list]) – A list of license specifications to associate with. See License Specification below for more details.
  • monitoring (pulumi.Input[dict]) – The monitoring option for the instance. See Monitoring below for more details.
  • name (pulumi.Input[str]) – The name of the launch template. If you leave this blank, this provider will auto-generate a unique name.
  • name_prefix (pulumi.Input[str]) – Creates a unique name beginning with the specified prefix. Conflicts with name.
  • network_interfaces (pulumi.Input[list]) – Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
  • placement (pulumi.Input[dict]) – The placement of the instance. See Placement below for more details.
  • ram_disk_id (pulumi.Input[str]) – The ID of the RAM disk.
  • security_group_names (pulumi.Input[list]) – A list of security group names to associate with. If you are creating Instances in a VPC, use vpc_security_group_ids instead.
  • tag_specifications (pulumi.Input[list]) – The tags to apply to the resources during launch. See Tag Specifications below for more details.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the launch template.
  • user_data (pulumi.Input[str]) – The Base64-encoded user data to provide when launching the instance.
  • vpc_security_group_ids (pulumi.Input[list]) – A list of security group IDs to associate with.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.MainRouteTableAssociation(resource_name, opts=None, route_table_id=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource for managing the main routing table of a VPC.

On VPC creation, the AWS API always creates an initial Main Route Table. This resource records the ID of that Route Table under original_route_table_id. The “Delete” action for a main_route_table_association consists of resetting this original table as the Main Route Table for the VPC. You’ll see this additional Route Table in the AWS console; it must remain intact in order for the main_route_table_association delete to work properly.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • route_table_id (pulumi.Input[str]) – The ID of the Route Table to set as the new main route table for the target VPC
  • vpc_id (pulumi.Input[str]) – The ID of the VPC whose main route table should be set
original_route_table_id = None

Used internally, see Notes below

route_table_id = None

The ID of the Route Table to set as the new main route table for the target VPC

vpc_id = None

The ID of the VPC whose main route table should be set

static get(resource_name, id, opts=None, original_route_table_id=None, route_table_id=None, vpc_id=None)

Get an existing MainRouteTableAssociation resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] original_route_table_id: Used internally, see Notes below :param pulumi.Input[str] route_table_id: The ID of the Route Table to set as the new

main route table for the target VPC
Parameters:vpc_id (pulumi.Input[str]) – The ID of the VPC whose main route table should be set
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.NatGateway(resource_name, opts=None, allocation_id=None, subnet_id=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to create a VPC NAT Gateway.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • allocation_id (pulumi.Input[str]) – The Allocation ID of the Elastic IP address for the gateway.
  • subnet_id (pulumi.Input[str]) – The Subnet ID of the subnet in which to place the gateway.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
allocation_id = None

The Allocation ID of the Elastic IP address for the gateway.

network_interface_id = None

The ENI ID of the network interface created by the NAT gateway.

private_ip = None

The private IP address of the NAT Gateway.

public_ip = None

The public IP address of the NAT Gateway.

subnet_id = None

The Subnet ID of the subnet in which to place the gateway.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, allocation_id=None, network_interface_id=None, private_ip=None, public_ip=None, subnet_id=None, tags=None)

Get an existing NatGateway resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] allocation_id: The Allocation ID of the Elastic IP address for the gateway. :param pulumi.Input[str] network_interface_id: The ENI ID of the network interface created by the NAT gateway. :param pulumi.Input[str] private_ip: The private IP address of the NAT Gateway. :param pulumi.Input[str] public_ip: The public IP address of the NAT Gateway. :param pulumi.Input[str] subnet_id: The Subnet ID of the subnet in which to place the gateway. :param pulumi.Input[dict] tags: A mapping of tags to assign to the resource.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.NetworkAcl(resource_name, opts=None, egress=None, ingress=None, subnet_ids=None, tags=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides an network ACL resource. You might set up network ACLs with rules similar to your security groups in order to add an additional layer of security to your VPC.

NOTE on Network ACLs and Network ACL Rules: This provider currently provides both a standalone Network ACL Rule resource and a Network ACL resource with rules defined in-line. At this time you cannot use a Network ACL with in-line rules in conjunction with any Network ACL Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • egress (pulumi.Input[list]) –

    Specifies an egress rule. Parameters defined below. This argument is processed in attribute-as-blocks mode.

  • ingress (pulumi.Input[list]) –

    Specifies an ingress rule. Parameters defined below. This argument is processed in attribute-as-blocks mode.

  • subnet_ids (pulumi.Input[list]) – A list of Subnet IDs to apply the ACL to
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The ID of the associated VPC.
egress = None

Specifies an egress rule. Parameters defined below. This argument is processed in attribute-as-blocks mode.

ingress = None

Specifies an ingress rule. Parameters defined below. This argument is processed in attribute-as-blocks mode.

owner_id = None

The ID of the AWS account that owns the network ACL.

subnet_ids = None

A list of Subnet IDs to apply the ACL to

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The ID of the associated VPC.

static get(resource_name, id, opts=None, egress=None, ingress=None, owner_id=None, subnet_ids=None, tags=None, vpc_id=None)

Get an existing NetworkAcl resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[list] egress: Specifies an egress rule. Parameters defined below.

This argument is processed in attribute-as-blocks mode.
Parameters:
  • ingress (pulumi.Input[list]) –

    Specifies an ingress rule. Parameters defined below. This argument is processed in attribute-as-blocks mode.

  • owner_id (pulumi.Input[str]) – The ID of the AWS account that owns the network ACL.
  • subnet_ids (pulumi.Input[list]) – A list of Subnet IDs to apply the ACL to
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The ID of the associated VPC.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.NetworkAclRule(resource_name, opts=None, cidr_block=None, egress=None, from_port=None, icmp_code=None, icmp_type=None, ipv6_cidr_block=None, network_acl_id=None, protocol=None, rule_action=None, rule_number=None, to_port=None, __props__=None, __name__=None, __opts__=None)

Creates an entry (a rule) in a network ACL with the specified rule number.

NOTE on Network ACLs and Network ACL Rules: This provider currently provides both a standalone Network ACL Rule resource and a Network ACL resource with rules defined in-line. At this time you cannot use a Network ACL with in-line rules in conjunction with any Network ACL Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • cidr_block (pulumi.Input[str]) – The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24 ).
  • egress (pulumi.Input[bool]) – Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet). Default false.
  • from_port (pulumi.Input[float]) – The from port to match.
  • icmp_code (pulumi.Input[str]) – ICMP protocol: The ICMP code. Required if specifying ICMP for the protocol. e.g. -1
  • icmp_type (pulumi.Input[str]) – ICMP protocol: The ICMP type. Required if specifying ICMP for the protocol. e.g. -1
  • ipv6_cidr_block (pulumi.Input[str]) – The IPv6 CIDR block to allow or deny.
  • network_acl_id (pulumi.Input[str]) – The ID of the network ACL.
  • protocol (pulumi.Input[str]) – The protocol. A value of -1 means all protocols.
  • rule_action (pulumi.Input[str]) – Indicates whether to allow or deny the traffic that matches the rule. Accepted values: allow | deny
  • rule_number (pulumi.Input[float]) – The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.
  • to_port (pulumi.Input[float]) – The to port to match.
cidr_block = None

The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24 ).

egress = None

Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet). Default false.

from_port = None

The from port to match.

icmp_code = None

ICMP protocol: The ICMP code. Required if specifying ICMP for the protocol. e.g. -1

icmp_type = None

ICMP protocol: The ICMP type. Required if specifying ICMP for the protocol. e.g. -1

ipv6_cidr_block = None

The IPv6 CIDR block to allow or deny.

network_acl_id = None

The ID of the network ACL.

protocol = None

The protocol. A value of -1 means all protocols.

rule_action = None

Indicates whether to allow or deny the traffic that matches the rule. Accepted values: allow | deny

rule_number = None

The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.

to_port = None

The to port to match.

static get(resource_name, id, opts=None, cidr_block=None, egress=None, from_port=None, icmp_code=None, icmp_type=None, ipv6_cidr_block=None, network_acl_id=None, protocol=None, rule_action=None, rule_number=None, to_port=None)

Get an existing NetworkAclRule resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] cidr_block: The network range to allow or deny, in CIDR notation (for example 172.16.0.0/24 ). :param pulumi.Input[bool] egress: Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet). Default false. :param pulumi.Input[float] from_port: The from port to match. :param pulumi.Input[str] icmp_code: ICMP protocol: The ICMP code. Required if specifying ICMP for the protocol. e.g. -1 :param pulumi.Input[str] icmp_type: ICMP protocol: The ICMP type. Required if specifying ICMP for the protocol. e.g. -1 :param pulumi.Input[str] ipv6_cidr_block: The IPv6 CIDR block to allow or deny. :param pulumi.Input[str] network_acl_id: The ID of the network ACL. :param pulumi.Input[str] protocol: The protocol. A value of -1 means all protocols. :param pulumi.Input[str] rule_action: Indicates whether to allow or deny the traffic that matches the rule. Accepted values: allow | deny :param pulumi.Input[float] rule_number: The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number. :param pulumi.Input[float] to_port: The to port to match.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.NetworkInterface(resource_name, opts=None, attachments=None, description=None, private_ip=None, private_ips=None, private_ips_count=None, security_groups=None, source_dest_check=None, subnet_id=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides an Elastic network interface (ENI) resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • attachments (pulumi.Input[list]) – Block to define the attachment of the ENI. Documented below.
  • description (pulumi.Input[str]) – A description for the network interface.
  • private_ips (pulumi.Input[list]) – List of private IPs to assign to the ENI.
  • private_ips_count (pulumi.Input[float]) – Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.
  • security_groups (pulumi.Input[list]) – List of security group IDs to assign to the ENI.
  • source_dest_check (pulumi.Input[bool]) – Whether to enable source destination checking for the ENI. Default true.
  • subnet_id (pulumi.Input[str]) – Subnet ID to create the ENI in.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
attachments = None

Block to define the attachment of the ENI. Documented below.

description = None

A description for the network interface.

private_ips = None

List of private IPs to assign to the ENI.

private_ips_count = None

Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default.

security_groups = None

List of security group IDs to assign to the ENI.

source_dest_check = None

Whether to enable source destination checking for the ENI. Default true.

subnet_id = None

Subnet ID to create the ENI in.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, attachments=None, description=None, private_dns_name=None, private_ip=None, private_ips=None, private_ips_count=None, security_groups=None, source_dest_check=None, subnet_id=None, tags=None)

Get an existing NetworkInterface resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[list] attachments: Block to define the attachment of the ENI. Documented below. :param pulumi.Input[str] description: A description for the network interface. :param pulumi.Input[list] private_ips: List of private IPs to assign to the ENI. :param pulumi.Input[float] private_ips_count: Number of secondary private IPs to assign to the ENI. The total number of private IPs will be 1 + private_ips_count, as a primary private IP will be assiged to an ENI by default. :param pulumi.Input[list] security_groups: List of security group IDs to assign to the ENI. :param pulumi.Input[bool] source_dest_check: Whether to enable source destination checking for the ENI. Default true. :param pulumi.Input[str] subnet_id: Subnet ID to create the ENI in. :param pulumi.Input[dict] tags: A mapping of tags to assign to the resource.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.NetworkInterfaceAttachment(resource_name, opts=None, device_index=None, instance_id=None, network_interface_id=None, __props__=None, __name__=None, __opts__=None)

Attach an Elastic network interface (ENI) resource with EC2 instance.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • device_index (pulumi.Input[float]) – Network interface index (int).
  • instance_id (pulumi.Input[str]) – Instance ID to attach.
  • network_interface_id (pulumi.Input[str]) – ENI ID to attach.
attachment_id = None

The ENI Attachment ID.

device_index = None

Network interface index (int).

instance_id = None

Instance ID to attach.

network_interface_id = None

ENI ID to attach.

status = None

The status of the Network Interface Attachment.

static get(resource_name, id, opts=None, attachment_id=None, device_index=None, instance_id=None, network_interface_id=None, status=None)

Get an existing NetworkInterfaceAttachment resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] attachment_id: The ENI Attachment ID. :param pulumi.Input[float] device_index: Network interface index (int). :param pulumi.Input[str] instance_id: Instance ID to attach. :param pulumi.Input[str] network_interface_id: ENI ID to attach. :param pulumi.Input[str] status: The status of the Network Interface Attachment.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.NetworkInterfaceSecurityGroupAttachment(resource_name, opts=None, network_interface_id=None, security_group_id=None, __props__=None, __name__=None, __opts__=None)

This resource attaches a security group to an Elastic Network Interface (ENI). It can be used to attach a security group to any existing ENI, be it a secondary ENI or one attached as the primary interface on an instance.

NOTE on instances, interfaces, and security groups: This provider currently provides the capability to assign security groups via the ``ec2.Instance` </docs/providers/aws/d/instance.html>`_ and the ``ec2.NetworkInterface` </docs/providers/aws/r/network_interface.html>`_ resources. Using this resource in conjunction with security groups provided in-line in those resources will cause conflicts, and will lead to spurious diffs and undefined behavior - please use one or the other.

There are no outputs for this resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • network_interface_id (pulumi.Input[str]) – The ID of the network interface to attach to.
  • security_group_id (pulumi.Input[str]) – The ID of the security group.
network_interface_id = None

The ID of the network interface to attach to.

security_group_id = None

The ID of the security group.

static get(resource_name, id, opts=None, network_interface_id=None, security_group_id=None)

Get an existing NetworkInterfaceSecurityGroupAttachment resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] network_interface_id: The ID of the network interface to attach to. :param pulumi.Input[str] security_group_id: The ID of the security group.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.PeeringConnectionOptions(resource_name, opts=None, accepter=None, requester=None, vpc_peering_connection_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage VPC peering connection options.

NOTE on VPC Peering Connections and VPC Peering Connection Options: This provider provides both a standalone VPC Peering Connection Options and a VPC Peering Connection resource with accepter and requester attributes. Do not manage options for the same VPC peering connection in both a VPC Peering Connection resource and a VPC Peering Connection Options resource. Doing so will cause a conflict of options and will overwrite the options. Using a VPC Peering Connection Options resource decouples management of the connection options from management of the VPC Peering Connection and allows options to be set correctly in cross-account scenarios.

Basic usage:

Basic cross-account usage:

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • accepter (pulumi.Input[dict]) – An optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that accepts the peering connection (a maximum of one).
  • requester (pulumi.Input[dict]) – A optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that requests the peering connection (a maximum of one).
  • vpc_peering_connection_id (pulumi.Input[str]) – The ID of the requester VPC peering connection.
accepter = None

An optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that accepts the peering connection (a maximum of one).

requester = None

A optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that requests the peering connection (a maximum of one).

vpc_peering_connection_id = None

The ID of the requester VPC peering connection.

static get(resource_name, id, opts=None, accepter=None, requester=None, vpc_peering_connection_id=None)

Get an existing PeeringConnectionOptions resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[dict] accepter: An optional configuration block that allows for [VPC Peering Connection]

(http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that accepts the peering connection (a maximum of one).
Parameters:
  • requester (pulumi.Input[dict]) – A optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that requests the peering connection (a maximum of one).
  • vpc_peering_connection_id (pulumi.Input[str]) – The ID of the requester VPC peering connection.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.PlacementGroup(resource_name, opts=None, name=None, strategy=None, __props__=None, __name__=None, __opts__=None)

Provides an EC2 placement group. Read more about placement groups in AWS Docs.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • name (pulumi.Input[str]) – The name of the placement group.
  • strategy (pulumi.Input[str]) – The placement strategy.
name = None

The name of the placement group.

strategy = None

The placement strategy.

static get(resource_name, id, opts=None, name=None, strategy=None)

Get an existing PlacementGroup resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] name: The name of the placement group. :param pulumi.Input[str] strategy: The placement strategy.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.ProxyProtocolPolicy(resource_name, opts=None, instance_ports=None, load_balancer=None, __props__=None, __name__=None, __opts__=None)

Provides a proxy protocol policy, which allows an ELB to carry a client connection information to a backend.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • instance_ports (pulumi.Input[list]) – List of instance ports to which the policy should be applied. This can be specified if the protocol is SSL or TCP.
  • load_balancer (pulumi.Input[str]) – The load balancer to which the policy should be attached.
instance_ports = None

List of instance ports to which the policy should be applied. This can be specified if the protocol is SSL or TCP.

load_balancer = None

The load balancer to which the policy should be attached.

static get(resource_name, id, opts=None, instance_ports=None, load_balancer=None)

Get an existing ProxyProtocolPolicy resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[list] instance_ports: List of instance ports to which the policy

should be applied. This can be specified if the protocol is SSL or TCP.
Parameters:load_balancer (pulumi.Input[str]) – The load balancer to which the policy should be attached.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.Route(resource_name, opts=None, destination_cidr_block=None, destination_ipv6_cidr_block=None, egress_only_gateway_id=None, gateway_id=None, instance_id=None, nat_gateway_id=None, network_interface_id=None, route_table_id=None, transit_gateway_id=None, vpc_peering_connection_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to create a routing table entry (a route) in a VPC routing table.

NOTE on Route Tables and Routes: This provider currently provides both a standalone Route resource and a Route Table resource with routes defined in-line. At this time you cannot use a Route Table with in-line routes in conjunction with any Route resources. Doing so will cause a conflict of rule settings and will overwrite rules.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • destination_cidr_block (pulumi.Input[str]) – The destination CIDR block.
  • destination_ipv6_cidr_block (pulumi.Input[str]) – The destination IPv6 CIDR block.
  • egress_only_gateway_id (pulumi.Input[str]) – Identifier of a VPC Egress Only Internet Gateway.
  • gateway_id (pulumi.Input[str]) – Identifier of a VPC internet gateway or a virtual private gateway.
  • instance_id (pulumi.Input[str]) – Identifier of an EC2 instance.
  • nat_gateway_id (pulumi.Input[str]) – Identifier of a VPC NAT gateway.
  • network_interface_id (pulumi.Input[str]) – Identifier of an EC2 network interface.
  • route_table_id (pulumi.Input[str]) – The ID of the routing table.
  • transit_gateway_id (pulumi.Input[str]) – Identifier of an EC2 Transit Gateway.
  • vpc_peering_connection_id (pulumi.Input[str]) – Identifier of a VPC peering connection.
destination_cidr_block = None

The destination CIDR block.

destination_ipv6_cidr_block = None

The destination IPv6 CIDR block.

egress_only_gateway_id = None

Identifier of a VPC Egress Only Internet Gateway.

gateway_id = None

Identifier of a VPC internet gateway or a virtual private gateway.

instance_id = None

Identifier of an EC2 instance.

nat_gateway_id = None

Identifier of a VPC NAT gateway.

network_interface_id = None

Identifier of an EC2 network interface.

route_table_id = None

The ID of the routing table.

transit_gateway_id = None

Identifier of an EC2 Transit Gateway.

vpc_peering_connection_id = None

Identifier of a VPC peering connection.

static get(resource_name, id, opts=None, destination_cidr_block=None, destination_ipv6_cidr_block=None, destination_prefix_list_id=None, egress_only_gateway_id=None, gateway_id=None, instance_id=None, instance_owner_id=None, nat_gateway_id=None, network_interface_id=None, origin=None, route_table_id=None, state=None, transit_gateway_id=None, vpc_peering_connection_id=None)

Get an existing Route resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] destination_cidr_block: The destination CIDR block. :param pulumi.Input[str] destination_ipv6_cidr_block: The destination IPv6 CIDR block. :param pulumi.Input[str] egress_only_gateway_id: Identifier of a VPC Egress Only Internet Gateway. :param pulumi.Input[str] gateway_id: Identifier of a VPC internet gateway or a virtual private gateway. :param pulumi.Input[str] instance_id: Identifier of an EC2 instance. :param pulumi.Input[str] nat_gateway_id: Identifier of a VPC NAT gateway. :param pulumi.Input[str] network_interface_id: Identifier of an EC2 network interface. :param pulumi.Input[str] route_table_id: The ID of the routing table. :param pulumi.Input[str] transit_gateway_id: Identifier of an EC2 Transit Gateway. :param pulumi.Input[str] vpc_peering_connection_id: Identifier of a VPC peering connection.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.RouteTable(resource_name, opts=None, propagating_vgws=None, routes=None, tags=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to create a VPC routing table.

NOTE on Route Tables and Routes: This provider currently provides both a standalone Route resource and a Route Table resource with routes defined in-line. At this time you cannot use a Route Table with in-line routes in conjunction with any Route resources. Doing so will cause a conflict of rule settings and will overwrite rules.

NOTE on ``gateway_id`` and ``nat_gateway_id``: The AWS API is very forgiving with these two attributes and the ec2.RouteTable resource can be created with a NAT ID specified as a Gateway ID attribute. This will lead to a permanent diff between your configuration and statefile, as the API returns the correct parameters in the returned route table. If you’re experiencing constant diffs in your ec2.RouteTable resources, the first thing to check is whether or not you’re specifying a NAT ID instead of a Gateway ID, or vice-versa.

NOTE on ``propagating_vgws`` and the ``ec2.VpnGatewayRoutePropagation`` resource: If the propagating_vgws argument is present, it’s not supported to also define route propagations using ec2.VpnGatewayRoutePropagation, since this resource will delete any propagating gateways not explicitly listed in propagating_vgws. Omit this argument when defining route propagation using the separate resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • propagating_vgws (pulumi.Input[list]) – A list of virtual gateways for propagation.
  • routes (pulumi.Input[list]) –

    A list of route objects. Their keys are documented below. This argument is processed in attribute-as-blocks mode.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID.
owner_id = None

The ID of the AWS account that owns the route table

propagating_vgws = None

A list of virtual gateways for propagation.

routes = None

A list of route objects. Their keys are documented below. This argument is processed in attribute-as-blocks mode.

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The VPC ID.

static get(resource_name, id, opts=None, owner_id=None, propagating_vgws=None, routes=None, tags=None, vpc_id=None)

Get an existing RouteTable resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] owner_id: The ID of the AWS account that owns the route table :param pulumi.Input[list] propagating_vgws: A list of virtual gateways for propagation. :param pulumi.Input[list] routes: A list of route objects. Their keys are documented below. This argument is processed in attribute-as-blocks mode. :param pulumi.Input[dict] tags: A mapping of tags to assign to the resource. :param pulumi.Input[str] vpc_id: The VPC ID.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.RouteTableAssociation(resource_name, opts=None, route_table_id=None, subnet_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to create an association between a subnet and routing table.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • route_table_id (pulumi.Input[str]) – The ID of the routing table to associate with.
  • subnet_id (pulumi.Input[str]) – The subnet ID to create an association.
route_table_id = None

The ID of the routing table to associate with.

subnet_id = None

The subnet ID to create an association.

static get(resource_name, id, opts=None, route_table_id=None, subnet_id=None)

Get an existing RouteTableAssociation resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] route_table_id: The ID of the routing table to associate with. :param pulumi.Input[str] subnet_id: The subnet ID to create an association.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.SecurityGroup(resource_name, opts=None, description=None, egress=None, ingress=None, name=None, name_prefix=None, revoke_rules_on_delete=None, tags=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a security group resource.

NOTE on Security Groups and Security Group Rules: This provider currently provides both a standalone Security Group Rule resource (a single ingress or egress rule), and a Security Group resource with ingress and egress rules defined in-line. At this time you cannot use a Security Group with in-line rules in conjunction with any Security Group Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.

NOTE: Referencing Security Groups across VPC peering has certain restrictions. More information is available in the VPC Peering User Guide.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – The security group description. Defaults to “Managed by Pulumi”. Cannot be “”. NOTE: This field maps to the AWS GroupDescription attribute, for which there is no Update API. If you’d like to classify your security groups in a way that can be updated, use tags.
  • egress (pulumi.Input[list]) –

    Can be specified multiple times for each egress rule. Each egress block supports fields documented below. This argument is processed in attribute-as-blocks mode.

  • ingress (pulumi.Input[list]) –

    Can be specified multiple times for each ingress rule. Each ingress block supports fields documented below. This argument is processed in attribute-as-blocks mode.

  • name (pulumi.Input[str]) – The name of the security group. If omitted, this provider will assign a random, unique name
  • name_prefix (pulumi.Input[str]) – Creates a unique name beginning with the specified prefix. Conflicts with name.
  • revoke_rules_on_delete (pulumi.Input[bool]) – Instruct this provider to revoke all of the Security Groups attached ingress and egress rules before deleting the rule itself. This is normally not needed, however certain AWS services such as Elastic Map Reduce may automatically add required rules to security groups used with the service, and those rules may contain a cyclic dependency that prevent the security groups from being destroyed without removing the dependency first. Default false
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID.
arn = None

The ARN of the security group

description = None

The security group description. Defaults to “Managed by Pulumi”. Cannot be “”. NOTE: This field maps to the AWS GroupDescription attribute, for which there is no Update API. If you’d like to classify your security groups in a way that can be updated, use tags.

egress = None

Can be specified multiple times for each egress rule. Each egress block supports fields documented below. This argument is processed in attribute-as-blocks mode.

ingress = None

Can be specified multiple times for each ingress rule. Each ingress block supports fields documented below. This argument is processed in attribute-as-blocks mode.

name = None

The name of the security group. If omitted, this provider will assign a random, unique name

name_prefix = None

Creates a unique name beginning with the specified prefix. Conflicts with name.

owner_id = None

The owner ID.

revoke_rules_on_delete = None

Instruct this provider to revoke all of the Security Groups attached ingress and egress rules before deleting the rule itself. This is normally not needed, however certain AWS services such as Elastic Map Reduce may automatically add required rules to security groups used with the service, and those rules may contain a cyclic dependency that prevent the security groups from being destroyed without removing the dependency first. Default false

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The VPC ID.

static get(resource_name, id, opts=None, arn=None, description=None, egress=None, ingress=None, name=None, name_prefix=None, owner_id=None, revoke_rules_on_delete=None, tags=None, vpc_id=None)

Get an existing SecurityGroup resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] arn: The ARN of the security group :param pulumi.Input[str] description: The security group description. Defaults to

“Managed by Pulumi”. Cannot be “”. NOTE: This field maps to the AWS GroupDescription attribute, for which there is no Update API. If you’d like to classify your security groups in a way that can be updated, use tags.
Parameters:
  • egress (pulumi.Input[list]) –

    Can be specified multiple times for each egress rule. Each egress block supports fields documented below. This argument is processed in attribute-as-blocks mode.

  • ingress (pulumi.Input[list]) –

    Can be specified multiple times for each ingress rule. Each ingress block supports fields documented below. This argument is processed in attribute-as-blocks mode.

  • name (pulumi.Input[str]) – The name of the security group. If omitted, this provider will assign a random, unique name
  • name_prefix (pulumi.Input[str]) – Creates a unique name beginning with the specified prefix. Conflicts with name.
  • owner_id (pulumi.Input[str]) – The owner ID.
  • revoke_rules_on_delete (pulumi.Input[bool]) – Instruct this provider to revoke all of the Security Groups attached ingress and egress rules before deleting the rule itself. This is normally not needed, however certain AWS services such as Elastic Map Reduce may automatically add required rules to security groups used with the service, and those rules may contain a cyclic dependency that prevent the security groups from being destroyed without removing the dependency first. Default false
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.SecurityGroupRule(resource_name, opts=None, cidr_blocks=None, description=None, from_port=None, ipv6_cidr_blocks=None, prefix_list_ids=None, protocol=None, security_group_id=None, self=None, source_security_group_id=None, to_port=None, type=None, __props__=None, __name__=None, __opts__=None)

Provides a security group rule resource. Represents a single ingress or egress group rule, which can be added to external Security Groups.

NOTE on Security Groups and Security Group Rules: This provider currently provides both a standalone Security Group Rule resource (a single ingress or egress rule), and a Security Group resource with ingress and egress rules defined in-line. At this time you cannot use a Security Group with in-line rules in conjunction with any Security Group Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.

NOTE: Setting protocol = "all" or protocol = -1 with from_port and to_port will result in the EC2 API creating a security group rule with all ports open. This API behavior cannot be controlled by this provider and may generate warnings in the future.

NOTE: Referencing Security Groups across VPC peering has certain restrictions. More information is available in the VPC Peering User Guide.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • cidr_blocks (pulumi.Input[list]) – List of CIDR blocks. Cannot be specified with source_security_group_id.
  • description (pulumi.Input[str]) – Description of the rule.
  • from_port (pulumi.Input[float]) – The start port (or ICMP type number if protocol is “icmp”).
  • ipv6_cidr_blocks (pulumi.Input[list]) – List of IPv6 CIDR blocks.
  • prefix_list_ids (pulumi.Input[list]) – List of prefix list IDs (for allowing access to VPC endpoints). Only valid with egress.
  • protocol (pulumi.Input[str]) – The protocol. If not icmp, tcp, udp, or all use the protocol number
  • security_group_id (pulumi.Input[str]) – The security group to apply this rule to.
  • self (pulumi.Input[bool]) – If true, the security group itself will be added as a source to this ingress rule. Cannot be specified with source_security_group_id.
  • source_security_group_id (pulumi.Input[str]) – The security group id to allow access to/from, depending on the type. Cannot be specified with cidr_blocks and self.
  • to_port (pulumi.Input[float]) – The end port (or ICMP code if protocol is “icmp”).
  • type (pulumi.Input[str]) – The type of rule being created. Valid options are ingress (inbound) or egress (outbound).
cidr_blocks = None

List of CIDR blocks. Cannot be specified with source_security_group_id.

description = None

Description of the rule.

from_port = None

The start port (or ICMP type number if protocol is “icmp”).

ipv6_cidr_blocks = None

List of IPv6 CIDR blocks.

prefix_list_ids = None

List of prefix list IDs (for allowing access to VPC endpoints). Only valid with egress.

protocol = None

The protocol. If not icmp, tcp, udp, or all use the protocol number

security_group_id = None

The security group to apply this rule to.

self = None

If true, the security group itself will be added as a source to this ingress rule. Cannot be specified with source_security_group_id.

source_security_group_id = None

The security group id to allow access to/from, depending on the type. Cannot be specified with cidr_blocks and self.

to_port = None

The end port (or ICMP code if protocol is “icmp”).

type = None

The type of rule being created. Valid options are ingress (inbound) or egress (outbound).

static get(resource_name, id, opts=None, cidr_blocks=None, description=None, from_port=None, ipv6_cidr_blocks=None, prefix_list_ids=None, protocol=None, security_group_id=None, self=None, source_security_group_id=None, to_port=None, type=None)

Get an existing SecurityGroupRule resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[list] cidr_blocks: List of CIDR blocks. Cannot be specified with source_security_group_id. :param pulumi.Input[str] description: Description of the rule. :param pulumi.Input[float] from_port: The start port (or ICMP type number if protocol is “icmp”). :param pulumi.Input[list] ipv6_cidr_blocks: List of IPv6 CIDR blocks. :param pulumi.Input[list] prefix_list_ids: List of prefix list IDs (for allowing access to VPC endpoints).

Only valid with egress.
Parameters:
  • protocol (pulumi.Input[str]) –

    The protocol. If not icmp, tcp, udp, or all use the protocol number

  • security_group_id (pulumi.Input[str]) – The security group to apply this rule to.
  • self (pulumi.Input[bool]) – If true, the security group itself will be added as a source to this ingress rule. Cannot be specified with source_security_group_id.
  • source_security_group_id (pulumi.Input[str]) – The security group id to allow access to/from, depending on the type. Cannot be specified with cidr_blocks and self.
  • to_port (pulumi.Input[float]) – The end port (or ICMP code if protocol is “icmp”).
  • type (pulumi.Input[str]) – The type of rule being created. Valid options are ingress (inbound) or egress (outbound).
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.SnapshotCreateVolumePermission(resource_name, opts=None, account_id=None, snapshot_id=None, __props__=None, __name__=None, __opts__=None)

Adds permission to create volumes off of a given EBS Snapshot.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • account_id (pulumi.Input[str]) – An AWS Account ID to add create volume permissions
  • snapshot_id (pulumi.Input[str]) – A snapshot ID
account_id = None

An AWS Account ID to add create volume permissions

snapshot_id = None

A snapshot ID

static get(resource_name, id, opts=None, account_id=None, snapshot_id=None)

Get an existing SnapshotCreateVolumePermission resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] account_id: An AWS Account ID to add create volume permissions :param pulumi.Input[str] snapshot_id: A snapshot ID

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.SpotDatafeedSubscription(resource_name, opts=None, bucket=None, prefix=None, __props__=None, __name__=None, __opts__=None)
Note: There is only a single subscription allowed per account.

To help you understand the charges for your Spot instances, Amazon EC2 provides a data feed that describes your Spot instance usage and pricing. This data feed is sent to an Amazon S3 bucket that you specify when you subscribe to the data feed.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • bucket (pulumi.Input[str]) – The Amazon S3 bucket in which to store the Spot instance data feed.
  • prefix (pulumi.Input[str]) – Path of folder inside bucket to place spot pricing data.
bucket = None

The Amazon S3 bucket in which to store the Spot instance data feed.

prefix = None

Path of folder inside bucket to place spot pricing data.

static get(resource_name, id, opts=None, bucket=None, prefix=None)

Get an existing SpotDatafeedSubscription resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] bucket: The Amazon S3 bucket in which to store the Spot instance data feed. :param pulumi.Input[str] prefix: Path of folder inside bucket to place spot pricing data.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.SpotFleetRequest(resource_name, opts=None, allocation_strategy=None, excess_capacity_termination_policy=None, fleet_type=None, iam_fleet_role=None, instance_interruption_behaviour=None, instance_pools_to_use_count=None, launch_specifications=None, load_balancers=None, replace_unhealthy_instances=None, spot_price=None, target_capacity=None, target_group_arns=None, terminate_instances_with_expiration=None, valid_from=None, valid_until=None, wait_for_fulfillment=None, __props__=None, __name__=None, __opts__=None)

Provides an EC2 Spot Fleet Request resource. This allows a fleet of Spot instances to be requested on the Spot market.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • allocation_strategy (pulumi.Input[str]) – Indicates how to allocate the target capacity across the Spot pools specified by the Spot fleet request. The default is lowestPrice.
  • excess_capacity_termination_policy (pulumi.Input[str]) – Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.
  • fleet_type (pulumi.Input[str]) – The type of fleet request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. Default is maintain.
  • iam_fleet_role (pulumi.Input[str]) – Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.
  • instance_interruption_behaviour (pulumi.Input[str]) – Indicates whether a Spot instance stops or terminates when it is interrupted. Default is terminate.
  • instance_pools_to_use_count (pulumi.Input[float]) – The number of Spot pools across which to allocate your target Spot capacity. Valid only when allocation_strategy is set to lowestPrice. Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.
  • launch_specifications (pulumi.Input[list]) – Used to define the launch configuration of the spot-fleet request. Can be specified multiple times to define different bids across different markets and instance types.
  • load_balancers (pulumi.Input[list]) – A list of elastic load balancer names to add to the Spot fleet.
  • replace_unhealthy_instances (pulumi.Input[bool]) – Indicates whether Spot fleet should replace unhealthy instances. Default false.
  • spot_price (pulumi.Input[str]) – The maximum bid price per unit hour.
  • target_capacity (pulumi.Input[float]) – The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.
  • target_group_arns (pulumi.Input[list]) – A list of alb.TargetGroup ARNs, for use with Application Load Balancing.
  • terminate_instances_with_expiration (pulumi.Input[bool]) – Indicates whether running Spot instances should be terminated when the Spot fleet request expires.
  • valid_from (pulumi.Input[str]) – The start date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
  • valid_until (pulumi.Input[str]) –

    The end date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request. Defaults to 24 hours.

  • wait_for_fulfillment (pulumi.Input[bool]) – If set, this provider will wait for the Spot Request to be fulfilled, and will throw an error if the timeout of 10m is reached.
allocation_strategy = None

Indicates how to allocate the target capacity across the Spot pools specified by the Spot fleet request. The default is lowestPrice.

excess_capacity_termination_policy = None

Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.

fleet_type = None

The type of fleet request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. Default is maintain.

iam_fleet_role = None

Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.

instance_interruption_behaviour = None

Indicates whether a Spot instance stops or terminates when it is interrupted. Default is terminate.

instance_pools_to_use_count = None

The number of Spot pools across which to allocate your target Spot capacity. Valid only when allocation_strategy is set to lowestPrice. Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

launch_specifications = None

Used to define the launch configuration of the spot-fleet request. Can be specified multiple times to define different bids across different markets and instance types.

load_balancers = None

A list of elastic load balancer names to add to the Spot fleet.

replace_unhealthy_instances = None

Indicates whether Spot fleet should replace unhealthy instances. Default false.

spot_price = None

The maximum bid price per unit hour.

spot_request_state = None

The state of the Spot fleet request.

target_capacity = None

The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.

target_group_arns = None

A list of alb.TargetGroup ARNs, for use with Application Load Balancing.

terminate_instances_with_expiration = None

Indicates whether running Spot instances should be terminated when the Spot fleet request expires.

valid_from = None

The start date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

valid_until = None

The end date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request. Defaults to 24 hours.

wait_for_fulfillment = None

If set, this provider will wait for the Spot Request to be fulfilled, and will throw an error if the timeout of 10m is reached.

static get(resource_name, id, opts=None, allocation_strategy=None, client_token=None, excess_capacity_termination_policy=None, fleet_type=None, iam_fleet_role=None, instance_interruption_behaviour=None, instance_pools_to_use_count=None, launch_specifications=None, load_balancers=None, replace_unhealthy_instances=None, spot_price=None, spot_request_state=None, target_capacity=None, target_group_arns=None, terminate_instances_with_expiration=None, valid_from=None, valid_until=None, wait_for_fulfillment=None)

Get an existing SpotFleetRequest resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] allocation_strategy: Indicates how to allocate the target capacity across

the Spot pools specified by the Spot fleet request. The default is lowestPrice.
Parameters:
  • excess_capacity_termination_policy (pulumi.Input[str]) – Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.
  • fleet_type (pulumi.Input[str]) – The type of fleet request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. Default is maintain.
  • iam_fleet_role (pulumi.Input[str]) – Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.
  • instance_interruption_behaviour (pulumi.Input[str]) – Indicates whether a Spot instance stops or terminates when it is interrupted. Default is terminate.
  • instance_pools_to_use_count (pulumi.Input[float]) – The number of Spot pools across which to allocate your target Spot capacity. Valid only when allocation_strategy is set to lowestPrice. Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.
  • launch_specifications (pulumi.Input[list]) – Used to define the launch configuration of the spot-fleet request. Can be specified multiple times to define different bids across different markets and instance types.
  • load_balancers (pulumi.Input[list]) – A list of elastic load balancer names to add to the Spot fleet.
  • replace_unhealthy_instances (pulumi.Input[bool]) – Indicates whether Spot fleet should replace unhealthy instances. Default false.
  • spot_price (pulumi.Input[str]) – The maximum bid price per unit hour.
  • spot_request_state (pulumi.Input[str]) – The state of the Spot fleet request.
  • target_capacity (pulumi.Input[float]) – The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.
  • target_group_arns (pulumi.Input[list]) – A list of alb.TargetGroup ARNs, for use with Application Load Balancing.
  • terminate_instances_with_expiration (pulumi.Input[bool]) – Indicates whether running Spot instances should be terminated when the Spot fleet request expires.
  • valid_from (pulumi.Input[str]) –

    The start date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

  • valid_until (pulumi.Input[str]) –

    The end date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request. Defaults to 24 hours.

  • wait_for_fulfillment (pulumi.Input[bool]) – If set, this provider will wait for the Spot Request to be fulfilled, and will throw an error if the timeout of 10m is reached.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.SpotInstanceRequest(resource_name, opts=None, ami=None, associate_public_ip_address=None, availability_zone=None, block_duration_minutes=None, cpu_core_count=None, cpu_threads_per_core=None, credit_specification=None, disable_api_termination=None, ebs_block_devices=None, ebs_optimized=None, ephemeral_block_devices=None, get_password_data=None, host_id=None, iam_instance_profile=None, instance_initiated_shutdown_behavior=None, instance_interruption_behaviour=None, instance_type=None, ipv6_address_count=None, ipv6_addresses=None, key_name=None, launch_group=None, monitoring=None, network_interfaces=None, placement_group=None, private_ip=None, root_block_device=None, security_groups=None, source_dest_check=None, spot_price=None, spot_type=None, subnet_id=None, tags=None, tenancy=None, user_data=None, user_data_base64=None, valid_from=None, valid_until=None, volume_tags=None, vpc_security_group_ids=None, wait_for_fulfillment=None, __props__=None, __name__=None, __opts__=None)

Provides an EC2 Spot Instance Request resource. This allows instances to be requested on the spot market.

By default this provider creates Spot Instance Requests with a persistent type, which means that for the duration of their lifetime, AWS will launch an instance with the configured details if and when the spot market will accept the requested price.

On destruction, this provider will make an attempt to terminate the associated Spot Instance if there is one present.

Spot Instances requests with a one-time type will close the spot request when the instance is terminated either by the request being below the current spot price availability or by a user.

NOTE: Because their behavior depends on the live status of the spot market, Spot Instance Requests have a unique lifecycle that makes them behave differently than other resources. Most importantly: there is no guarantee that a Spot Instance exists to fulfill the request at any given point in time. See the AWS Spot Instance documentation for more information.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • ami (pulumi.Input[str]) – The AMI to use for the instance.
  • associate_public_ip_address (pulumi.Input[bool]) – Associate a public ip address with an instance in a VPC. Boolean value.
  • availability_zone (pulumi.Input[str]) – The AZ to start the instance in.
  • block_duration_minutes (pulumi.Input[float]) – The required duration for the Spot instances, in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360). The duration period starts as soon as your Spot instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it terminates. Note that you can’t specify an Availability Zone group or a launch group if you specify a duration.
  • cpu_core_count (pulumi.Input[float]) –

    Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options CPU Cores and Threads Per CPU Core Per Instance Type - specifying this option for unsupported instance types will return an error from the EC2 API.

  • cpu_threads_per_core (pulumi.Input[float]) –

    If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See Optimizing CPU Options for more information.

  • credit_specification (pulumi.Input[dict]) – Customize the credit specification of the instance. See Credit Specification below for more details.
  • disable_api_termination (pulumi.Input[bool]) –

    If true, enables EC2 Instance Termination Protection

  • ebs_block_devices (pulumi.Input[list]) – Additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection.
  • ebs_optimized (pulumi.Input[bool]) –

    If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the EBS Optimized section of the AWS User Guide for more information.

  • ephemeral_block_devices (pulumi.Input[list]) – Customize Ephemeral (also known as “Instance Store”) volumes on the instance. See Block Devices below for details.
  • get_password_data (pulumi.Input[bool]) –

    If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the password_data attribute. See GetPasswordData for more information.

  • host_id (pulumi.Input[str]) – The Id of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
  • iam_instance_profile (pulumi.Input[str]) –

    The IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the EC2 documentation, notably iam:PassRole.

Parameters:
  • instance_initiated_shutdown_behavior (pulumi.Input[str]) –

    Shutdown behavior for the instance. Amazon defaults this to stop for EBS-backed instances and terminate for instance-store instances. Cannot be set on instance-store instances. See Shutdown Behavior for more information.

  • instance_interruption_behaviour (pulumi.Input[str]) – Indicates whether a Spot instance stops or terminates when it is interrupted. Default is terminate as this is the current AWS behaviour.
  • instance_type (pulumi.Input[str]) – The type of instance to start. Updates to this field will trigger a stop/start of the EC2 instance.
  • ipv6_addresses (pulumi.Input[list]) – Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
  • key_name (pulumi.Input[str]) – The key name of the Key Pair to use for the instance; which can be managed using the ec2.KeyPair resource.
  • launch_group (pulumi.Input[str]) – A launch group is a group of spot instances that launch together and terminate together. If left empty instances are launched and terminated individually.
  • monitoring (pulumi.Input[bool]) – If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
  • network_interfaces (pulumi.Input[list]) – Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
  • placement_group (pulumi.Input[str]) – The Placement Group to start the instance in.
  • private_ip (pulumi.Input[str]) – Private IP address to associate with the instance in a VPC.
  • root_block_device (pulumi.Input[dict]) – Customize details about the root block device of the instance. See Block Devices below for details.
  • security_groups (pulumi.Input[list]) – A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
  • source_dest_check (pulumi.Input[bool]) – Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
  • spot_price (pulumi.Input[str]) – The maximum price to request on the spot market.
  • spot_type (pulumi.Input[str]) – If set to one-time, after the instance is terminated, the spot request will be closed.
  • subnet_id (pulumi.Input[str]) – The VPC Subnet ID to launch in.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • tenancy (pulumi.Input[str]) – 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 import-instance command.
  • user_data (pulumi.Input[str]) – The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.
  • user_data_base64 (pulumi.Input[str]) – Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
  • valid_from (pulumi.Input[str]) –

    The start date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

  • valid_until (pulumi.Input[str]) –

    The end date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request. The default end date is 7 days from the current date.

  • volume_tags (pulumi.Input[dict]) – A mapping of tags to assign to the devices created by the instance at launch time.
  • vpc_security_group_ids (pulumi.Input[list]) – A list of security group IDs to associate with.
  • wait_for_fulfillment (pulumi.Input[bool]) – If set, this provider will wait for the Spot Request to be fulfilled, and will throw an error if the timeout of 10m is reached.
ami = None

The AMI to use for the instance.

associate_public_ip_address = None

Associate a public ip address with an instance in a VPC. Boolean value.

availability_zone = None

The AZ to start the instance in.

block_duration_minutes = None

The required duration for the Spot instances, in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360). The duration period starts as soon as your Spot instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it terminates. Note that you can’t specify an Availability Zone group or a launch group if you specify a duration.

cpu_core_count = None

Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options CPU Cores and Threads Per CPU Core Per Instance Type - specifying this option for unsupported instance types will return an error from the EC2 API.

cpu_threads_per_core = None

If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See Optimizing CPU Options for more information.

credit_specification = None

Customize the credit specification of the instance. See Credit Specification below for more details.

disable_api_termination = None

If true, enables EC2 Instance Termination Protection

ebs_block_devices = None

Additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection.

ebs_optimized = None

If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the EBS Optimized section of the AWS User Guide for more information.

ephemeral_block_devices = None

Customize Ephemeral (also known as “Instance Store”) volumes on the instance. See Block Devices below for details.

get_password_data = None

If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the password_data attribute. See GetPasswordData for more information.

host_id = None

The Id of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.

iam_instance_profile = None

The IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the EC2 documentation, notably iam:PassRole.

  • ipv6_address_count- (Optional) A number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet.
instance_initiated_shutdown_behavior = None

Shutdown behavior for the instance. Amazon defaults this to stop for EBS-backed instances and terminate for instance-store instances. Cannot be set on instance-store instances. See Shutdown Behavior for more information.

instance_interruption_behaviour = None

Indicates whether a Spot instance stops or terminates when it is interrupted. Default is terminate as this is the current AWS behaviour.

instance_type = None

The type of instance to start. Updates to this field will trigger a stop/start of the EC2 instance.

ipv6_addresses = None

Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface

key_name = None

The key name of the Key Pair to use for the instance; which can be managed using the ec2.KeyPair resource.

launch_group = None

A launch group is a group of spot instances that launch together and terminate together. If left empty instances are launched and terminated individually.

monitoring = None

If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)

network_interfaces = None

Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.

placement_group = None

The Placement Group to start the instance in.

private_dns = None

The private DNS name assigned to the instance. Can only be used inside the Amazon EC2, and only available if you’ve enabled DNS hostnames for your VPC

private_ip = None

Private IP address to associate with the instance in a VPC.

public_dns = None

The public DNS name assigned to the instance. For EC2-VPC, this is only available if you’ve enabled DNS hostnames for your VPC

public_ip = None

The public IP address assigned to the instance, if applicable.

root_block_device = None

Customize details about the root block device of the instance. See Block Devices below for details.

security_groups = None

A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.

source_dest_check = None

Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.

spot_bid_status = None

The current bid status of the Spot Instance Request.

  • spot_request_state The current request state of the Spot Instance Request.
spot_instance_id = None

The Instance ID (if any) that is currently fulfilling the Spot Instance request.

spot_price = None

The maximum price to request on the spot market.

spot_type = None

If set to one-time, after the instance is terminated, the spot request will be closed.

subnet_id = None

The VPC Subnet ID to launch in.

tags = None

A mapping of tags to assign to the resource.

tenancy = None

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 import-instance command.

user_data = None

The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.

user_data_base64 = None

Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.

valid_from = None

The start date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

valid_until = None

The end date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request. The default end date is 7 days from the current date.

volume_tags = None

A mapping of tags to assign to the devices created by the instance at launch time.

vpc_security_group_ids = None

A list of security group IDs to associate with.

wait_for_fulfillment = None

If set, this provider will wait for the Spot Request to be fulfilled, and will throw an error if the timeout of 10m is reached.

static get(resource_name, id, opts=None, ami=None, arn=None, associate_public_ip_address=None, availability_zone=None, block_duration_minutes=None, cpu_core_count=None, cpu_threads_per_core=None, credit_specification=None, disable_api_termination=None, ebs_block_devices=None, ebs_optimized=None, ephemeral_block_devices=None, get_password_data=None, host_id=None, iam_instance_profile=None, instance_initiated_shutdown_behavior=None, instance_interruption_behaviour=None, instance_state=None, instance_type=None, ipv6_address_count=None, ipv6_addresses=None, key_name=None, launch_group=None, monitoring=None, network_interfaces=None, password_data=None, placement_group=None, primary_network_interface_id=None, private_dns=None, private_ip=None, public_dns=None, public_ip=None, root_block_device=None, security_groups=None, source_dest_check=None, spot_bid_status=None, spot_instance_id=None, spot_price=None, spot_request_state=None, spot_type=None, subnet_id=None, tags=None, tenancy=None, user_data=None, user_data_base64=None, valid_from=None, valid_until=None, volume_tags=None, vpc_security_group_ids=None, wait_for_fulfillment=None)

Get an existing SpotInstanceRequest resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] ami: The AMI to use for the instance. :param pulumi.Input[bool] associate_public_ip_address: Associate a public ip address with an instance in a VPC. Boolean value. :param pulumi.Input[str] availability_zone: The AZ to start the instance in. :param pulumi.Input[float] block_duration_minutes: The required duration for the Spot instances, in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).

The duration period starts as soon as your Spot instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it terminates. Note that you can’t specify an Availability Zone group or a launch group if you specify a duration.
Parameters:
  • cpu_core_count (pulumi.Input[float]) –

    Sets the number of CPU cores for an instance. This option is only supported on creation of instance type that support CPU Options CPU Cores and Threads Per CPU Core Per Instance Type - specifying this option for unsupported instance types will return an error from the EC2 API.

  • cpu_threads_per_core (pulumi.Input[float]) –

    If set to to 1, hyperthreading is disabled on the launched instance. Defaults to 2 if not set. See Optimizing CPU Options for more information.

  • credit_specification (pulumi.Input[dict]) – Customize the credit specification of the instance. See Credit Specification below for more details.
  • disable_api_termination (pulumi.Input[bool]) –

    If true, enables EC2 Instance Termination Protection

  • ebs_block_devices (pulumi.Input[list]) – Additional EBS block devices to attach to the instance. Block device configurations only apply on resource creation. See Block Devices below for details on attributes and drift detection.
  • ebs_optimized (pulumi.Input[bool]) –

    If true, the launched EC2 instance will be EBS-optimized. Note that if this is not set on an instance type that is optimized by default then this will show as disabled but if the instance type is optimized by default then there is no need to set this and there is no effect to disabling it. See the EBS Optimized section of the AWS User Guide for more information.

  • ephemeral_block_devices (pulumi.Input[list]) – Customize Ephemeral (also known as “Instance Store”) volumes on the instance. See Block Devices below for details.
  • get_password_data (pulumi.Input[bool]) –

    If true, wait for password data to become available and retrieve it. Useful for getting the administrator password for instances running Microsoft Windows. The password data is exported to the password_data attribute. See GetPasswordData for more information.

  • host_id (pulumi.Input[str]) – The Id of a dedicated host that the instance will be assigned to. Use when an instance is to be launched on a specific dedicated host.
  • iam_instance_profile (pulumi.Input[str]) –

    The IAM Instance Profile to launch the instance with. Specified as the name of the Instance Profile. Ensure your credentials have the correct permission to assign the instance profile according to the EC2 documentation, notably iam:PassRole.

Parameters:
  • instance_initiated_shutdown_behavior (pulumi.Input[str]) –

    Shutdown behavior for the instance. Amazon defaults this to stop for EBS-backed instances and terminate for instance-store instances. Cannot be set on instance-store instances. See Shutdown Behavior for more information.

  • instance_interruption_behaviour (pulumi.Input[str]) – Indicates whether a Spot instance stops or terminates when it is interrupted. Default is terminate as this is the current AWS behaviour.
  • instance_type (pulumi.Input[str]) – The type of instance to start. Updates to this field will trigger a stop/start of the EC2 instance.
  • ipv6_addresses (pulumi.Input[list]) – Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface
  • key_name (pulumi.Input[str]) – The key name of the Key Pair to use for the instance; which can be managed using the ec2.KeyPair resource.
  • launch_group (pulumi.Input[str]) – A launch group is a group of spot instances that launch together and terminate together. If left empty instances are launched and terminated individually.
  • monitoring (pulumi.Input[bool]) – If true, the launched EC2 instance will have detailed monitoring enabled. (Available since v0.6.0)
  • network_interfaces (pulumi.Input[list]) – Customize network interfaces to be attached at instance boot time. See Network Interfaces below for more details.
  • placement_group (pulumi.Input[str]) – The Placement Group to start the instance in.
  • private_dns (pulumi.Input[str]) – The private DNS name assigned to the instance. Can only be used inside the Amazon EC2, and only available if you’ve enabled DNS hostnames for your VPC
  • private_ip (pulumi.Input[str]) – Private IP address to associate with the instance in a VPC.
  • public_dns (pulumi.Input[str]) – The public DNS name assigned to the instance. For EC2-VPC, this is only available if you’ve enabled DNS hostnames for your VPC
  • public_ip (pulumi.Input[str]) – The public IP address assigned to the instance, if applicable.
  • root_block_device (pulumi.Input[dict]) – Customize details about the root block device of the instance. See Block Devices below for details.
  • security_groups (pulumi.Input[list]) – A list of security group names (EC2-Classic) or IDs (default VPC) to associate with.
  • source_dest_check (pulumi.Input[bool]) – Controls if traffic is routed to the instance when the destination address does not match the instance. Used for NAT or VPNs. Defaults true.
  • spot_bid_status (pulumi.Input[str]) –

    The current bid status of the Spot Instance Request.

Parameters:
  • spot_instance_id (pulumi.Input[str]) – The Instance ID (if any) that is currently fulfilling the Spot Instance request.
  • spot_price (pulumi.Input[str]) – The maximum price to request on the spot market.
  • spot_type (pulumi.Input[str]) – If set to one-time, after the instance is terminated, the spot request will be closed.
  • subnet_id (pulumi.Input[str]) – The VPC Subnet ID to launch in.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • tenancy (pulumi.Input[str]) – 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 import-instance command.
  • user_data (pulumi.Input[str]) – The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; see user_data_base64 instead.
  • user_data_base64 (pulumi.Input[str]) – Can be used instead of user_data to pass base64-encoded binary data directly. Use this instead of user_data whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption.
  • valid_from (pulumi.Input[str]) –

    The start date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

  • valid_until (pulumi.Input[str]) –

    The end date and time of the request, in UTC RFC3339 format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request. The default end date is 7 days from the current date.

  • volume_tags (pulumi.Input[dict]) – A mapping of tags to assign to the devices created by the instance at launch time.
  • vpc_security_group_ids (pulumi.Input[list]) – A list of security group IDs to associate with.
  • wait_for_fulfillment (pulumi.Input[bool]) – If set, this provider will wait for the Spot Request to be fulfilled, and will throw an error if the timeout of 10m is reached.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.Subnet(resource_name, opts=None, assign_ipv6_address_on_creation=None, availability_zone=None, availability_zone_id=None, cidr_block=None, ipv6_cidr_block=None, map_public_ip_on_launch=None, tags=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides an VPC subnet resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • assign_ipv6_address_on_creation (pulumi.Input[bool]) – Specify true to indicate that network interfaces created in the specified subnet should be assigned an IPv6 address. Default is false
  • availability_zone (pulumi.Input[str]) – The AZ for the subnet.
  • availability_zone_id (pulumi.Input[str]) – The AZ ID of the subnet.
  • cidr_block (pulumi.Input[str]) – The CIDR block for the subnet.
  • ipv6_cidr_block (pulumi.Input[str]) – The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.
  • map_public_ip_on_launch (pulumi.Input[bool]) – Specify true to indicate that instances launched into the subnet should be assigned a public IP address. Default is false.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID.
arn = None

The ARN of the subnet.

assign_ipv6_address_on_creation = None

Specify true to indicate that network interfaces created in the specified subnet should be assigned an IPv6 address. Default is false

availability_zone = None

The AZ for the subnet.

availability_zone_id = None

The AZ ID of the subnet.

cidr_block = None

The CIDR block for the subnet.

ipv6_cidr_block = None

The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.

ipv6_cidr_block_association_id = None

The association ID for the IPv6 CIDR block.

map_public_ip_on_launch = None

Specify true to indicate that instances launched into the subnet should be assigned a public IP address. Default is false.

owner_id = None

The ID of the AWS account that owns the subnet.

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The VPC ID.

static get(resource_name, id, opts=None, arn=None, assign_ipv6_address_on_creation=None, availability_zone=None, availability_zone_id=None, cidr_block=None, ipv6_cidr_block=None, ipv6_cidr_block_association_id=None, map_public_ip_on_launch=None, owner_id=None, tags=None, vpc_id=None)

Get an existing Subnet resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] arn: The ARN of the subnet. :param pulumi.Input[bool] assign_ipv6_address_on_creation: Specify true to indicate

that network interfaces created in the specified subnet should be assigned an IPv6 address. Default is false
Parameters:
  • availability_zone (pulumi.Input[str]) – The AZ for the subnet.
  • availability_zone_id (pulumi.Input[str]) – The AZ ID of the subnet.
  • cidr_block (pulumi.Input[str]) – The CIDR block for the subnet.
  • ipv6_cidr_block (pulumi.Input[str]) – The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.
  • ipv6_cidr_block_association_id (pulumi.Input[str]) – The association ID for the IPv6 CIDR block.
  • map_public_ip_on_launch (pulumi.Input[bool]) – Specify true to indicate that instances launched into the subnet should be assigned a public IP address. Default is false.
  • owner_id (pulumi.Input[str]) – The ID of the AWS account that owns the subnet.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VolumeAttachment(resource_name, opts=None, device_name=None, force_detach=None, instance_id=None, skip_destroy=None, volume_id=None, __props__=None, __name__=None, __opts__=None)

Provides an AWS EBS Volume Attachment as a top level resource, to attach and detach volumes from AWS Instances.

NOTE on EBS block devices: If you use ebs_block_device on an ec2.Instance, this provider will assume management over the full set of non-root EBS block devices for the instance, and treats additional block devices as drift. For this reason, ebs_block_device cannot be mixed with external ebs.Volume + aws_ebs_volume_attachment resources for a given instance.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • device_name (pulumi.Input[str]) – The device name to expose to the instance (for example, /dev/sdh or xvdh). See [Device Naming on Linux Instances][1] and [Device Naming on Windows Instances][2] for more information.
  • force_detach (pulumi.Input[bool]) – Set to true if you want to force the volume to detach. Useful if previous attempts failed, but use this option only as a last resort, as this can result in data loss. See [Detaching an Amazon EBS Volume from an Instance][3] for more information.
  • instance_id (pulumi.Input[str]) – ID of the Instance to attach to
  • skip_destroy (pulumi.Input[bool]) – Set this to true if you do not wish to detach the volume from the instance to which it is attached at destroy time, and instead just remove the attachment from this provider state. This is useful when destroying an instance which has volumes created by some other means attached.
  • volume_id (pulumi.Input[str]) – ID of the Volume to be attached
device_name = None

The device name to expose to the instance (for example, /dev/sdh or xvdh). See [Device Naming on Linux Instances][1] and [Device Naming on Windows Instances][2] for more information.

force_detach = None

Set to true if you want to force the volume to detach. Useful if previous attempts failed, but use this option only as a last resort, as this can result in data loss. See [Detaching an Amazon EBS Volume from an Instance][3] for more information.

instance_id = None

ID of the Instance to attach to

skip_destroy = None

Set this to true if you do not wish to detach the volume from the instance to which it is attached at destroy time, and instead just remove the attachment from this provider state. This is useful when destroying an instance which has volumes created by some other means attached.

volume_id = None

ID of the Volume to be attached

static get(resource_name, id, opts=None, device_name=None, force_detach=None, instance_id=None, skip_destroy=None, volume_id=None)

Get an existing VolumeAttachment resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] device_name: The device name to expose to the instance (for

example, /dev/sdh or xvdh). See [Device Naming on Linux Instances][1] and [Device Naming on Windows Instances][2] for more information.
Parameters:
  • force_detach (pulumi.Input[bool]) – Set to true if you want to force the volume to detach. Useful if previous attempts failed, but use this option only as a last resort, as this can result in data loss. See [Detaching an Amazon EBS Volume from an Instance][3] for more information.
  • instance_id (pulumi.Input[str]) – ID of the Instance to attach to
  • skip_destroy (pulumi.Input[bool]) – Set this to true if you do not wish to detach the volume from the instance to which it is attached at destroy time, and instead just remove the attachment from this provider state. This is useful when destroying an instance which has volumes created by some other means attached.
  • volume_id (pulumi.Input[str]) – ID of the Volume to be attached
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.Vpc(resource_name, opts=None, assign_generated_ipv6_cidr_block=None, cidr_block=None, enable_classiclink=None, enable_classiclink_dns_support=None, enable_dns_hostnames=None, enable_dns_support=None, instance_tenancy=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a VPC resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • assign_generated_ipv6_cidr_block (pulumi.Input[bool]) – Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block. Default is false.
  • cidr_block (pulumi.Input[str]) – The CIDR block for the VPC.
  • enable_classiclink (pulumi.Input[bool]) – A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the [ClassicLink documentation][1] for more information. Defaults false.
  • enable_classiclink_dns_support (pulumi.Input[bool]) – A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.
  • enable_dns_hostnames (pulumi.Input[bool]) – A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
  • enable_dns_support (pulumi.Input[bool]) – A boolean flag to enable/disable DNS support in the VPC. Defaults true.
  • instance_tenancy (pulumi.Input[str]) – A tenancy option for instances launched into the VPC
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
arn = None

Amazon Resource Name (ARN) of VPC

assign_generated_ipv6_cidr_block = None

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block. Default is false.

cidr_block = None

The CIDR block for the VPC.

default_network_acl_id = None

The ID of the network ACL created by default on VPC creation

default_route_table_id = None

The ID of the route table created by default on VPC creation

default_security_group_id = None

The ID of the security group created by default on VPC creation

A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the [ClassicLink documentation][1] for more information. Defaults false.

A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.

enable_dns_hostnames = None

A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.

enable_dns_support = None

A boolean flag to enable/disable DNS support in the VPC. Defaults true.

instance_tenancy = None

A tenancy option for instances launched into the VPC

ipv6_association_id = None

The association ID for the IPv6 CIDR block.

ipv6_cidr_block = None

The IPv6 CIDR block.

main_route_table_id = None

The ID of the main route table associated with this VPC. Note that you can change a VPC’s main route table by using an ``ec2.MainRouteTableAssociation` <https://www.terraform.io/docs/providers/aws/r/main_route_table_assoc.html>`_.

owner_id = None

The ID of the AWS account that owns the VPC.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, arn=None, assign_generated_ipv6_cidr_block=None, cidr_block=None, default_network_acl_id=None, default_route_table_id=None, default_security_group_id=None, dhcp_options_id=None, enable_classiclink=None, enable_classiclink_dns_support=None, enable_dns_hostnames=None, enable_dns_support=None, instance_tenancy=None, ipv6_association_id=None, ipv6_cidr_block=None, main_route_table_id=None, owner_id=None, tags=None)

Get an existing Vpc resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] arn: Amazon Resource Name (ARN) of VPC :param pulumi.Input[bool] assign_generated_ipv6_cidr_block: Requests an Amazon-provided IPv6 CIDR

block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block. Default is false.
Parameters:
  • cidr_block (pulumi.Input[str]) – The CIDR block for the VPC.
  • default_network_acl_id (pulumi.Input[str]) – The ID of the network ACL created by default on VPC creation
  • default_route_table_id (pulumi.Input[str]) – The ID of the route table created by default on VPC creation
  • default_security_group_id (pulumi.Input[str]) – The ID of the security group created by default on VPC creation
  • enable_classiclink (pulumi.Input[bool]) – A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the [ClassicLink documentation][1] for more information. Defaults false.
  • enable_classiclink_dns_support (pulumi.Input[bool]) – A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.
  • enable_dns_hostnames (pulumi.Input[bool]) – A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
  • enable_dns_support (pulumi.Input[bool]) – A boolean flag to enable/disable DNS support in the VPC. Defaults true.
  • instance_tenancy (pulumi.Input[str]) – A tenancy option for instances launched into the VPC
  • ipv6_association_id (pulumi.Input[str]) – The association ID for the IPv6 CIDR block.
  • ipv6_cidr_block (pulumi.Input[str]) – The IPv6 CIDR block.
  • main_route_table_id (pulumi.Input[str]) – The ID of the main route table associated with this VPC. Note that you can change a VPC’s main route table by using an ``ec2.MainRouteTableAssociation` <https://www.terraform.io/docs/providers/aws/r/main_route_table_assoc.html>`_.
  • owner_id (pulumi.Input[str]) – The ID of the AWS account that owns the VPC.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcDhcpOptions(resource_name, opts=None, domain_name=None, domain_name_servers=None, netbios_name_servers=None, netbios_node_type=None, ntp_servers=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a VPC DHCP Options resource.

  • Notice that all arguments are optional but you have to specify at least one argument.
  • domain_name_servers, netbios_name_servers, ntp_servers are limited by AWS to maximum four servers only.
  • To actually use the DHCP Options Set you need to associate it to a VPC using ``ec2.VpcDhcpOptionsAssociation` <https://www.terraform.io/docs/providers/aws/r/vpc_dhcp_options_association.html>`_.
  • If you delete a DHCP Options Set, all VPCs using it will be associated to AWS’s default DHCP Option Set.
  • In most cases unless you’re configuring your own DNS you’ll want to set domain_name_servers to AmazonProvidedDNS.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • domain_name (pulumi.Input[str]) – the suffix domain name to use by default when resolving non Fully Qualified Domain Names. In other words, this is what ends up being the search value in the /etc/resolv.conf file.
  • domain_name_servers (pulumi.Input[list]) – List of name servers to configure in /etc/resolv.conf. If you want to use the default AWS nameservers you should set this to AmazonProvidedDNS.
  • netbios_name_servers (pulumi.Input[list]) – List of NETBIOS name servers.
  • netbios_node_type (pulumi.Input[str]) –

    The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see RFC 2132.

  • ntp_servers (pulumi.Input[list]) – List of NTP servers to configure.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
domain_name = None

the suffix domain name to use by default when resolving non Fully Qualified Domain Names. In other words, this is what ends up being the search value in the /etc/resolv.conf file.

domain_name_servers = None

List of name servers to configure in /etc/resolv.conf. If you want to use the default AWS nameservers you should set this to AmazonProvidedDNS.

netbios_name_servers = None

List of NETBIOS name servers.

netbios_node_type = None

The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see RFC 2132.

ntp_servers = None

List of NTP servers to configure.

owner_id = None

The ID of the AWS account that owns the DHCP options set.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, domain_name=None, domain_name_servers=None, netbios_name_servers=None, netbios_node_type=None, ntp_servers=None, owner_id=None, tags=None)

Get an existing VpcDhcpOptions resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] domain_name: the suffix domain name to use by default when resolving non Fully Qualified Domain Names. In other words, this is what ends up being the search value in the /etc/resolv.conf file. :param pulumi.Input[list] domain_name_servers: List of name servers to configure in /etc/resolv.conf. If you want to use the default AWS nameservers you should set this to AmazonProvidedDNS. :param pulumi.Input[list] netbios_name_servers: List of NETBIOS name servers. :param pulumi.Input[str] netbios_node_type: The NetBIOS node type (1, 2, 4, or 8). AWS recommends to specify 2 since broadcast and multicast are not supported in their network. For more information about these node types, see RFC 2132. :param pulumi.Input[list] ntp_servers: List of NTP servers to configure. :param pulumi.Input[str] owner_id: The ID of the AWS account that owns the DHCP options set. :param pulumi.Input[dict] tags: A mapping of tags to assign to the resource.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcDhcpOptionsAssociation(resource_name, opts=None, dhcp_options_id=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a VPC DHCP Options Association resource.

  • You can only associate one DHCP Options Set to a given VPC ID.
  • Removing the DHCP Options Association automatically sets AWS’s default DHCP Options Set to the VPC.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • dhcp_options_id (pulumi.Input[str]) – The ID of the DHCP Options Set to associate to the VPC.
  • vpc_id (pulumi.Input[str]) – The ID of the VPC to which we would like to associate a DHCP Options Set.
dhcp_options_id = None

The ID of the DHCP Options Set to associate to the VPC.

vpc_id = None

The ID of the VPC to which we would like to associate a DHCP Options Set.

static get(resource_name, id, opts=None, dhcp_options_id=None, vpc_id=None)

Get an existing VpcDhcpOptionsAssociation resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] dhcp_options_id: The ID of the DHCP Options Set to associate to the VPC. :param pulumi.Input[str] vpc_id: The ID of the VPC to which we would like to associate a DHCP Options Set.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcEndpoint(resource_name, opts=None, auto_accept=None, policy=None, private_dns_enabled=None, route_table_ids=None, security_group_ids=None, service_name=None, subnet_ids=None, tags=None, vpc_endpoint_type=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a VPC Endpoint resource.

NOTE on VPC Endpoints and VPC Endpoint Associations: This provider provides both standalone VPC Endpoint Associations for Route Tables - (an association between a VPC endpoint and a single route_table_id) and Subnets - (an association between a VPC endpoint and a single subnet_id) and a VPC Endpoint resource with route_table_ids and subnet_ids attributes. Do not use the same resource ID in both a VPC Endpoint resource and a VPC Endpoint Association resource. Doing so will cause a conflict of associations and will overwrite the association.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • auto_accept (pulumi.Input[bool]) – Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
  • policy (pulumi.Input[str]) – A policy to attach to the endpoint that controls access to the service. Defaults to full access. All Gateway and some Interface endpoints support policies - see the relevant AWS documentation for more details.
  • private_dns_enabled (pulumi.Input[bool]) – Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface. Defaults to false.
  • route_table_ids (pulumi.Input[list]) – One or more route table IDs. Applicable for endpoints of type Gateway.
  • security_group_ids (pulumi.Input[list]) – The ID of one or more security groups to associate with the network interface. Required for endpoints of type Interface.
  • service_name (pulumi.Input[str]) – The service name, in the form com.amazonaws.region.service for AWS services.
  • subnet_ids (pulumi.Input[list]) – The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type Interface.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_endpoint_type (pulumi.Input[str]) – The VPC endpoint type, Gateway or Interface. Defaults to Gateway.
  • vpc_id (pulumi.Input[str]) – The ID of the VPC in which the endpoint will be used.
auto_accept = None

Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).

cidr_blocks = None

The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type Gateway.

dns_entries = None

The DNS entries for the VPC Endpoint. Applicable for endpoints of type Interface. DNS blocks are documented below.

network_interface_ids = None

One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type Interface.

owner_id = None

The ID of the AWS account that owns the VPC endpoint.

policy = None

A policy to attach to the endpoint that controls access to the service. Defaults to full access. All Gateway and some Interface endpoints support policies - see the relevant AWS documentation for more details.

prefix_list_id = None

The prefix list ID of the exposed AWS service. Applicable for endpoints of type Gateway.

private_dns_enabled = None

Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface. Defaults to false.

requester_managed = None

Whether or not the VPC Endpoint is being managed by its service - true or false.

route_table_ids = None

One or more route table IDs. Applicable for endpoints of type Gateway.

security_group_ids = None

The ID of one or more security groups to associate with the network interface. Required for endpoints of type Interface.

service_name = None

The service name, in the form com.amazonaws.region.service for AWS services.

state = None

The state of the VPC endpoint.

subnet_ids = None

The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type Interface.

tags = None

A mapping of tags to assign to the resource.

vpc_endpoint_type = None

The VPC endpoint type, Gateway or Interface. Defaults to Gateway.

vpc_id = None

The ID of the VPC in which the endpoint will be used.

static get(resource_name, id, opts=None, auto_accept=None, cidr_blocks=None, dns_entries=None, network_interface_ids=None, owner_id=None, policy=None, prefix_list_id=None, private_dns_enabled=None, requester_managed=None, route_table_ids=None, security_group_ids=None, service_name=None, state=None, subnet_ids=None, tags=None, vpc_endpoint_type=None, vpc_id=None)

Get an existing VpcEndpoint resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[bool] auto_accept: Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account). :param pulumi.Input[list] cidr_blocks: The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type Gateway. :param pulumi.Input[list] dns_entries: The DNS entries for the VPC Endpoint. Applicable for endpoints of type Interface. DNS blocks are documented below. :param pulumi.Input[list] network_interface_ids: One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type Interface. :param pulumi.Input[str] owner_id: The ID of the AWS account that owns the VPC endpoint. :param pulumi.Input[str] policy: A policy to attach to the endpoint that controls access to the service. Defaults to full access. All Gateway and some Interface endpoints support policies - see the relevant AWS documentation for more details. :param pulumi.Input[str] prefix_list_id: The prefix list ID of the exposed AWS service. Applicable for endpoints of type Gateway. :param pulumi.Input[bool] private_dns_enabled: Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface.

Defaults to false.
Parameters:
  • requester_managed (pulumi.Input[bool]) – Whether or not the VPC Endpoint is being managed by its service - true or false.
  • route_table_ids (pulumi.Input[list]) – One or more route table IDs. Applicable for endpoints of type Gateway.
  • security_group_ids (pulumi.Input[list]) – The ID of one or more security groups to associate with the network interface. Required for endpoints of type Interface.
  • service_name (pulumi.Input[str]) – The service name, in the form com.amazonaws.region.service for AWS services.
  • state (pulumi.Input[str]) – The state of the VPC endpoint.
  • subnet_ids (pulumi.Input[list]) – The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type Interface.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_endpoint_type (pulumi.Input[str]) – The VPC endpoint type, Gateway or Interface. Defaults to Gateway.
  • vpc_id (pulumi.Input[str]) – The ID of the VPC in which the endpoint will be used.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcEndpointConnectionNotification(resource_name, opts=None, connection_events=None, connection_notification_arn=None, vpc_endpoint_id=None, vpc_endpoint_service_id=None, __props__=None, __name__=None, __opts__=None)

Provides a VPC Endpoint connection notification resource. Connection notifications notify subscribers of VPC Endpoint events.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • connection_events (pulumi.Input[list]) – One or more endpoint events for which to receive notifications.
  • connection_notification_arn (pulumi.Input[str]) – The ARN of the SNS topic for the notifications.
  • vpc_endpoint_id (pulumi.Input[str]) – The ID of the VPC Endpoint to receive notifications for.
  • vpc_endpoint_service_id (pulumi.Input[str]) – The ID of the VPC Endpoint Service to receive notifications for.
connection_events = None

One or more endpoint events for which to receive notifications.

connection_notification_arn = None

The ARN of the SNS topic for the notifications.

notification_type = None

The type of notification.

state = None

The state of the notification.

vpc_endpoint_id = None

The ID of the VPC Endpoint to receive notifications for.

vpc_endpoint_service_id = None

The ID of the VPC Endpoint Service to receive notifications for.

static get(resource_name, id, opts=None, connection_events=None, connection_notification_arn=None, notification_type=None, state=None, vpc_endpoint_id=None, vpc_endpoint_service_id=None)

Get an existing VpcEndpointConnectionNotification resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[list] connection_events: One or more endpoint events for which to receive notifications. :param pulumi.Input[str] connection_notification_arn: The ARN of the SNS topic for the notifications. :param pulumi.Input[str] notification_type: The type of notification. :param pulumi.Input[str] state: The state of the notification. :param pulumi.Input[str] vpc_endpoint_id: The ID of the VPC Endpoint to receive notifications for. :param pulumi.Input[str] vpc_endpoint_service_id: The ID of the VPC Endpoint Service to receive notifications for.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcEndpointRouteTableAssociation(resource_name, opts=None, route_table_id=None, vpc_endpoint_id=None, __props__=None, __name__=None, __opts__=None)

Manages a VPC Endpoint Route Table Association

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • route_table_id (pulumi.Input[str]) – Identifier of the EC2 Route Table to be associated with the VPC Endpoint.
  • vpc_endpoint_id (pulumi.Input[str]) – Identifier of the VPC Endpoint with which the EC2 Route Table will be associated.
route_table_id = None

Identifier of the EC2 Route Table to be associated with the VPC Endpoint.

vpc_endpoint_id = None

Identifier of the VPC Endpoint with which the EC2 Route Table will be associated.

static get(resource_name, id, opts=None, route_table_id=None, vpc_endpoint_id=None)

Get an existing VpcEndpointRouteTableAssociation resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] route_table_id: Identifier of the EC2 Route Table to be associated with the VPC Endpoint. :param pulumi.Input[str] vpc_endpoint_id: Identifier of the VPC Endpoint with which the EC2 Route Table will be associated.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcEndpointService(resource_name, opts=None, acceptance_required=None, allowed_principals=None, network_load_balancer_arns=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a VPC Endpoint Service resource. Service consumers can create an Interface VPC Endpoint to connect to the service.

NOTE on VPC Endpoint Services and VPC Endpoint Service Allowed Principals: This provider provides both a standalone VPC Endpoint Service Allowed Principal resource and a VPC Endpoint Service resource with an allowed_principals attribute. Do not use the same principal ARN in both a VPC Endpoint Service resource and a VPC Endpoint Service Allowed Principal resource. Doing so will cause a conflict and will overwrite the association.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • acceptance_required (pulumi.Input[bool]) – Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - true or false.
  • allowed_principals (pulumi.Input[list]) – The ARNs of one or more principals allowed to discover the endpoint service.
  • network_load_balancer_arns (pulumi.Input[list]) – The ARNs of one or more Network Load Balancers for the endpoint service.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
acceptance_required = None

Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - true or false.

allowed_principals = None

The ARNs of one or more principals allowed to discover the endpoint service.

availability_zones = None

The Availability Zones in which the service is available.

base_endpoint_dns_names = None

The DNS names for the service.

manages_vpc_endpoints = None

Whether or not the service manages its VPC endpoints - true or false.

network_load_balancer_arns = None

The ARNs of one or more Network Load Balancers for the endpoint service.

private_dns_name = None

The private DNS name for the service.

service_name = None

The service name.

service_type = None

The service type, Gateway or Interface.

state = None

The state of the VPC endpoint service.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, acceptance_required=None, allowed_principals=None, availability_zones=None, base_endpoint_dns_names=None, manages_vpc_endpoints=None, network_load_balancer_arns=None, private_dns_name=None, service_name=None, service_type=None, state=None, tags=None)

Get an existing VpcEndpointService resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[bool] acceptance_required: Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - true or false. :param pulumi.Input[list] allowed_principals: The ARNs of one or more principals allowed to discover the endpoint service. :param pulumi.Input[list] availability_zones: The Availability Zones in which the service is available. :param pulumi.Input[list] base_endpoint_dns_names: The DNS names for the service. :param pulumi.Input[bool] manages_vpc_endpoints: Whether or not the service manages its VPC endpoints - true or false. :param pulumi.Input[list] network_load_balancer_arns: The ARNs of one or more Network Load Balancers for the endpoint service. :param pulumi.Input[str] private_dns_name: The private DNS name for the service. :param pulumi.Input[str] service_name: The service name. :param pulumi.Input[str] service_type: The service type, Gateway or Interface. :param pulumi.Input[str] state: The state of the VPC endpoint service. :param pulumi.Input[dict] tags: A mapping of tags to assign to the resource.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcEndpointServiceAllowedPrinciple(resource_name, opts=None, principal_arn=None, vpc_endpoint_service_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to allow a principal to discover a VPC endpoint service.

NOTE on VPC Endpoint Services and VPC Endpoint Service Allowed Principals: This provider provides both a standalone VPC Endpoint Service Allowed Principal resource and a VPC Endpoint Service resource with an allowed_principals attribute. Do not use the same principal ARN in both a VPC Endpoint Service resource and a VPC Endpoint Service Allowed Principal resource. Doing so will cause a conflict and will overwrite the association.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • principal_arn (pulumi.Input[str]) – The ARN of the principal to allow permissions.
  • vpc_endpoint_service_id (pulumi.Input[str]) – The ID of the VPC endpoint service to allow permission.
principal_arn = None

The ARN of the principal to allow permissions.

vpc_endpoint_service_id = None

The ID of the VPC endpoint service to allow permission.

static get(resource_name, id, opts=None, principal_arn=None, vpc_endpoint_service_id=None)

Get an existing VpcEndpointServiceAllowedPrinciple resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] principal_arn: The ARN of the principal to allow permissions. :param pulumi.Input[str] vpc_endpoint_service_id: The ID of the VPC endpoint service to allow permission.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcEndpointSubnetAssociation(resource_name, opts=None, subnet_id=None, vpc_endpoint_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to create an association between a VPC endpoint and a subnet.

NOTE on VPC Endpoints and VPC Endpoint Subnet Associations: This provider provides both a standalone VPC Endpoint Subnet Association (an association between a VPC endpoint and a single subnet_id) and a VPC Endpoint resource with a subnet_ids attribute. Do not use the same subnet ID in both a VPC Endpoint resource and a VPC Endpoint Subnet Association resource. Doing so will cause a conflict of associations and will overwrite the association.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • subnet_id (pulumi.Input[str]) – The ID of the subnet to be associated with the VPC endpoint.
  • vpc_endpoint_id (pulumi.Input[str]) – The ID of the VPC endpoint with which the subnet will be associated.
subnet_id = None

The ID of the subnet to be associated with the VPC endpoint.

vpc_endpoint_id = None

The ID of the VPC endpoint with which the subnet will be associated.

static get(resource_name, id, opts=None, subnet_id=None, vpc_endpoint_id=None)

Get an existing VpcEndpointSubnetAssociation resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] subnet_id: The ID of the subnet to be associated with the VPC endpoint. :param pulumi.Input[str] vpc_endpoint_id: The ID of the VPC endpoint with which the subnet will be associated.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcIpv4CidrBlockAssociation(resource_name, opts=None, cidr_block=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to associate additional IPv4 CIDR blocks with a VPC.

When a VPC is created, a primary IPv4 CIDR block for the VPC must be specified. The ec2.VpcIpv4CidrBlockAssociation resource allows further IPv4 CIDR blocks to be added to the VPC.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • cidr_block (pulumi.Input[str]) – The additional IPv4 CIDR block to associate with the VPC.
  • vpc_id (pulumi.Input[str]) – The ID of the VPC to make the association with.
cidr_block = None

The additional IPv4 CIDR block to associate with the VPC.

vpc_id = None

The ID of the VPC to make the association with.

static get(resource_name, id, opts=None, cidr_block=None, vpc_id=None)

Get an existing VpcIpv4CidrBlockAssociation resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] cidr_block: The additional IPv4 CIDR block to associate with the VPC. :param pulumi.Input[str] vpc_id: The ID of the VPC to make the association with.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcPeeringConnection(resource_name, opts=None, accepter=None, auto_accept=None, peer_owner_id=None, peer_region=None, peer_vpc_id=None, requester=None, tags=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage a VPC peering connection.

NOTE on VPC Peering Connections and VPC Peering Connection Options: This provider provides both a standalone VPC Peering Connection Options and a VPC Peering Connection resource with accepter and requester attributes. Do not manage options for the same VPC peering connection in both a VPC Peering Connection resource and a VPC Peering Connection Options resource. Doing so will cause a conflict of options and will overwrite the options. Using a VPC Peering Connection Options resource decouples management of the connection options from management of the VPC Peering Connection and allows options to be set correctly in cross-account scenarios.

Note: For cross-account (requester’s AWS account differs from the accepter’s AWS account) or inter-region VPC Peering Connections use the ec2.VpcPeeringConnection resource to manage the requester’s side of the connection and use the ec2.VpcPeeringConnectionAccepter resource to manage the accepter’s side of the connection.

If both VPCs are not in the same AWS account do not enable the auto_accept attribute. The accepter can manage its side of the connection using the ec2.VpcPeeringConnectionAccepter resource or accept the connection manually using the AWS Management Console, AWS CLI, through SDKs, etc.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • accepter (pulumi.Input[dict]) – An optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that accepts the peering connection (a maximum of one).
  • auto_accept (pulumi.Input[bool]) – Accept the peering (both VPCs need to be in the same AWS account).
  • peer_owner_id (pulumi.Input[str]) – The AWS account ID of the owner of the peer VPC. Defaults to the account ID the [AWS provider][1] is currently connected to.
  • peer_region (pulumi.Input[str]) – The region of the accepter VPC of the [VPC Peering Connection]. auto_accept must be false, and use the ec2.VpcPeeringConnectionAccepter to manage the accepter side.
  • peer_vpc_id (pulumi.Input[str]) – The ID of the VPC with which you are creating the VPC Peering Connection.
  • requester (pulumi.Input[dict]) – A optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that requests the peering connection (a maximum of one).
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The ID of the requester VPC.
accept_status = None

The status of the VPC Peering Connection request.

accepter = None

An optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that accepts the peering connection (a maximum of one).

auto_accept = None

Accept the peering (both VPCs need to be in the same AWS account).

peer_owner_id = None

The AWS account ID of the owner of the peer VPC. Defaults to the account ID the [AWS provider][1] is currently connected to.

peer_region = None

The region of the accepter VPC of the [VPC Peering Connection]. auto_accept must be false, and use the ec2.VpcPeeringConnectionAccepter to manage the accepter side.

peer_vpc_id = None

The ID of the VPC with which you are creating the VPC Peering Connection.

requester = None

A optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that requests the peering connection (a maximum of one).

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The ID of the requester VPC.

static get(resource_name, id, opts=None, accept_status=None, accepter=None, auto_accept=None, peer_owner_id=None, peer_region=None, peer_vpc_id=None, requester=None, tags=None, vpc_id=None)

Get an existing VpcPeeringConnection resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] accept_status: The status of the VPC Peering Connection request. :param pulumi.Input[dict] accepter: An optional configuration block that allows for [VPC Peering Connection]

(http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that accepts the peering connection (a maximum of one).
Parameters:
  • auto_accept (pulumi.Input[bool]) – Accept the peering (both VPCs need to be in the same AWS account).
  • peer_owner_id (pulumi.Input[str]) – The AWS account ID of the owner of the peer VPC. Defaults to the account ID the [AWS provider][1] is currently connected to.
  • peer_region (pulumi.Input[str]) – The region of the accepter VPC of the [VPC Peering Connection]. auto_accept must be false, and use the ec2.VpcPeeringConnectionAccepter to manage the accepter side.
  • peer_vpc_id (pulumi.Input[str]) – The ID of the VPC with which you are creating the VPC Peering Connection.
  • requester (pulumi.Input[dict]) – A optional configuration block that allows for [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options to be set for the VPC that requests the peering connection (a maximum of one).
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The ID of the requester VPC.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpcPeeringConnectionAccepter(resource_name, opts=None, accepter=None, auto_accept=None, requester=None, tags=None, vpc_peering_connection_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage the accepter’s side of a VPC Peering Connection.

When a cross-account (requester’s AWS account differs from the accepter’s AWS account) or an inter-region VPC Peering Connection is created, a VPC Peering Connection resource is automatically created in the accepter’s account. The requester can use the ec2.VpcPeeringConnection resource to manage its side of the connection and the accepter can use the ec2.VpcPeeringConnectionAccepter resource to “adopt” its side of the connection into management.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • accepter (pulumi.Input[dict]) – A configuration block that describes [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options set for the accepter VPC.
  • auto_accept (pulumi.Input[bool]) – Whether or not to accept the peering request. Defaults to false.
  • requester (pulumi.Input[dict]) – A configuration block that describes [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options set for the requester VPC.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_peering_connection_id (pulumi.Input[str]) – The VPC Peering Connection ID to manage.
accept_status = None

The status of the VPC Peering Connection request.

accepter = None

A configuration block that describes [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options set for the accepter VPC.

auto_accept = None

Whether or not to accept the peering request. Defaults to false.

peer_owner_id = None

The AWS account ID of the owner of the requester VPC.

peer_region = None

The region of the accepter VPC.

peer_vpc_id = None

The ID of the requester VPC.

requester = None

A configuration block that describes [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options set for the requester VPC.

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The ID of the accepter VPC.

vpc_peering_connection_id = None

The VPC Peering Connection ID to manage.

static get(resource_name, id, opts=None, accept_status=None, accepter=None, auto_accept=None, peer_owner_id=None, peer_region=None, peer_vpc_id=None, requester=None, tags=None, vpc_id=None, vpc_peering_connection_id=None)

Get an existing VpcPeeringConnectionAccepter resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] accept_status: The status of the VPC Peering Connection request. :param pulumi.Input[dict] accepter: A configuration block that describes [VPC Peering Connection]

Parameters:
  • auto_accept (pulumi.Input[bool]) – Whether or not to accept the peering request. Defaults to false.
  • peer_owner_id (pulumi.Input[str]) – The AWS account ID of the owner of the requester VPC.
  • peer_region (pulumi.Input[str]) – The region of the accepter VPC.
  • peer_vpc_id (pulumi.Input[str]) – The ID of the requester VPC.
  • requester (pulumi.Input[dict]) – A configuration block that describes [VPC Peering Connection] (http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide) options set for the requester VPC.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The ID of the accepter VPC.
  • vpc_peering_connection_id (pulumi.Input[str]) – The VPC Peering Connection ID to manage.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpnConnection(resource_name, opts=None, customer_gateway_id=None, static_routes_only=None, tags=None, transit_gateway_id=None, tunnel1_inside_cidr=None, tunnel1_preshared_key=None, tunnel2_inside_cidr=None, tunnel2_preshared_key=None, type=None, vpn_gateway_id=None, __props__=None, __name__=None, __opts__=None)

Manages an EC2 VPN connection. These objects can be connected to customer gateways, and allow you to establish tunnels between your network and Amazon.

Note: All arguments including tunnel1_preshared_key and tunnel2_preshared_key will be stored in the raw state as plain-text. Read more about sensitive data in state.

Note: The CIDR blocks in the arguments tunnel1_inside_cidr and tunnel2_inside_cidr must have a prefix of /30 and be a part of a specific range. Read more about this in the AWS documentation.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • customer_gateway_id (pulumi.Input[str]) – The ID of the customer gateway.
  • static_routes_only (pulumi.Input[bool]) – Whether the VPN connection uses static routes exclusively. Static routes must be used for devices that don’t support BGP.
  • tags (pulumi.Input[dict]) – Tags to apply to the connection.
  • transit_gateway_id (pulumi.Input[str]) – The ID of the EC2 Transit Gateway.
  • tunnel1_inside_cidr (pulumi.Input[str]) – The CIDR block of the inside IP addresses for the first VPN tunnel.
  • tunnel1_preshared_key (pulumi.Input[str]) – The preshared key of the first VPN tunnel.
  • tunnel2_inside_cidr (pulumi.Input[str]) – The CIDR block of the inside IP addresses for the second VPN tunnel.
  • tunnel2_preshared_key (pulumi.Input[str]) – The preshared key of the second VPN tunnel.
  • type (pulumi.Input[str]) – The type of VPN connection. The only type AWS supports at this time is “ipsec.1”.
  • vpn_gateway_id (pulumi.Input[str]) – The ID of the Virtual Private Gateway.
customer_gateway_configuration = None

The configuration information for the VPN connection’s customer gateway (in the native XML format).

customer_gateway_id = None

The ID of the customer gateway.

static_routes_only = None

Whether the VPN connection uses static routes exclusively. Static routes must be used for devices that don’t support BGP.

tags = None

Tags to apply to the connection.

transit_gateway_attachment_id = None

When associated with an EC2 Transit Gateway (transit_gateway_id argument), the attachment ID.

transit_gateway_id = None

The ID of the EC2 Transit Gateway.

tunnel1_address = None

The public IP address of the first VPN tunnel.

tunnel1_bgp_asn = None

The bgp asn number of the first VPN tunnel.

tunnel1_bgp_holdtime = None

The bgp holdtime of the first VPN tunnel.

tunnel1_cgw_inside_address = None

The RFC 6890 link-local address of the first VPN tunnel (Customer Gateway Side).

tunnel1_inside_cidr = None

The CIDR block of the inside IP addresses for the first VPN tunnel.

tunnel1_preshared_key = None

The preshared key of the first VPN tunnel.

tunnel1_vgw_inside_address = None

The RFC 6890 link-local address of the first VPN tunnel (VPN Gateway Side).

tunnel2_address = None

The public IP address of the second VPN tunnel.

tunnel2_bgp_asn = None

The bgp asn number of the second VPN tunnel.

tunnel2_bgp_holdtime = None

The bgp holdtime of the second VPN tunnel.

tunnel2_cgw_inside_address = None

The RFC 6890 link-local address of the second VPN tunnel (Customer Gateway Side).

tunnel2_inside_cidr = None

The CIDR block of the inside IP addresses for the second VPN tunnel.

tunnel2_preshared_key = None

The preshared key of the second VPN tunnel.

tunnel2_vgw_inside_address = None

The RFC 6890 link-local address of the second VPN tunnel (VPN Gateway Side).

type = None

The type of VPN connection. The only type AWS supports at this time is “ipsec.1”.

vpn_gateway_id = None

The ID of the Virtual Private Gateway.

static get(resource_name, id, opts=None, customer_gateway_configuration=None, customer_gateway_id=None, routes=None, static_routes_only=None, tags=None, transit_gateway_attachment_id=None, transit_gateway_id=None, tunnel1_address=None, tunnel1_bgp_asn=None, tunnel1_bgp_holdtime=None, tunnel1_cgw_inside_address=None, tunnel1_inside_cidr=None, tunnel1_preshared_key=None, tunnel1_vgw_inside_address=None, tunnel2_address=None, tunnel2_bgp_asn=None, tunnel2_bgp_holdtime=None, tunnel2_cgw_inside_address=None, tunnel2_inside_cidr=None, tunnel2_preshared_key=None, tunnel2_vgw_inside_address=None, type=None, vgw_telemetries=None, vpn_gateway_id=None)

Get an existing VpnConnection resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] customer_gateway_configuration: The configuration information for the VPN connection’s customer gateway (in the native XML format). :param pulumi.Input[str] customer_gateway_id: The ID of the customer gateway. :param pulumi.Input[bool] static_routes_only: Whether the VPN connection uses static routes exclusively. Static routes must be used for devices that don’t support BGP. :param pulumi.Input[dict] tags: Tags to apply to the connection. :param pulumi.Input[str] transit_gateway_attachment_id: When associated with an EC2 Transit Gateway (transit_gateway_id argument), the attachment ID. :param pulumi.Input[str] transit_gateway_id: The ID of the EC2 Transit Gateway. :param pulumi.Input[str] tunnel1_address: The public IP address of the first VPN tunnel. :param pulumi.Input[str] tunnel1_bgp_asn: The bgp asn number of the first VPN tunnel. :param pulumi.Input[float] tunnel1_bgp_holdtime: The bgp holdtime of the first VPN tunnel. :param pulumi.Input[str] tunnel1_cgw_inside_address: The RFC 6890 link-local address of the first VPN tunnel (Customer Gateway Side). :param pulumi.Input[str] tunnel1_inside_cidr: The CIDR block of the inside IP addresses for the first VPN tunnel. :param pulumi.Input[str] tunnel1_preshared_key: The preshared key of the first VPN tunnel. :param pulumi.Input[str] tunnel1_vgw_inside_address: The RFC 6890 link-local address of the first VPN tunnel (VPN Gateway Side). :param pulumi.Input[str] tunnel2_address: The public IP address of the second VPN tunnel. :param pulumi.Input[str] tunnel2_bgp_asn: The bgp asn number of the second VPN tunnel. :param pulumi.Input[float] tunnel2_bgp_holdtime: The bgp holdtime of the second VPN tunnel. :param pulumi.Input[str] tunnel2_cgw_inside_address: The RFC 6890 link-local address of the second VPN tunnel (Customer Gateway Side). :param pulumi.Input[str] tunnel2_inside_cidr: The CIDR block of the inside IP addresses for the second VPN tunnel. :param pulumi.Input[str] tunnel2_preshared_key: The preshared key of the second VPN tunnel. :param pulumi.Input[str] tunnel2_vgw_inside_address: The RFC 6890 link-local address of the second VPN tunnel (VPN Gateway Side). :param pulumi.Input[str] type: The type of VPN connection. The only type AWS supports at this time is “ipsec.1”. :param pulumi.Input[str] vpn_gateway_id: The ID of the Virtual Private Gateway.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpnConnectionRoute(resource_name, opts=None, destination_cidr_block=None, vpn_connection_id=None, __props__=None, __name__=None, __opts__=None)

Provides a static route between a VPN connection and a customer gateway.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • destination_cidr_block (pulumi.Input[str]) – The CIDR block associated with the local subnet of the customer network.
  • vpn_connection_id (pulumi.Input[str]) – The ID of the VPN connection.
destination_cidr_block = None

The CIDR block associated with the local subnet of the customer network.

vpn_connection_id = None

The ID of the VPN connection.

static get(resource_name, id, opts=None, destination_cidr_block=None, vpn_connection_id=None)

Get an existing VpnConnectionRoute resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] destination_cidr_block: The CIDR block associated with the local subnet of the customer network. :param pulumi.Input[str] vpn_connection_id: The ID of the VPN connection.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpnGateway(resource_name, opts=None, amazon_side_asn=None, availability_zone=None, tags=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to create a VPC VPN Gateway.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • amazon_side_asn (pulumi.Input[str]) – The Autonomous System Number (ASN) for the Amazon side of the gateway. If you don’t specify an ASN, the virtual private gateway is created with the default ASN.
  • availability_zone (pulumi.Input[str]) – The Availability Zone for the virtual private gateway.
  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.
  • vpc_id (pulumi.Input[str]) – The VPC ID to create in.
amazon_side_asn = None

The Autonomous System Number (ASN) for the Amazon side of the gateway. If you don’t specify an ASN, the virtual private gateway is created with the default ASN.

availability_zone = None

The Availability Zone for the virtual private gateway.

tags = None

A mapping of tags to assign to the resource.

vpc_id = None

The VPC ID to create in.

static get(resource_name, id, opts=None, amazon_side_asn=None, availability_zone=None, tags=None, vpc_id=None)

Get an existing VpnGateway resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] amazon_side_asn: The Autonomous System Number (ASN) for the Amazon side of the gateway. If you don’t specify an ASN, the virtual private gateway is created with the default ASN. :param pulumi.Input[str] availability_zone: The Availability Zone for the virtual private gateway. :param pulumi.Input[dict] tags: A mapping of tags to assign to the resource. :param pulumi.Input[str] vpc_id: The VPC ID to create in.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpnGatewayAttachment(resource_name, opts=None, vpc_id=None, vpn_gateway_id=None, __props__=None, __name__=None, __opts__=None)

Provides a Virtual Private Gateway attachment resource, allowing for an existing hardware VPN gateway to be attached and/or detached from a VPC.

Note: The ec2.VpnGateway resource can also automatically attach the Virtual Private Gateway it creates to an existing VPC by setting the vpc_id attribute accordingly.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • vpc_id (pulumi.Input[str]) – The ID of the VPC.
  • vpn_gateway_id (pulumi.Input[str]) – The ID of the Virtual Private Gateway.
vpc_id = None

The ID of the VPC.

vpn_gateway_id = None

The ID of the Virtual Private Gateway.

static get(resource_name, id, opts=None, vpc_id=None, vpn_gateway_id=None)

Get an existing VpnGatewayAttachment resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] vpc_id: The ID of the VPC. :param pulumi.Input[str] vpn_gateway_id: The ID of the Virtual Private Gateway.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_aws.ec2.VpnGatewayRoutePropagation(resource_name, opts=None, route_table_id=None, vpn_gateway_id=None, __props__=None, __name__=None, __opts__=None)

Requests automatic route propagation between a VPN gateway and a route table.

Note: This resource should not be used with a route table that has the propagating_vgws argument set. If that argument is set, any route propagation not explicitly listed in its value will be removed.
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • route_table_id (pulumi.Input[str]) – The id of the ec2.RouteTable to propagate routes into.
  • vpn_gateway_id (pulumi.Input[str]) – The id of the ec2.VpnGateway to propagate routes from.
route_table_id = None

The id of the ec2.RouteTable to propagate routes into.

vpn_gateway_id = None

The id of the ec2.VpnGateway to propagate routes from.

static get(resource_name, id, opts=None, route_table_id=None, vpn_gateway_id=None)

Get an existing VpnGatewayRoutePropagation resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] route_table_id: The id of the ec2.RouteTable to propagate routes into. :param pulumi.Input[str] vpn_gateway_id: The id of the ec2.VpnGateway to propagate routes from.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
pulumi_aws.ec2.get_customer_gateway(filters=None, id=None, tags=None, opts=None)

Get an existing AWS Customer Gateway.

pulumi_aws.ec2.get_instance(filters=None, get_password_data=None, get_user_data=None, instance_id=None, instance_tags=None, tags=None, opts=None)

Use this data source to get the ID of an Amazon EC2 Instance for use in other resources.

pulumi_aws.ec2.get_instances(filters=None, instance_state_names=None, instance_tags=None, opts=None)
pulumi_aws.ec2.get_internet_gateway(filters=None, internet_gateway_id=None, tags=None, opts=None)

ec2.InternetGateway provides details about a specific Internet Gateway.

pulumi_aws.ec2.get_launch_configuration(name=None, opts=None)

Provides information about a Launch Configuration.

pulumi_aws.ec2.get_launch_template(name=None, tags=None, opts=None)

Provides information about a Launch Template.

pulumi_aws.ec2.get_nat_gateway(filters=None, id=None, state=None, subnet_id=None, tags=None, vpc_id=None, opts=None)

Provides details about a specific Nat Gateway.

pulumi_aws.ec2.get_network_interface(filters=None, id=None, tags=None, opts=None)

Use this data source to get information about a Network Interface.

pulumi_aws.ec2.get_route(destination_cidr_block=None, destination_ipv6_cidr_block=None, egress_only_gateway_id=None, gateway_id=None, instance_id=None, nat_gateway_id=None, network_interface_id=None, route_table_id=None, transit_gateway_id=None, vpc_peering_connection_id=None, opts=None)

ec2.Route provides details about a specific Route.

This resource can prove useful when finding the resource associated with a CIDR. For example, finding the peering connection associated with a CIDR value.

pulumi_aws.ec2.get_route_table(filters=None, route_table_id=None, subnet_id=None, tags=None, vpc_id=None, opts=None)

ec2.RouteTable provides details about a specific Route Table.

This resource can prove useful when a module accepts a Subnet id as an input variable and needs to, for example, add a route in the Route Table.

pulumi_aws.ec2.get_route_tables(filters=None, tags=None, vpc_id=None, opts=None)

This resource can be useful for getting back a list of route table ids to be referenced elsewhere.

pulumi_aws.ec2.get_security_group(filters=None, id=None, name=None, tags=None, vpc_id=None, opts=None)

ec2.SecurityGroup provides details about a specific Security Group.

This resource can prove useful when a module accepts a Security Group id as an input variable and needs to, for example, determine the id of the VPC that the security group belongs to.

pulumi_aws.ec2.get_security_groups(filters=None, tags=None, opts=None)

Use this data source to get IDs and VPC membership of Security Groups that are created outside of this provider.

pulumi_aws.ec2.get_subnet(availability_zone=None, availability_zone_id=None, cidr_block=None, default_for_az=None, filters=None, id=None, ipv6_cidr_block=None, state=None, tags=None, vpc_id=None, opts=None)

ec2.Subnet provides details about a specific VPC subnet.

This resource can prove useful when a module accepts a subnet id as an input variable and needs to, for example, determine the id of the VPC that the subnet belongs to.

pulumi_aws.ec2.get_subnet_ids(filters=None, tags=None, vpc_id=None, opts=None)

ec2.getSubnetIds provides a list of ids for a vpc_id

This resource can be useful for getting back a list of subnet ids for a vpc.

pulumi_aws.ec2.get_vpc(cidr_block=None, default=None, dhcp_options_id=None, filters=None, id=None, state=None, tags=None, opts=None)

ec2.Vpc provides details about a specific VPC.

This resource can prove useful when a module accepts a vpc id as an input variable and needs to, for example, determine the CIDR block of that VPC.

pulumi_aws.ec2.get_vpc_dhcp_options(dhcp_options_id=None, filters=None, tags=None, opts=None)

Retrieve information about an EC2 DHCP Options configuration.

pulumi_aws.ec2.get_vpc_endpoint(id=None, service_name=None, state=None, tags=None, vpc_id=None, opts=None)

The VPC Endpoint data source provides details about a specific VPC endpoint.

pulumi_aws.ec2.get_vpc_endpoint_service(service=None, service_name=None, tags=None, opts=None)

The VPC Endpoint Service data source details about a specific service that can be specified when creating a VPC endpoint within the region configured in the provider.

pulumi_aws.ec2.get_vpc_peering_connection(cidr_block=None, filters=None, id=None, owner_id=None, peer_cidr_block=None, peer_owner_id=None, peer_region=None, peer_vpc_id=None, region=None, status=None, tags=None, vpc_id=None, opts=None)

The VPC Peering Connection data source provides details about a specific VPC peering connection.

pulumi_aws.ec2.get_vpcs(filters=None, tags=None, opts=None)

This resource can be useful for getting back a list of VPC Ids for a region.

The following example retrieves a list of VPC Ids with a custom tag of service set to a value of “production”.

pulumi_aws.ec2.get_vpn_gateway(amazon_side_asn=None, attached_vpc_id=None, availability_zone=None, filters=None, id=None, state=None, tags=None, opts=None)

The VPN Gateway data source provides details about a specific VPN gateway.