Fork me on GitHub

Module ec2

@pulumi/aws > ec2

Index

ec2/ami.ts ec2/amiCopy.ts ec2/amiFromInstance.ts ec2/amiLaunchPermission.ts ec2/customerGateway.ts ec2/defaultNetworkAcl.ts ec2/defaultRouteTable.ts ec2/defaultSecurityGroup.ts ec2/defaultSubnet.ts ec2/defaultVpc.ts ec2/defaultVpcDhcpOptions.ts ec2/egressOnlyInternetGateway.ts ec2/eip.ts ec2/eipAssociation.ts ec2/flowLog.ts ec2/getInstance.ts ec2/getInstances.ts ec2/getInternetGateway.ts ec2/getLaunchConfiguration.ts ec2/getNatGateway.ts ec2/getNetworkAcls.ts ec2/getNetworkInterface.ts ec2/getNetworkInterfaces.ts ec2/getRoute.ts ec2/getRouteTable.ts ec2/getRouteTables.ts ec2/getSecurityGroup.ts ec2/getSecurityGroups.ts ec2/getSubnet.ts ec2/getSubnetIds.ts ec2/getVpc.ts ec2/getVpcDhcpOptions.ts ec2/getVpcEndpoint.ts ec2/getVpcEndpointService.ts ec2/getVpcPeeringConnection.ts ec2/getVpcs.ts ec2/getVpnGateway.ts ec2/instance.ts ec2/instanceType.ts ec2/internetGateway.ts ec2/keyPair.ts ec2/launchConfiguration.ts ec2/launchTemplate.ts ec2/mainRouteTableAssociation.ts ec2/natGateway.ts ec2/networkAcl.ts ec2/networkAclRule.ts ec2/networkInterface.ts ec2/networkInterfaceAttachment.ts ec2/networkInterfaceSecurityGroupAttachment.ts ec2/peeringConnectionOptions.ts ec2/placementGroup.ts ec2/proxyProtocolPolicy.ts ec2/route.ts ec2/routeTable.ts ec2/routeTableAssociation.ts ec2/securityGroup.ts ec2/securityGroupRule.ts ec2/snapshotCreateVolumePermission.ts ec2/spotDatafeedSubscription.ts ec2/spotFleetRequest.ts ec2/spotInstanceRequest.ts ec2/subnet.ts ec2/volumeAttachment.ts ec2/vpc.ts ec2/vpcDhcpOptions.ts ec2/vpcDhcpOptionsAssociation.ts ec2/vpcEndpoint.ts ec2/vpcEndpointConnectionNotification.ts ec2/vpcEndpointRouteTableAssociation.ts ec2/vpcEndpointService.ts ec2/vpcEndpointServiceAllowedPrinciple.ts ec2/vpcEndpointSubnetAssociation.ts ec2/vpcIpv4CidrBlockAssociation.ts ec2/vpcPeeringConnection.ts ec2/vpcPeeringConnectionAccepter.ts ec2/vpnConnection.ts ec2/vpnConnectionRoute.ts ec2/vpnGateway.ts ec2/vpnGatewayAttachment.ts ec2/vpnGatewayRoutePropagation.ts

class Ami

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 aws_ami_copy instead.

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

constructor

new Ami(name: string, args?: AmiArgs, opts?: pulumi.CustomResourceOptions)

Create a Ami resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AmiState): Ami

Get an existing Ami resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property architecture

public architecture: pulumi.Output<string | undefined>;

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

property description

public description: pulumi.Output<string | undefined>;

A longer, human-readable description for the AMI.

property ebsBlockDevices

public ebsBlockDevices: pulumi.Output<{ ... }[]>;

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

property enaSupport

public enaSupport: pulumi.Output<boolean | undefined>;

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

property ephemeralBlockDevices

public ephemeralBlockDevices: pulumi.Output<{ ... }[]>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageLocation

public imageLocation: pulumi.Output<string>;

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

property kernelId

public kernelId: pulumi.Output<string | undefined>;

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

property manageEbsSnapshots

public manageEbsSnapshots: pulumi.Output<boolean>;

property name

public name: pulumi.Output<string>;

A region-unique name for the AMI.

property ramdiskId

public ramdiskId: pulumi.Output<string | undefined>;

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

property rootDeviceName

public rootDeviceName: pulumi.Output<string | undefined>;

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

property rootSnapshotId

public rootSnapshotId: pulumi.Output<string>;

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

property sriovNetSupport

public sriovNetSupport: pulumi.Output<string | undefined>;

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

property tags

public tags: pulumi.Output<{ ... } | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property virtualizationType

public virtualizationType: pulumi.Output<string | undefined>;

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.

class AmiCopy

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.

constructor

new AmiCopy(name: string, args: AmiCopyArgs, opts?: pulumi.CustomResourceOptions)

Create a AmiCopy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AmiCopyState): AmiCopy

Get an existing AmiCopy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property architecture

public architecture: pulumi.Output<string>;

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

property description

public description: pulumi.Output<string | undefined>;

A longer, human-readable description for the AMI.

property ebsBlockDevices

public ebsBlockDevices: pulumi.Output<{ ... }[]>;

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

property enaSupport

public enaSupport: pulumi.Output<boolean | undefined>;

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

property encrypted

public encrypted: pulumi.Output<boolean | undefined>;

Boolean controlling whether the created EBS volumes will be encrypted. Can’t be used with snapshot_id.

property ephemeralBlockDevices

public ephemeralBlockDevices: pulumi.Output<{ ... }[]>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageLocation

public imageLocation: pulumi.Output<string>;

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

property kernelId

public kernelId: pulumi.Output<string>;

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

property kmsKeyId

public kmsKeyId: pulumi.Output<string>;

The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when encrypting the snapshots of an image during a copy operation. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used

property manageEbsSnapshots

public manageEbsSnapshots: pulumi.Output<boolean>;

property name

public name: pulumi.Output<string>;

A region-unique name for the AMI.

property ramdiskId

public ramdiskId: pulumi.Output<string>;

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

property rootDeviceName

public rootDeviceName: pulumi.Output<string>;

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

property rootSnapshotId

public rootSnapshotId: pulumi.Output<string>;

property sourceAmiId

public sourceAmiId: pulumi.Output<string>;

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

property sourceAmiRegion

public sourceAmiRegion: pulumi.Output<string>;

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.

property sriovNetSupport

public sriovNetSupport: pulumi.Output<string>;

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

property tags

public tags: pulumi.Output<Tags | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property virtualizationType

public virtualizationType: pulumi.Output<string>;

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.

class AmiFromInstance

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.

constructor

new AmiFromInstance(name: string, args: AmiFromInstanceArgs, opts?: pulumi.CustomResourceOptions)

Create a AmiFromInstance resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AmiFromInstanceState): AmiFromInstance

Get an existing AmiFromInstance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property architecture

public architecture: pulumi.Output<string>;

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

property description

public description: pulumi.Output<string | undefined>;

A longer, human-readable description for the AMI.

property ebsBlockDevices

public ebsBlockDevices: pulumi.Output<{ ... }[]>;

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

property enaSupport

public enaSupport: pulumi.Output<boolean | undefined>;

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

property ephemeralBlockDevices

public ephemeralBlockDevices: pulumi.Output<{ ... }[]>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageLocation

public imageLocation: pulumi.Output<string>;

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

property kernelId

public kernelId: pulumi.Output<string>;

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

property manageEbsSnapshots

public manageEbsSnapshots: pulumi.Output<boolean>;

property name

public name: pulumi.Output<string>;

A region-unique name for the AMI.

property ramdiskId

public ramdiskId: pulumi.Output<string>;

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

property rootDeviceName

public rootDeviceName: pulumi.Output<string>;

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

property rootSnapshotId

public rootSnapshotId: pulumi.Output<string>;

property snapshotWithoutReboot

public snapshotWithoutReboot: pulumi.Output<boolean | undefined>;

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.

property sourceInstanceId

public sourceInstanceId: pulumi.Output<string>;

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

property sriovNetSupport

public sriovNetSupport: pulumi.Output<string>;

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

property tags

public tags: pulumi.Output<{ ... } | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property virtualizationType

public virtualizationType: pulumi.Output<string>;

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.

class AmiLaunchPermission

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

constructor

new AmiLaunchPermission(name: string, args: AmiLaunchPermissionArgs, opts?: pulumi.CustomResourceOptions)

Create a AmiLaunchPermission resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AmiLaunchPermissionState): AmiLaunchPermission

Get an existing AmiLaunchPermission resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property accountId

public accountId: pulumi.Output<string>;

An AWS Account ID to add launch permissions.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageId

public imageId: pulumi.Output<string>;

A region-unique name for the AMI.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class CustomerGateway

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.

constructor

new CustomerGateway(name: string, args: CustomerGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a CustomerGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CustomerGatewayState): CustomerGateway

Get an existing CustomerGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property bgpAsn

public bgpAsn: pulumi.Output<number>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipAddress

public ipAddress: pulumi.Output<string>;

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

property tags

public tags: pulumi.Output<Tags | undefined>;

Tags to apply to the gateway.

property type

public type: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class DefaultNetworkAcl

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 aws_default_network_acl behaves differently from normal resources, in that Terraform 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 Terraform 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 aws_network_acl_rule resource.

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

constructor

new DefaultNetworkAcl(name: string, args: DefaultNetworkAclArgs, opts?: pulumi.CustomResourceOptions)

Create a DefaultNetworkAcl resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DefaultNetworkAclState): DefaultNetworkAcl

Get an existing DefaultNetworkAcl resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property defaultNetworkAclId

public defaultNetworkAclId: pulumi.Output<string>;

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

property egress

public egress: pulumi.Output<{ ... }[] | undefined>;

Specifies an egress rule. Parameters defined below.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ingress

public ingress: pulumi.Output<{ ... }[] | undefined>;

Specifies an ingress rule. Parameters defined below.

property subnetIds

public subnetIds: pulumi.Output<string[] | undefined>;

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

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The ID of the associated VPC

class DefaultRouteTable

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 aws_default_route_table to manage the default route table and use the aws_main_route_table_association, due to possible conflict in routes.

The aws_default_route_table behaves differently from normal resources, in that Terraform 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 Terraform 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 Terraform, see our documentation on [aws_route_table][tf-route-tables].

~> NOTE on Route Tables and Routes: Terraform 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.

constructor

new DefaultRouteTable(name: string, args: DefaultRouteTableArgs, opts?: pulumi.CustomResourceOptions)

Create a DefaultRouteTable resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DefaultRouteTableState): DefaultRouteTable

Get an existing DefaultRouteTable resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property defaultRouteTableId

public defaultRouteTableId: pulumi.Output<string>;

The ID of the Default Routing Table.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property propagatingVgws

public propagatingVgws: pulumi.Output<string[] | undefined>;

A list of virtual gateways for propagation.

property routes

public routes: pulumi.Output<{ ... }[]>;

A list of route objects. Their keys are documented below.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

class DefaultSecurityGroup

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 aws_default_security_group behaves differently from normal resources, in that Terraform 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 Terraform 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 aws_security_group_rule resource.

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

constructor

new DefaultSecurityGroup(name: string, args?: DefaultSecurityGroupArgs, opts?: pulumi.CustomResourceOptions)

Create a DefaultSecurityGroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DefaultSecurityGroupState): DefaultSecurityGroup

Get an existing DefaultSecurityGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property arn

public arn: pulumi.Output<string>;

property egress

public egress: pulumi.Output<{ ... }[] | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ingress

public ingress: pulumi.Output<{ ... }[] | undefined>;

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

property name

public name: pulumi.Output<string>;

The name of the security group

property ownerId

public ownerId: pulumi.Output<string>;

The owner ID.

property revokeRulesOnDelete

public revokeRulesOnDelete: pulumi.Output<boolean | undefined>;

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

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

class DefaultSubnet

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

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

constructor

new DefaultSubnet(name: string, args: DefaultSubnetArgs, opts?: pulumi.CustomResourceOptions)

Create a DefaultSubnet resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DefaultSubnetState): DefaultSubnet

Get an existing DefaultSubnet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property assignIpv6AddressOnCreation

public assignIpv6AddressOnCreation: pulumi.Output<boolean>;

property availabilityZone

public availabilityZone: pulumi.Output<string>;

property cidrBlock

public cidrBlock: pulumi.Output<string>;

The CIDR block for the subnet.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipv6CidrBlock

public ipv6CidrBlock: pulumi.Output<string>;

The IPv6 CIDR block.

property ipv6CidrBlockAssociationId

public ipv6CidrBlockAssociationId: pulumi.Output<string>;

property mapPublicIpOnLaunch

public mapPublicIpOnLaunch: pulumi.Output<boolean>;

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

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The VPC ID.

class DefaultVpc

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 aws_default_vpc behaves differently from normal resources, in that Terraform does not create this resource, but instead “adopts” it into management.

constructor

new DefaultVpc(name: string, args?: DefaultVpcArgs, opts?: pulumi.CustomResourceOptions)

Create a DefaultVpc resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DefaultVpcState): DefaultVpc

Get an existing DefaultVpc resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property arn

public arn: pulumi.Output<string>;

Amazon Resource Name (ARN) of VPC

property assignGeneratedIpv6CidrBlock

public assignGeneratedIpv6CidrBlock: pulumi.Output<boolean>;

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

property cidrBlock

public cidrBlock: pulumi.Output<string>;

The CIDR block of the VPC

property defaultNetworkAclId

public defaultNetworkAclId: pulumi.Output<string>;

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

property defaultRouteTableId

public defaultRouteTableId: pulumi.Output<string>;

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

property defaultSecurityGroupId

public defaultSecurityGroupId: pulumi.Output<string>;

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

property dhcpOptionsId

public dhcpOptionsId: pulumi.Output<string>;

property enableClassiclink

public enableClassiclink: pulumi.Output<boolean>;

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

property enableClassiclinkDnsSupport

public enableClassiclinkDnsSupport: pulumi.Output<boolean>;

property enableDnsHostnames

public enableDnsHostnames: pulumi.Output<boolean>;

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

property enableDnsSupport

public enableDnsSupport: pulumi.Output<boolean | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceTenancy

public instanceTenancy: pulumi.Output<string>;

Tenancy of instances spin up within VPC.

property ipv6AssociationId

public ipv6AssociationId: pulumi.Output<string>;

The association ID for the IPv6 CIDR block of the VPC

property ipv6CidrBlock

public ipv6CidrBlock: pulumi.Output<string>;

The IPv6 CIDR block of the VPC

property mainRouteTableId

public mainRouteTableId: pulumi.Output<string>;

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 aws_main_route_table_association

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class DefaultVpcDhcpOptions

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 aws_default_vpc_dhcp_options behaves differently from normal resources, in that Terraform does not create this resource, but instead “adopts” it into management.

constructor

new DefaultVpcDhcpOptions(name: string, args?: DefaultVpcDhcpOptionsArgs, opts?: pulumi.CustomResourceOptions)

Create a DefaultVpcDhcpOptions resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DefaultVpcDhcpOptionsState): DefaultVpcDhcpOptions

Get an existing DefaultVpcDhcpOptions resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property domainName

public domainName: pulumi.Output<string>;

property domainNameServers

public domainNameServers: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property netbiosNameServers

public netbiosNameServers: pulumi.Output<string[] | undefined>;

List of NETBIOS name servers.

property netbiosNodeType

public netbiosNodeType: pulumi.Output<string | undefined>;

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.

property ntpServers

public ntpServers: pulumi.Output<string>;

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class EgressOnlyInternetGateway

[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.

constructor

new EgressOnlyInternetGateway(name: string, args: EgressOnlyInternetGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a EgressOnlyInternetGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: EgressOnlyInternetGatewayState): EgressOnlyInternetGateway

Get an existing EgressOnlyInternetGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The VPC ID to create in.

class Eip

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 aws_lb or aws_nat_gateway resources. Instead use the allocation_id available in those resources to allow AWS to manage the association, otherwise you will see AuthFailure errors.

constructor

new Eip(name: string, args?: EipArgs, opts?: pulumi.CustomResourceOptions)

Create a Eip resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: EipState): Eip

Get an existing Eip resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allocationId

public allocationId: pulumi.Output<string>;

property associateWithPrivateIp

public associateWithPrivateIp: pulumi.Output<string | undefined>;

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.

property associationId

public associationId: pulumi.Output<string>;

property domain

public domain: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instance

public instance: pulumi.Output<string>;

EC2 instance ID.

property networkInterface

public networkInterface: pulumi.Output<string>;

Network interface ID to associate with.

property privateIp

public privateIp: pulumi.Output<string>;

Contains the private IP address (if in VPC).

property publicIp

public publicIp: pulumi.Output<string>;

Contains the public IP address.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpc

public vpc: pulumi.Output<boolean>;

Boolean if the EIP is in a VPC or not.

class EipAssociation

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 aws_lb or aws_nat_gateway resources. Instead use the allocation_id available in those resources to allow AWS to manage the association, otherwise you will see AuthFailure errors.

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

constructor

new EipAssociation(name: string, args?: EipAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a EipAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: EipAssociationState): EipAssociation

Get an existing EipAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allocationId

public allocationId: pulumi.Output<string>;

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

property allowReassociation

public allowReassociation: pulumi.Output<boolean | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceId

public instanceId: pulumi.Output<string>;

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.

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

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

property privateIpAddress

public privateIpAddress: pulumi.Output<string>;

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.

property publicIp

public publicIp: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class FlowLog

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.

constructor

new FlowLog(name: string, args: FlowLogArgs, opts?: pulumi.CustomResourceOptions)

Create a FlowLog resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FlowLogState): FlowLog

Get an existing FlowLog resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property eniId

public eniId: pulumi.Output<string | undefined>;

Elastic Network Interface ID to attach to

property iamRoleArn

public iamRoleArn: pulumi.Output<string>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property logGroupName

public logGroupName: pulumi.Output<string>;

The name of the CloudWatch log group

property subnetId

public subnetId: pulumi.Output<string | undefined>;

Subnet ID to attach to

property trafficType

public trafficType: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string | undefined>;

VPC ID to attach to

class Instance

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

constructor

new Instance(name: string, args: InstanceArgs, opts?: pulumi.CustomResourceOptions)

Create a Instance resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceState): Instance

Get an existing Instance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property ami

public ami: pulumi.Output<string>;

The AMI to use for the instance.

property associatePublicIpAddress

public associatePublicIpAddress: pulumi.Output<boolean>;

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

property availabilityZone

public availabilityZone: pulumi.Output<string>;

The AZ to start the instance in.

property cpuCoreCount

public cpuCoreCount: pulumi.Output<number>;

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.

property cpuThreadsPerCore

public cpuThreadsPerCore: pulumi.Output<number>;

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

property creditSpecification

public creditSpecification: pulumi.Output<{ ... } | undefined>;

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

property disableApiTermination

public disableApiTermination: pulumi.Output<boolean | undefined>;

If true, enables EC2 Instance Termination Protection

property ebsBlockDevices

public ebsBlockDevices: pulumi.Output<{ ... }[]>;

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

property ebsOptimized

public ebsOptimized: pulumi.Output<boolean | undefined>;

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.

property ephemeralBlockDevices

public ephemeralBlockDevices: pulumi.Output<{ ... }[]>;

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

property getPasswordData

public getPasswordData: pulumi.Output<boolean | undefined>;

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.

property iamInstanceProfile

public iamInstanceProfile: pulumi.Output<string | undefined>;

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.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceInitiatedShutdownBehavior

public instanceInitiatedShutdownBehavior: pulumi.Output<string | undefined>;

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.

property instanceState

public instanceState: pulumi.Output<string>;

property instanceType

public instanceType: pulumi.Output<InstanceType>;

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

property ipv6AddressCount

public ipv6AddressCount: pulumi.Output<number>;

property ipv6Addresses

public ipv6Addresses: pulumi.Output<string[]>;

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

property keyName

public keyName: pulumi.Output<string>;

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

property monitoring

public monitoring: pulumi.Output<boolean | undefined>;

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

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

The ID of the network interface to attach.

property networkInterfaces

public networkInterfaces: pulumi.Output<{ ... }[]>;

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

property passwordData

public passwordData: pulumi.Output<string>;

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.

property placementGroup

public placementGroup: pulumi.Output<string>;

The Placement Group to start the instance in.

property primaryNetworkInterfaceId

public primaryNetworkInterfaceId: pulumi.Output<string>;

The ID of the instance’s primary network interface.

property privateDns

public privateDns: pulumi.Output<string>;

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

property privateIp

public privateIp: pulumi.Output<string>;

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

property publicDns

public publicDns: pulumi.Output<string>;

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

property publicIp

public publicIp: pulumi.Output<string>;

The public IP address assigned to the instance, if applicable. NOTE: If you are using an aws_eip 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.

property rootBlockDevice

public rootBlockDevice: pulumi.Output<{ ... }>;

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

property securityGroups

public securityGroups: pulumi.Output<string[]>;

A list of security group names to associate with.

property sourceDestCheck

public sourceDestCheck: pulumi.Output<boolean | undefined>;

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

property subnetId

public subnetId: pulumi.Output<string>;

The VPC Subnet ID to launch in.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property tenancy

public tenancy: pulumi.Output<string>;

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.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userData

public userData: pulumi.Output<string | undefined>;

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

property userDataBase64

public userDataBase64: pulumi.Output<string | undefined>;

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.

property volumeTags

public volumeTags: pulumi.Output<{ ... }>;

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

property vpcSecurityGroupIds

public vpcSecurityGroupIds: pulumi.Output<string[]>;

A list of security group IDs to associate with.

class InternetGateway

Provides a resource to create a VPC Internet Gateway.

constructor

new InternetGateway(name: string, args?: InternetGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a InternetGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InternetGatewayState): InternetGateway

Get an existing InternetGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string | undefined>;

The VPC ID to create in.

class KeyPair

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

constructor

new KeyPair(name: string, args: KeyPairArgs, opts?: pulumi.CustomResourceOptions)

Create a KeyPair resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: KeyPairState): KeyPair

Get an existing KeyPair resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property fingerprint

public fingerprint: pulumi.Output<string>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property keyName

public keyName: pulumi.Output<string>;

The name for the key pair.

property keyNamePrefix

public keyNamePrefix: pulumi.Output<string | undefined>;

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

property publicKey

public publicKey: pulumi.Output<string>;

The public key material.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class LaunchConfiguration

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

constructor

new LaunchConfiguration(name: string, args: LaunchConfigurationArgs, opts?: pulumi.CustomResourceOptions)

Create a LaunchConfiguration resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: LaunchConfigurationState): LaunchConfiguration

Get an existing LaunchConfiguration resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property associatePublicIpAddress

public associatePublicIpAddress: pulumi.Output<boolean | undefined>;

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

property ebsBlockDevices

public ebsBlockDevices: pulumi.Output<{ ... }[]>;

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

property ebsOptimized

public ebsOptimized: pulumi.Output<boolean>;

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

property enableMonitoring

public enableMonitoring: pulumi.Output<boolean | undefined>;

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

property ephemeralBlockDevices

public ephemeralBlockDevices: pulumi.Output<{ ... }[] | undefined>;

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

property iamInstanceProfile

public iamInstanceProfile: pulumi.Output<string | undefined>;

The IAM instance profile to associate with launched instances.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageId

public imageId: pulumi.Output<string>;

The EC2 image ID to launch.

property instanceType

public instanceType: pulumi.Output<string>;

The size of instance to launch.

property keyName

public keyName: pulumi.Output<string>;

The key name that should be used for the instance.

property name

public name: pulumi.Output<string>;

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

property namePrefix

public namePrefix: pulumi.Output<string | undefined>;

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

property placementTenancy

public placementTenancy: pulumi.Output<string | undefined>;

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

property rootBlockDevice

public rootBlockDevice: pulumi.Output<{ ... }>;

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

property securityGroups

public securityGroups: pulumi.Output<string[] | undefined>;

A list of associated security group IDS.

property spotPrice

public spotPrice: pulumi.Output<string | undefined>;

The maximum price to use for reserving spot instances.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userData

public userData: pulumi.Output<string | undefined>;

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

property userDataBase64

public userDataBase64: pulumi.Output<string | undefined>;

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.

property vpcClassicLinkId

public vpcClassicLinkId: pulumi.Output<string | undefined>;

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

property vpcClassicLinkSecurityGroups

public vpcClassicLinkSecurityGroups: pulumi.Output<string[] | undefined>;

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

class LaunchTemplate

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

constructor

new LaunchTemplate(name: string, args?: LaunchTemplateArgs, opts?: pulumi.CustomResourceOptions)

Create a LaunchTemplate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: LaunchTemplateState): LaunchTemplate

Get an existing LaunchTemplate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property arn

public arn: pulumi.Output<string>;

The Amazon Resource Name (ARN) of the instance profile.

property blockDeviceMappings

public blockDeviceMappings: pulumi.Output<{ ... }[] | undefined>;

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

property creditSpecification

public creditSpecification: pulumi.Output<{ ... } | undefined>;

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

property defaultVersion

public defaultVersion: pulumi.Output<number>;

The default version of the launch template.

property description

public description: pulumi.Output<string | undefined>;

Description of the network interface.

property disableApiTermination

public disableApiTermination: pulumi.Output<boolean | undefined>;

If true, enables EC2 Instance Termination Protection

property ebsOptimized

public ebsOptimized: pulumi.Output<boolean | undefined>;

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

property elasticGpuSpecifications

public elasticGpuSpecifications: pulumi.Output<{ ... }[] | undefined>;

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

property iamInstanceProfile

public iamInstanceProfile: pulumi.Output<{ ... } | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageId

public imageId: pulumi.Output<string | undefined>;

The AMI from which to launch the instance.

property instanceInitiatedShutdownBehavior

public instanceInitiatedShutdownBehavior: pulumi.Output<string | undefined>;

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

property instanceMarketOptions

public instanceMarketOptions: pulumi.Output<{ ... } | undefined>;

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

property instanceType

public instanceType: pulumi.Output<string | undefined>;

The type of the instance.

property kernelId

public kernelId: pulumi.Output<string | undefined>;

The kernel ID.

property keyName

public keyName: pulumi.Output<string | undefined>;

The key name to use for the instance.

property latestVersion

public latestVersion: pulumi.Output<number>;

The latest version of the launch template.

property monitoring

public monitoring: pulumi.Output<{ ... } | undefined>;

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

property name

public name: pulumi.Output<string>;

The name of the instance profile.

property namePrefix

public namePrefix: pulumi.Output<string | undefined>;

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

property networkInterfaces

public networkInterfaces: pulumi.Output<{ ... }[] | undefined>;

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

property placement

public placement: pulumi.Output<{ ... } | undefined>;

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

property ramDiskId

public ramDiskId: pulumi.Output<string | undefined>;

The ID of the RAM disk.

property securityGroupNames

public securityGroupNames: pulumi.Output<string[] | undefined>;

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

property tagSpecifications

public tagSpecifications: pulumi.Output<{ ... }[] | undefined>;

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

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userData

public userData: pulumi.Output<string | undefined>;

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

property vpcSecurityGroupIds

public vpcSecurityGroupIds: pulumi.Output<string[] | undefined>;

A list of security group IDs to associate with.

class MainRouteTableAssociation

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

constructor

new MainRouteTableAssociation(name: string, args: MainRouteTableAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a MainRouteTableAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: MainRouteTableAssociationState): MainRouteTableAssociation

Get an existing MainRouteTableAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property originalRouteTableId

public originalRouteTableId: pulumi.Output<string>;

Used internally, see Notes below

property routeTableId

public routeTableId: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

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

class NatGateway

Provides a resource to create a VPC NAT Gateway.

constructor

new NatGateway(name: string, args: NatGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a NatGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NatGatewayState): NatGateway

Get an existing NatGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allocationId

public allocationId: pulumi.Output<string>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

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

property privateIp

public privateIp: pulumi.Output<string>;

The private IP address of the NAT Gateway.

property publicIp

public publicIp: pulumi.Output<string>;

The public IP address of the NAT Gateway.

property subnetId

public subnetId: pulumi.Output<string>;

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

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkAcl

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: Terraform 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.

constructor

new NetworkAcl(name: string, args: NetworkAclArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkAcl resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkAclState): NetworkAcl

Get an existing NetworkAcl resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property egress

public egress: pulumi.Output<{ ... }[]>;

Specifies an egress rule. Parameters defined below.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ingress

public ingress: pulumi.Output<{ ... }[]>;

Specifies an ingress rule. Parameters defined below.

property subnetId

public subnetId: pulumi.Output<string | undefined>;

The ID of the associated Subnet. This attribute is deprecated, please use the subnet_ids attribute instead

property subnetIds

public subnetIds: pulumi.Output<string[]>;

A list of Subnet IDs to apply the ACL to

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The ID of the associated VPC.

class NetworkAclRule

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

~> NOTE on Network ACLs and Network ACL Rules: Terraform 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.

constructor

new NetworkAclRule(name: string, args: NetworkAclRuleArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkAclRule resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkAclRuleState): NetworkAclRule

Get an existing NetworkAclRule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property cidrBlock

public cidrBlock: pulumi.Output<string | undefined>;

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

property egress

public egress: pulumi.Output<boolean | undefined>;

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

property fromPort

public fromPort: pulumi.Output<number | undefined>;

The from port to match.

property icmpCode

public icmpCode: pulumi.Output<string | undefined>;

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

property icmpType

public icmpType: pulumi.Output<string | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipv6CidrBlock

public ipv6CidrBlock: pulumi.Output<string | undefined>;

The IPv6 CIDR block to allow or deny.

property networkAclId

public networkAclId: pulumi.Output<string>;

The ID of the network ACL.

property protocol

public protocol: pulumi.Output<string>;

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

property ruleAction

public ruleAction: pulumi.Output<string>;
Indicates whether to allow or deny the traffic that matches the rule. Accepted values: allow deny

property ruleNumber

public ruleNumber: pulumi.Output<number>;

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

property toPort

public toPort: pulumi.Output<number | undefined>;

The to port to match.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkInterface

Provides an Elastic network interface (ENI) resource.

constructor

new NetworkInterface(name: string, args: NetworkInterfaceArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkInterface resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkInterfaceState): NetworkInterface

Get an existing NetworkInterface resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property attachments

public attachments: pulumi.Output<{ ... }[]>;

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

property description

public description: pulumi.Output<string | undefined>;

A description for the network interface.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property privateDnsName

public privateDnsName: pulumi.Output<string>;

property privateIp

public privateIp: pulumi.Output<string>;

property privateIps

public privateIps: pulumi.Output<string[]>;

List of private IPs to assign to the ENI.

property privateIpsCount

public privateIpsCount: pulumi.Output<number>;

Number of private IPs to assign to the ENI.

property securityGroups

public securityGroups: pulumi.Output<string[]>;

List of security group IDs to assign to the ENI.

property sourceDestCheck

public sourceDestCheck: pulumi.Output<boolean | undefined>;

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

property subnetId

public subnetId: pulumi.Output<string>;

Subnet ID to create the ENI in.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkInterfaceAttachment

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

constructor

new NetworkInterfaceAttachment(name: string, args: NetworkInterfaceAttachmentArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkInterfaceAttachment resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkInterfaceAttachmentState): NetworkInterfaceAttachment

Get an existing NetworkInterfaceAttachment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property attachmentId

public attachmentId: pulumi.Output<string>;

The ENI Attachment ID.

property deviceIndex

public deviceIndex: pulumi.Output<number>;

Network interface index (int).

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceId

public instanceId: pulumi.Output<string>;

Instance ID to attach.

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

ENI ID to attach.

property status

public status: pulumi.Output<string>;

The status of the Network Interface Attachment.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkInterfaceSecurityGroupAttachment

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: Terraform currently provides the capability to assign security groups via the aws_instance and the aws_network_interface 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.

constructor

new NetworkInterfaceSecurityGroupAttachment(name: string, args: NetworkInterfaceSecurityGroupAttachmentArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkInterfaceSecurityGroupAttachment resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkInterfaceSecurityGroupAttachmentState): NetworkInterfaceSecurityGroupAttachment

Get an existing NetworkInterfaceSecurityGroupAttachment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

The ID of the network interface to attach to.

property securityGroupId

public securityGroupId: pulumi.Output<string>;

The ID of the security group.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class PeeringConnectionOptions

Provides a resource to manage VPC peering connection options.

~> NOTE on VPC Peering Connections and VPC Peering Connection Options: Terraform 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:

resource "aws_vpc" "foo" {
  cidr_block = "10.0.0.0/16"
}

resource "aws_vpc" "bar" {
  cidr_block = "10.1.0.0/16"
}

resource "aws_vpc_peering_connection" "foo" {
  vpc_id        = "${aws_vpc.foo.id}"
  peer_vpc_id   = "${aws_vpc.bar.id}"
  auto_accept   = true
}

resource "aws_vpc_peering_connection_options" "foo" {
  vpc_peering_connection_id = "${aws_vpc_peering_connection.foo.id}"

  accepter {
    allow_remote_vpc_dns_resolution = true
  }

  requester {
    allow_vpc_to_remote_classic_link = true
    allow_classic_link_to_remote_vpc = true
  }
}

Basic cross-account usage:

provider "aws" {
  alias = "requester"

  # Requester's credentials.
}

provider "aws" {
  alias = "accepter"

  # Accepter's credentials.
}

resource "aws_vpc" "main" {
  provider = "aws.requester"

  cidr_block = "10.0.0.0/16"

  enable_dns_support   = true
  enable_dns_hostnames = true
}

resource "aws_vpc" "peer" {
  provider = "aws.accepter"

  cidr_block = "10.1.0.0/16"

  enable_dns_support   = true
  enable_dns_hostnames = true
}

data "aws_caller_identity" "peer" {
  provider = "aws.accepter"
}

<h3 class="pdoc-member-header">
<a class="pdoc-child-name" href="https://github.com/pulumi/pulumi-aws/blob/master/sdk/nodejs/ec2/peeringConnectionOptions.ts#L113">constructor</a>
</h3>

```typescript
new PeeringConnectionOptions(name: string, args: PeeringConnectionOptionsArgs, opts?: pulumi.CustomResourceOptions)

Create a PeeringConnectionOptions resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PeeringConnectionOptionsState): PeeringConnectionOptions

Get an existing PeeringConnectionOptions resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property accepter

public accepter: pulumi.Output<{ ... }>;

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).

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property requester

public requester: pulumi.Output<{ ... }>;

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).

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcPeeringConnectionId

public vpcPeeringConnectionId: pulumi.Output<string>;

The ID of the requester VPC peering connection.

class PlacementGroup

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

constructor

new PlacementGroup(name: string, args: PlacementGroupArgs, opts?: pulumi.CustomResourceOptions)

Create a PlacementGroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PlacementGroupState): PlacementGroup

Get an existing PlacementGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The name of the placement group.

property strategy

public strategy: pulumi.Output<string>;

The placement strategy.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class ProxyProtocolPolicy

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

constructor

new ProxyProtocolPolicy(name: string, args: ProxyProtocolPolicyArgs, opts?: pulumi.CustomResourceOptions)

Create a ProxyProtocolPolicy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ProxyProtocolPolicyState): ProxyProtocolPolicy

Get an existing ProxyProtocolPolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instancePorts

public instancePorts: pulumi.Output<string[]>;

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

property loadBalancer

public loadBalancer: pulumi.Output<string>;

The load balancer to which the policy should be attached.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class Route

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

~> NOTE on Route Tables and Routes: Terraform 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.

constructor

new Route(name: string, args: RouteArgs, opts?: pulumi.CustomResourceOptions)

Create a Route resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouteState): Route

Get an existing Route resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property destinationCidrBlock

public destinationCidrBlock: pulumi.Output<string | undefined>;

The destination CIDR block.

property destinationIpv6CidrBlock

public destinationIpv6CidrBlock: pulumi.Output<string | undefined>;

The destination IPv6 CIDR block.

property destinationPrefixListId

public destinationPrefixListId: pulumi.Output<string>;

property egressOnlyGatewayId

public egressOnlyGatewayId: pulumi.Output<string>;

An ID of a VPC Egress Only Internet Gateway.

property gatewayId

public gatewayId: pulumi.Output<string>;

An ID of a VPC internet gateway or a virtual private gateway.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceId

public instanceId: pulumi.Output<string>;

An ID of an EC2 instance.

property instanceOwnerId

public instanceOwnerId: pulumi.Output<string>;

property natGatewayId

public natGatewayId: pulumi.Output<string>;

An ID of a VPC NAT gateway.

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

An ID of a network interface.

property origin

public origin: pulumi.Output<string>;

property routeTableId

public routeTableId: pulumi.Output<string>;

The ID of the routing table.

property state

public state: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcPeeringConnectionId

public vpcPeeringConnectionId: pulumi.Output<string | undefined>;

An ID of a VPC peering connection.

class RouteTable

Provides a resource to create a VPC routing table.

~> NOTE on Route Tables and Routes: Terraform 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 aws_route_table 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 aws_route_table 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 aws_vpn_gateway_route_propagation resource: If the propagating_vgws argument is present, it’s not supported to also define route propagations using aws_vpn_gateway_route_propagation, 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.

constructor

new RouteTable(name: string, args: RouteTableArgs, opts?: pulumi.CustomResourceOptions)

Create a RouteTable resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouteTableState): RouteTable

Get an existing RouteTable resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property propagatingVgws

public propagatingVgws: pulumi.Output<string[]>;

A list of virtual gateways for propagation.

property routes

public routes: pulumi.Output<{ ... }[]>;

A list of route objects. Their keys are documented below.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The VPC ID.

class RouteTableAssociation

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

constructor

new RouteTableAssociation(name: string, args: RouteTableAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a RouteTableAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouteTableAssociationState): RouteTableAssociation

Get an existing RouteTableAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property routeTableId

public routeTableId: pulumi.Output<string>;

The ID of the routing table to associate with.

property subnetId

public subnetId: pulumi.Output<string>;

The subnet ID to create an association.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class SecurityGroup

Provides a security group resource.

~> NOTE on Security Groups and Security Group Rules: Terraform 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.

constructor

new SecurityGroup(name: string, args?: SecurityGroupArgs, opts?: pulumi.CustomResourceOptions)

Create a SecurityGroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SecurityGroupState): SecurityGroup

Get an existing SecurityGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property arn

public arn: pulumi.Output<string>;

The ARN of the security group

property description

public description: pulumi.Output<string>;

Description of this egress rule.

property egress

public egress: pulumi.Output<{ ... }[]>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ingress

public ingress: pulumi.Output<{ ... }[]>;

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

property name

public name: pulumi.Output<string>;

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

property namePrefix

public namePrefix: pulumi.Output<string | undefined>;

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

property ownerId

public ownerId: pulumi.Output<string>;

The owner ID.

property revokeRulesOnDelete

public revokeRulesOnDelete: pulumi.Output<boolean | undefined>;

Instruct Terraform 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

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The VPC ID.

class SecurityGroupRule

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: Terraform 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.

constructor

new SecurityGroupRule(name: string, args: SecurityGroupRuleArgs, opts?: pulumi.CustomResourceOptions)

Create a SecurityGroupRule resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SecurityGroupRuleState): SecurityGroupRule

Get an existing SecurityGroupRule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property cidrBlocks

public cidrBlocks: pulumi.Output<string[] | undefined>;

List of CIDR blocks. Cannot be specified with source_security_group_id.

property description

public description: pulumi.Output<string | undefined>;

Description of the rule.

property fromPort

public fromPort: pulumi.Output<number>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipv6CidrBlocks

public ipv6CidrBlocks: pulumi.Output<string[] | undefined>;

List of IPv6 CIDR blocks.

property prefixListIds

public prefixListIds: pulumi.Output<string[] | undefined>;

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

property protocol

public protocol: pulumi.Output<string>;

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

property securityGroupId

public securityGroupId: pulumi.Output<string>;

The security group to apply this rule to.

property self

public self: pulumi.Output<boolean | undefined>;

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

property sourceSecurityGroupId

public sourceSecurityGroupId: pulumi.Output<string>;

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

property toPort

public toPort: pulumi.Output<number>;

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

property type

public type: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class SnapshotCreateVolumePermission

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

constructor

new SnapshotCreateVolumePermission(name: string, args: SnapshotCreateVolumePermissionArgs, opts?: pulumi.CustomResourceOptions)

Create a SnapshotCreateVolumePermission resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SnapshotCreateVolumePermissionState): SnapshotCreateVolumePermission

Get an existing SnapshotCreateVolumePermission resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property accountId

public accountId: pulumi.Output<string>;

An AWS Account ID to add create volume permissions

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property snapshotId

public snapshotId: pulumi.Output<string>;

A snapshot ID

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class SpotDatafeedSubscription

-> 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.

constructor

new SpotDatafeedSubscription(name: string, args: SpotDatafeedSubscriptionArgs, opts?: pulumi.CustomResourceOptions)

Create a SpotDatafeedSubscription resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SpotDatafeedSubscriptionState): SpotDatafeedSubscription

Get an existing SpotDatafeedSubscription resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property bucket

public bucket: pulumi.Output<string>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property prefix

public prefix: pulumi.Output<string | undefined>;

Path of folder inside bucket to place spot pricing data.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class SpotFleetRequest

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

constructor

new SpotFleetRequest(name: string, args: SpotFleetRequestArgs, opts?: pulumi.CustomResourceOptions)

Create a SpotFleetRequest resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SpotFleetRequestState): SpotFleetRequest

Get an existing SpotFleetRequest resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allocationStrategy

public allocationStrategy: pulumi.Output<string | undefined>;

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

property clientToken

public clientToken: pulumi.Output<string>;

property excessCapacityTerminationPolicy

public excessCapacityTerminationPolicy: pulumi.Output<string | undefined>;

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.

property fleetType

public fleetType: pulumi.Output<string | undefined>;

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

property iamFleetRole

public iamFleetRole: pulumi.Output<string>;

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.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceInterruptionBehaviour

public instanceInterruptionBehaviour: pulumi.Output<string | undefined>;

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

property launchSpecifications

public launchSpecifications: pulumi.Output<{ ... }[]>;

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.

property loadBalancers

public loadBalancers: pulumi.Output<string[]>;

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

property replaceUnhealthyInstances

public replaceUnhealthyInstances: pulumi.Output<boolean | undefined>;

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

property spotPrice

public spotPrice: pulumi.Output<string | undefined>;

The maximum bid price per unit hour.

property spotRequestState

public spotRequestState: pulumi.Output<string>;

The state of the Spot fleet request.

property targetCapacity

public targetCapacity: pulumi.Output<number>;

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.

property targetGroupArns

public targetGroupArns: pulumi.Output<string[]>;

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

property terminateInstancesWithExpiration

public terminateInstancesWithExpiration: pulumi.Output<boolean | undefined>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property validFrom

public validFrom: pulumi.Output<string | undefined>;

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.

property validUntil

public validUntil: pulumi.Output<string | undefined>;

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.

property waitForFulfillment

public waitForFulfillment: pulumi.Output<boolean | undefined>;

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

class SpotInstanceRequest

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

By default Terraform 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, Terraform 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 Terraform 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.

constructor

new SpotInstanceRequest(name: string, args: SpotInstanceRequestArgs, opts?: pulumi.CustomResourceOptions)

Create a SpotInstanceRequest resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SpotInstanceRequestState): SpotInstanceRequest

Get an existing SpotInstanceRequest resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property ami

public ami: pulumi.Output<string>;

The AMI to use for the instance.

property associatePublicIpAddress

public associatePublicIpAddress: pulumi.Output<boolean>;

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

property availabilityZone

public availabilityZone: pulumi.Output<string>;

The AZ to start the instance in.

property blockDurationMinutes

public blockDurationMinutes: pulumi.Output<number | undefined>;

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.

property cpuCoreCount

public cpuCoreCount: pulumi.Output<number>;

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.

property cpuThreadsPerCore

public cpuThreadsPerCore: pulumi.Output<number>;

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

property creditSpecification

public creditSpecification: pulumi.Output<{ ... } | undefined>;

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

property disableApiTermination

public disableApiTermination: pulumi.Output<boolean | undefined>;

If true, enables EC2 Instance Termination Protection

property ebsBlockDevices

public ebsBlockDevices: pulumi.Output<{ ... }[]>;

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

property ebsOptimized

public ebsOptimized: pulumi.Output<boolean | undefined>;

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.

property ephemeralBlockDevices

public ephemeralBlockDevices: pulumi.Output<{ ... }[]>;

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

property getPasswordData

public getPasswordData: pulumi.Output<boolean | undefined>;

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.

property iamInstanceProfile

public iamInstanceProfile: pulumi.Output<string | undefined>;

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.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceInitiatedShutdownBehavior

public instanceInitiatedShutdownBehavior: pulumi.Output<string | undefined>;

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.

property instanceInterruptionBehaviour

public instanceInterruptionBehaviour: pulumi.Output<string | undefined>;

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

property instanceState

public instanceState: pulumi.Output<string>;

property instanceType

public instanceType: pulumi.Output<string>;

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

property ipv6AddressCount

public ipv6AddressCount: pulumi.Output<number>;

property ipv6Addresses

public ipv6Addresses: pulumi.Output<string[]>;

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

property keyName

public keyName: pulumi.Output<string>;

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

property launchGroup

public launchGroup: pulumi.Output<string | undefined>;

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

property monitoring

public monitoring: pulumi.Output<boolean | undefined>;

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

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

The ID of the network interface to attach.

property networkInterfaces

public networkInterfaces: pulumi.Output<{ ... }[]>;

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

property passwordData

public passwordData: pulumi.Output<string>;

property placementGroup

public placementGroup: pulumi.Output<string>;

The Placement Group to start the instance in.

property primaryNetworkInterfaceId

public primaryNetworkInterfaceId: pulumi.Output<string>;

property privateDns

public privateDns: pulumi.Output<string>;

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

property privateIp

public privateIp: pulumi.Output<string>;

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

property publicDns

public publicDns: pulumi.Output<string>;

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

property publicIp

public publicIp: pulumi.Output<string>;

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

property rootBlockDevice

public rootBlockDevice: pulumi.Output<{ ... }>;

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

property securityGroups

public securityGroups: pulumi.Output<string[]>;

A list of security group names to associate with.

property sourceDestCheck

public sourceDestCheck: pulumi.Output<boolean | undefined>;

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

property spotBidStatus

public spotBidStatus: pulumi.Output<string>;

The current bid status of the Spot Instance Request.

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

property spotInstanceId

public spotInstanceId: pulumi.Output<string>;

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

property spotPrice

public spotPrice: pulumi.Output<string | undefined>;

The maximum price to request on the spot market.

property spotRequestState

public spotRequestState: pulumi.Output<string>;

property spotType

public spotType: pulumi.Output<string | undefined>;

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

property subnetId

public subnetId: pulumi.Output<string>;

The VPC Subnet ID to launch in.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property tenancy

public tenancy: pulumi.Output<string>;

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.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userData

public userData: pulumi.Output<string | undefined>;

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

property userDataBase64

public userDataBase64: pulumi.Output<string | undefined>;

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.

property validFrom

public validFrom: pulumi.Output<string>;

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.

property validUntil

public validUntil: pulumi.Output<string>;

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.

property volumeTags

public volumeTags: pulumi.Output<{ ... } | undefined>;

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

property vpcSecurityGroupIds

public vpcSecurityGroupIds: pulumi.Output<string[]>;

A list of security group IDs to associate with.

property waitForFulfillment

public waitForFulfillment: pulumi.Output<boolean | undefined>;

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

class Subnet

Provides an VPC subnet resource.

constructor

new Subnet(name: string, args: SubnetArgs, opts?: pulumi.CustomResourceOptions)

Create a Subnet resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SubnetState): Subnet

Get an existing Subnet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property assignIpv6AddressOnCreation

public assignIpv6AddressOnCreation: pulumi.Output<boolean | undefined>;

Specify true to indicate that network interfaces created in the specified subnet should be assigned an IPv6 address. Default is false

property availabilityZone

public availabilityZone: pulumi.Output<string>;

property cidrBlock

public cidrBlock: pulumi.Output<string>;

The CIDR block for the subnet.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipv6CidrBlock

public ipv6CidrBlock: pulumi.Output<string>;

The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.

property ipv6CidrBlockAssociationId

public ipv6CidrBlockAssociationId: pulumi.Output<string>;

The association ID for the IPv6 CIDR block.

property mapPublicIpOnLaunch

public mapPublicIpOnLaunch: pulumi.Output<boolean | undefined>;

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

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The VPC ID.

class VolumeAttachment

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 aws_instance, Terraform 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 aws_ebs_volume + aws_ebs_volume_attachment resources for a given instance.

constructor

new VolumeAttachment(name: string, args: VolumeAttachmentArgs, opts?: pulumi.CustomResourceOptions)

Create a VolumeAttachment resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VolumeAttachmentState): VolumeAttachment

Get an existing VolumeAttachment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property deviceName

public deviceName: pulumi.Output<string>;

The device name to expose to the instance (for example, /dev/sdh or xvdh)

property forceDetach

public forceDetach: pulumi.Output<boolean | undefined>;

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 for more information.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceId

public instanceId: pulumi.Output<string>;

ID of the Instance to attach to

property skipDestroy

public skipDestroy: pulumi.Output<boolean | undefined>;

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 Terraform state. This is useful when destroying an instance which has volumes created by some other means attached.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property volumeId

public volumeId: pulumi.Output<string>;

ID of the Volume to be attached

class Vpc

Provides an VPC resource.

constructor

new Vpc(name: string, args: VpcArgs, opts?: pulumi.CustomResourceOptions)

Create a Vpc resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcState): Vpc

Get an existing Vpc resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property arn

public arn: pulumi.Output<string>;

Amazon Resource Name (ARN) of VPC

property assignGeneratedIpv6CidrBlock

public assignGeneratedIpv6CidrBlock: pulumi.Output<boolean | undefined>;

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.

property cidrBlock

public cidrBlock: pulumi.Output<string>;

The CIDR block for the VPC.

property defaultNetworkAclId

public defaultNetworkAclId: pulumi.Output<string>;

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

property defaultRouteTableId

public defaultRouteTableId: pulumi.Output<string>;

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

property defaultSecurityGroupId

public defaultSecurityGroupId: pulumi.Output<string>;

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

property dhcpOptionsId

public dhcpOptionsId: pulumi.Output<string>;

property enableClassiclink

public enableClassiclink: pulumi.Output<boolean>;

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

property enableClassiclinkDnsSupport

public enableClassiclinkDnsSupport: pulumi.Output<boolean>;

A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.

property enableDnsHostnames

public enableDnsHostnames: pulumi.Output<boolean>;

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

property enableDnsSupport

public enableDnsSupport: pulumi.Output<boolean | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceTenancy

public instanceTenancy: pulumi.Output<string | undefined>;

A tenancy option for instances launched into the VPC

property ipv6AssociationId

public ipv6AssociationId: pulumi.Output<string>;

The association ID for the IPv6 CIDR block.

property ipv6CidrBlock

public ipv6CidrBlock: pulumi.Output<string>;

The IPv6 CIDR block.

property mainRouteTableId

public mainRouteTableId: pulumi.Output<string>;

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 aws_main_route_table_association.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class VpcDhcpOptions

Provides a VPC DHCP Options resource.

  • 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 aws_vpc_dhcp_options_association.
  • 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.

constructor

new VpcDhcpOptions(name: string, args?: VpcDhcpOptionsArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcDhcpOptions resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcDhcpOptionsState): VpcDhcpOptions

Get an existing VpcDhcpOptions resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property domainName

public domainName: pulumi.Output<string | undefined>;

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.

property domainNameServers

public domainNameServers: pulumi.Output<string[] | undefined>;

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.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property netbiosNameServers

public netbiosNameServers: pulumi.Output<string[] | undefined>;

List of NETBIOS name servers.

property netbiosNodeType

public netbiosNodeType: pulumi.Output<string | undefined>;

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.

property ntpServers

public ntpServers: pulumi.Output<string[] | undefined>;

List of NTP servers to configure.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class VpcDhcpOptionsAssociation

Provides a VPC DHCP Options Association resource.

  • Removing the DHCP Options Association automatically sets AWS’s default DHCP Options Set to the VPC.

constructor

new VpcDhcpOptionsAssociation(name: string, args: VpcDhcpOptionsAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcDhcpOptionsAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcDhcpOptionsAssociationState): VpcDhcpOptionsAssociation

Get an existing VpcDhcpOptionsAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property dhcpOptionsId

public dhcpOptionsId: pulumi.Output<string>;

The ID of the DHCP Options Set to associate to the VPC.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The ID of the VPC to which we would like to associate a DHCP Options Set.

class VpcEndpoint

Provides a VPC Endpoint resource.

~> NOTE on VPC Endpoints and VPC Endpoint Associations: Terraform 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.

constructor

new VpcEndpoint(name: string, args: VpcEndpointArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcEndpoint resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcEndpointState): VpcEndpoint

Get an existing VpcEndpoint resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoAccept

public autoAccept: pulumi.Output<boolean | undefined>;

Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).

property cidrBlocks

public cidrBlocks: pulumi.Output<string[]>;

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

property dnsEntries

public dnsEntries: pulumi.Output<{ ... }[]>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property networkInterfaceIds

public networkInterfaceIds: pulumi.Output<string[]>;

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

property policy

public policy: pulumi.Output<string>;

A policy to attach to the endpoint that controls access to the service. Applicable for endpoints of type Gateway. Defaults to full access.

property prefixListId

public prefixListId: pulumi.Output<string>;

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

property privateDnsEnabled

public privateDnsEnabled: pulumi.Output<boolean | undefined>;

Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface. Defaults to false.

property routeTableIds

public routeTableIds: pulumi.Output<string[]>;

One or more route table IDs. Applicable for endpoints of type Gateway.

property securityGroupIds

public securityGroupIds: pulumi.Output<string[]>;

The ID of one or more security groups to associate with the network interface. Required for endpoints of type Interface.

property serviceName

public serviceName: pulumi.Output<string>;

The service name, in the form com.amazonaws.region.service for AWS services.

property state

public state: pulumi.Output<string>;

The state of the VPC endpoint.

property subnetIds

public subnetIds: pulumi.Output<string[]>;

The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type Interface.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcEndpointType

public vpcEndpointType: pulumi.Output<string | undefined>;

The VPC endpoint type, Gateway or Interface. Defaults to Gateway.

property vpcId

public vpcId: pulumi.Output<string>;

The ID of the VPC in which the endpoint will be used.

class VpcEndpointConnectionNotification

Provides a VPC Endpoint connection notification resource. Connection notifications notify subscribers of VPC Endpoint events.

constructor

new VpcEndpointConnectionNotification(name: string, args: VpcEndpointConnectionNotificationArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcEndpointConnectionNotification resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcEndpointConnectionNotificationState): VpcEndpointConnectionNotification

Get an existing VpcEndpointConnectionNotification resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property connectionEvents

public connectionEvents: pulumi.Output<string[]>;

One or more endpoint events for which to receive notifications.

property connectionNotificationArn

public connectionNotificationArn: pulumi.Output<string>;

The ARN of the SNS topic for the notifications.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property notificationType

public notificationType: pulumi.Output<string>;

The type of notification.

property state

public state: pulumi.Output<string>;

The state of the notification.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcEndpointId

public vpcEndpointId: pulumi.Output<string | undefined>;

The ID of the VPC Endpoint to receive notifications for.

property vpcEndpointServiceId

public vpcEndpointServiceId: pulumi.Output<string | undefined>;

The ID of the VPC Endpoint Service to receive notifications for.

class VpcEndpointRouteTableAssociation

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

~> NOTE on VPC Endpoints and VPC Endpoint Route Table Associations: Terraform provides both a standalone VPC Endpoint Route Table Association (an association between a VPC endpoint and a single route_table_id) and a VPC Endpoint resource with a route_table_ids attribute. Do not use the same route table ID in both a VPC Endpoint resource and a VPC Endpoint Route Table Association resource. Doing so will cause a conflict of associations and will overwrite the association.

constructor

new VpcEndpointRouteTableAssociation(name: string, args: VpcEndpointRouteTableAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcEndpointRouteTableAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcEndpointRouteTableAssociationState): VpcEndpointRouteTableAssociation

Get an existing VpcEndpointRouteTableAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property routeTableId

public routeTableId: pulumi.Output<string>;

The ID of the routing table to be associated with the VPC endpoint.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcEndpointId

public vpcEndpointId: pulumi.Output<string>;

The ID of the VPC endpoint with which the routing table will be associated.

class VpcEndpointService

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: Terraform 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.

constructor

new VpcEndpointService(name: string, args: VpcEndpointServiceArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcEndpointService resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcEndpointServiceState): VpcEndpointService

Get an existing VpcEndpointService resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property acceptanceRequired

public acceptanceRequired: pulumi.Output<boolean>;

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

property allowedPrincipals

public allowedPrincipals: pulumi.Output<string[]>;

The ARNs of one or more principals allowed to discover the endpoint service.

property availabilityZones

public availabilityZones: pulumi.Output<string[]>;

The Availability Zones in which the service is available.

property baseEndpointDnsNames

public baseEndpointDnsNames: pulumi.Output<string[]>;

The DNS names for the service.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property networkLoadBalancerArns

public networkLoadBalancerArns: pulumi.Output<string[]>;

The ARNs of one or more Network Load Balancers for the endpoint service.

property privateDnsName

public privateDnsName: pulumi.Output<string>;

The private DNS name for the service.

property serviceName

public serviceName: pulumi.Output<string>;

The service name.

property serviceType

public serviceType: pulumi.Output<string>;

The service type, Gateway or Interface.

property state

public state: pulumi.Output<string>;

The state of the VPC endpoint service.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class VpcEndpointServiceAllowedPrinciple

Provides a resource to allow a principal to discover a VPC endpoint service.

~> NOTE on VPC Endpoint Services and VPC Endpoint Service Allowed Principals: Terraform 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.

constructor

new VpcEndpointServiceAllowedPrinciple(name: string, args: VpcEndpointServiceAllowedPrincipleArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcEndpointServiceAllowedPrinciple resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcEndpointServiceAllowedPrincipleState): VpcEndpointServiceAllowedPrinciple

Get an existing VpcEndpointServiceAllowedPrinciple resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property principalArn

public principalArn: pulumi.Output<string>;

The ARN of the principal to allow permissions.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcEndpointServiceId

public vpcEndpointServiceId: pulumi.Output<string>;

The ID of the VPC endpoint service to allow permission.

class VpcEndpointSubnetAssociation

Provides a resource to create an association between a VPC endpoint and a subnet.

~> NOTE on VPC Endpoints and VPC Endpoint Subnet Associations: Terraform 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.

constructor

new VpcEndpointSubnetAssociation(name: string, args: VpcEndpointSubnetAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcEndpointSubnetAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcEndpointSubnetAssociationState): VpcEndpointSubnetAssociation

Get an existing VpcEndpointSubnetAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property subnetId

public subnetId: pulumi.Output<string>;

The ID of the subnet to be associated with the VPC endpoint.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcEndpointId

public vpcEndpointId: pulumi.Output<string>;

The ID of the VPC endpoint with which the subnet will be associated.

class VpcIpv4CidrBlockAssociation

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 aws_vpc_ipv4_cidr_block_association resource allows further IPv4 CIDR blocks to be added to the VPC.

constructor

new VpcIpv4CidrBlockAssociation(name: string, args: VpcIpv4CidrBlockAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcIpv4CidrBlockAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcIpv4CidrBlockAssociationState): VpcIpv4CidrBlockAssociation

Get an existing VpcIpv4CidrBlockAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property cidrBlock

public cidrBlock: pulumi.Output<string>;

The additional IPv4 CIDR block to associate with the VPC.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The ID of the VPC to make the association with.

class VpcPeeringConnection

Provides a resource to manage a VPC peering connection.

~> NOTE on VPC Peering Connections and VPC Peering Connection Options: Terraform 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 aws_vpc_peering_connection resource to manage the requester’s side of the connection and use the aws_vpc_peering_connection_accepter resource to manage the accepter’s side of the connection.

constructor

new VpcPeeringConnection(name: string, args: VpcPeeringConnectionArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcPeeringConnection resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcPeeringConnectionState): VpcPeeringConnection

Get an existing VpcPeeringConnection resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property acceptStatus

public acceptStatus: pulumi.Output<string>;

The status of the VPC Peering Connection request.

property accepter

public accepter: pulumi.Output<{ ... }>;

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).

property autoAccept

public autoAccept: pulumi.Output<boolean | undefined>;

Accept the peering (both VPCs need to be in the same AWS account).

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property peerOwnerId

public peerOwnerId: pulumi.Output<string>;

The AWS account ID of the owner of the peer VPC. Defaults to the account ID the AWS provider is currently connected to.

property peerRegion

public peerRegion: pulumi.Output<string>;

The region of the accepter VPC of the [VPC Peering Connection]. auto_accept must be false, and use the aws_vpc_peering_connection_accepter to manage the accepter side.

property peerVpcId

public peerVpcId: pulumi.Output<string>;

The ID of the VPC with which you are creating the VPC Peering Connection.

property requester

public requester: pulumi.Output<{ ... }>;

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).

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The ID of the requester VPC.

class VpcPeeringConnectionAccepter

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 aws_vpc_peering_connection resource to manage its side of the connection and the accepter can use the aws_vpc_peering_connection_accepter resource to “adopt” its side of the connection into management.

constructor

new VpcPeeringConnectionAccepter(name: string, args: VpcPeeringConnectionAccepterArgs, opts?: pulumi.CustomResourceOptions)

Create a VpcPeeringConnectionAccepter resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpcPeeringConnectionAccepterState): VpcPeeringConnectionAccepter

Get an existing VpcPeeringConnectionAccepter resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property acceptStatus

public acceptStatus: pulumi.Output<string>;

The status of the VPC Peering Connection request.

property accepter

public accepter: pulumi.Output<{ ... }>;

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

property autoAccept

public autoAccept: pulumi.Output<boolean | undefined>;

Whether or not to accept the peering request. Defaults to false.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property peerOwnerId

public peerOwnerId: pulumi.Output<string>;

The AWS account ID of the owner of the requester VPC.

property peerRegion

public peerRegion: pulumi.Output<string>;

The region of the accepter VPC.

property peerVpcId

public peerVpcId: pulumi.Output<string>;

The ID of the requester VPC.

property requester

public requester: pulumi.Output<{ ... }>;

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

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The ID of the accepter VPC.

property vpcPeeringConnectionId

public vpcPeeringConnectionId: pulumi.Output<string>;

The VPC Peering Connection ID to manage.

class VpnConnection

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

~> 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.

constructor

new VpnConnection(name: string, args: VpnConnectionArgs, opts?: pulumi.CustomResourceOptions)

Create a VpnConnection resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpnConnectionState): VpnConnection

Get an existing VpnConnection resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property customerGatewayConfiguration

public customerGatewayConfiguration: pulumi.Output<string>;

The configuration information for the VPN connection’s customer gateway (in the native XML format).

property customerGatewayId

public customerGatewayId: pulumi.Output<string>;

The ID of the customer gateway.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property routes

public routes: pulumi.Output<{ ... }[]>;

property staticRoutesOnly

public staticRoutesOnly: pulumi.Output<boolean>;

Whether the VPN connection uses static routes exclusively. Static routes must be used for devices that don’t support BGP.

property tags

public tags: pulumi.Output<Tags | undefined>;

Tags to apply to the connection.

property tunnel1Address

public tunnel1Address: pulumi.Output<string>;

The public IP address of the first VPN tunnel.

property tunnel1BgpAsn

public tunnel1BgpAsn: pulumi.Output<string>;

The bgp asn number of the first VPN tunnel.

property tunnel1BgpHoldtime

public tunnel1BgpHoldtime: pulumi.Output<number>;

The bgp holdtime of the first VPN tunnel.

property tunnel1CgwInsideAddress

public tunnel1CgwInsideAddress: pulumi.Output<string>;

The RFC 6890 link-local address of the first VPN tunnel (Customer Gateway Side).

property tunnel1InsideCidr

public tunnel1InsideCidr: pulumi.Output<string>;

The CIDR block of the inside IP addresses for the first VPN tunnel.

property tunnel1PresharedKey

public tunnel1PresharedKey: pulumi.Output<string>;

The preshared key of the first VPN tunnel.

property tunnel1VgwInsideAddress

public tunnel1VgwInsideAddress: pulumi.Output<string>;

The RFC 6890 link-local address of the first VPN tunnel (VPN Gateway Side).

property tunnel2Address

public tunnel2Address: pulumi.Output<string>;

The public IP address of the second VPN tunnel.

property tunnel2BgpAsn

public tunnel2BgpAsn: pulumi.Output<string>;

The bgp asn number of the second VPN tunnel.

property tunnel2BgpHoldtime

public tunnel2BgpHoldtime: pulumi.Output<number>;

The bgp holdtime of the second VPN tunnel.

property tunnel2CgwInsideAddress

public tunnel2CgwInsideAddress: pulumi.Output<string>;

The RFC 6890 link-local address of the second VPN tunnel (Customer Gateway Side).

property tunnel2InsideCidr

public tunnel2InsideCidr: pulumi.Output<string>;

The CIDR block of the second IP addresses for the first VPN tunnel.

property tunnel2PresharedKey

public tunnel2PresharedKey: pulumi.Output<string>;

The preshared key of the second VPN tunnel. ~> Note: The preshared key must be between 8 and 64 characters in length and cannot start with zero(0). Allowed characters are alphanumeric characters, periods(.) and underscores(_).

property tunnel2VgwInsideAddress

public tunnel2VgwInsideAddress: pulumi.Output<string>;

The RFC 6890 link-local address of the second VPN tunnel (VPN Gateway Side).

property type

public type: pulumi.Output<string>;

The type of VPN connection. The only type AWS supports at this time is “ipsec.1”.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vgwTelemetries

public vgwTelemetries: pulumi.Output<{ ... }[]>;

property vpnGatewayId

public vpnGatewayId: pulumi.Output<string>;

The ID of the virtual private gateway.

class VpnConnectionRoute

Provides a static route between a VPN connection and a customer gateway.

constructor

new VpnConnectionRoute(name: string, args: VpnConnectionRouteArgs, opts?: pulumi.CustomResourceOptions)

Create a VpnConnectionRoute resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpnConnectionRouteState): VpnConnectionRoute

Get an existing VpnConnectionRoute resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property destinationCidrBlock

public destinationCidrBlock: pulumi.Output<string>;

The CIDR block associated with the local subnet of the customer network.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpnConnectionId

public vpnConnectionId: pulumi.Output<string>;

The ID of the VPN connection.

class VpnGateway

Provides a resource to create a VPC VPN Gateway.

constructor

new VpnGateway(name: string, args?: VpnGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a VpnGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpnGatewayState): VpnGateway

Get an existing VpnGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property amazonSideAsn

public amazonSideAsn: pulumi.Output<string>;

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.

property availabilityZone

public availabilityZone: pulumi.Output<string | undefined>;

The Availability Zone for the virtual private gateway.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The VPC ID to create in.

class VpnGatewayAttachment

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 aws_vpn_gateway resource can also automatically attach the Virtual Private Gateway it creates to an existing VPC by setting the vpc_id attribute accordingly.

constructor

new VpnGatewayAttachment(name: string, args: VpnGatewayAttachmentArgs, opts?: pulumi.CustomResourceOptions)

Create a VpnGatewayAttachment resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpnGatewayAttachmentState): VpnGatewayAttachment

Get an existing VpnGatewayAttachment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpcId

public vpcId: pulumi.Output<string>;

The ID of the VPC.

property vpnGatewayId

public vpnGatewayId: pulumi.Output<string>;

The ID of the Virtual Private Gateway.

class VpnGatewayRoutePropagation

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.

constructor

new VpnGatewayRoutePropagation(name: string, args: VpnGatewayRoutePropagationArgs, opts?: pulumi.CustomResourceOptions)

Create a VpnGatewayRoutePropagation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpnGatewayRoutePropagationState): VpnGatewayRoutePropagation

Get an existing VpnGatewayRoutePropagation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property routeTableId

public routeTableId: pulumi.Output<string>;

The id of the aws_route_table to propagate routes into.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpnGatewayId

public vpnGatewayId: pulumi.Output<string>;

The id of the aws_vpn_gateway to propagate routes from.

function getInstance

getInstance(args?: GetInstanceArgs, opts?: pulumi.InvokeOptions): Promise<GetInstanceResult>

Use this data source to get the ID of an Amazon EC2 Instance for use in other resources.

function getInstances

getInstances(args?: GetInstancesArgs, opts?: pulumi.InvokeOptions): Promise<GetInstancesResult>

Use this data source to get IDs or IPs of Amazon EC2 instances to be referenced elsewhere, e.g. to allow easier migration from another management solution or to make it easier for an operator to connect through bastion host(s).

-> Note: It’s a best practice to expose instance details via outputs and remote state and use terraform_remote_state data source instead if you manage referenced instances via Terraform.

~> Note: It’s strongly discouraged to use this data source for querying ephemeral instances (e.g. managed via autoscaling group), as the output may change at any time and you’d need to re-run apply every time an instance comes up or dies.

function getInternetGateway

getInternetGateway(args?: GetInternetGatewayArgs, opts?: pulumi.InvokeOptions): Promise<GetInternetGatewayResult>

aws_internet_gateway provides details about a specific Internet Gateway.

function getLaunchConfiguration

getLaunchConfiguration(args: GetLaunchConfigurationArgs, opts?: pulumi.InvokeOptions): Promise<GetLaunchConfigurationResult>

Provides information about a Launch Configuration.

function getNatGateway

getNatGateway(args?: GetNatGatewayArgs, opts?: pulumi.InvokeOptions): Promise<GetNatGatewayResult>

Provides details about a specific Nat Gateway.

function getNetworkAcls

getNetworkAcls(args?: GetNetworkAclsArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkAclsResult>

function getNetworkInterface

getNetworkInterface(args?: GetNetworkInterfaceArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkInterfaceResult>

Use this data source to get information about a Network Interface.

function getNetworkInterfaces

getNetworkInterfaces(args?: GetNetworkInterfacesArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkInterfacesResult>

function getRoute

getRoute(args: GetRouteArgs, opts?: pulumi.InvokeOptions): Promise<GetRouteResult>

aws_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.

function getRouteTable

getRouteTable(args?: GetRouteTableArgs, opts?: pulumi.InvokeOptions): Promise<GetRouteTableResult>

aws_route_table 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.

function getRouteTables

getRouteTables(args?: GetRouteTablesArgs, opts?: pulumi.InvokeOptions): Promise<GetRouteTablesResult>

This resource can be useful for getting back a list of route table ids to be referenced elsewhere.

function getSecurityGroup

getSecurityGroup(args?: GetSecurityGroupArgs, opts?: pulumi.InvokeOptions): Promise<GetSecurityGroupResult>

aws_security_group 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.

function getSecurityGroups

getSecurityGroups(args?: GetSecurityGroupsArgs, opts?: pulumi.InvokeOptions): Promise<GetSecurityGroupsResult>

Use this data source to get IDs and VPC membership of Security Groups that are created outside of Terraform.

function getSubnet

getSubnet(args?: GetSubnetArgs, opts?: pulumi.InvokeOptions): Promise<GetSubnetResult>

aws_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.

function getSubnetIds

getSubnetIds(args: GetSubnetIdsArgs, opts?: pulumi.InvokeOptions): Promise<GetSubnetIdsResult>

aws_subnet_ids 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.

function getVpc

getVpc(args?: GetVpcArgs, opts?: pulumi.InvokeOptions): Promise<GetVpcResult>

aws_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.

function getVpcDhcpOptions

getVpcDhcpOptions(args?: GetVpcDhcpOptionsArgs, opts?: pulumi.InvokeOptions): Promise<GetVpcDhcpOptionsResult>

Retrieve information about an EC2 DHCP Options configuration.

function getVpcEndpoint

getVpcEndpoint(args?: GetVpcEndpointArgs, opts?: pulumi.InvokeOptions): Promise<GetVpcEndpointResult>

The VPC Endpoint data source provides details about a specific VPC endpoint.

function getVpcEndpointService

getVpcEndpointService(args?: GetVpcEndpointServiceArgs, opts?: pulumi.InvokeOptions): Promise<GetVpcEndpointServiceResult>

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.

function getVpcPeeringConnection

getVpcPeeringConnection(args?: GetVpcPeeringConnectionArgs, opts?: pulumi.InvokeOptions): Promise<GetVpcPeeringConnectionResult>

The VPC Peering Connection data source provides details about a specific VPC peering connection.

function getVpcs

getVpcs(args?: GetVpcsArgs, opts?: pulumi.InvokeOptions): Promise<GetVpcsResult>

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”.

function getVpnGateway

getVpnGateway(args?: GetVpnGatewayArgs, opts?: pulumi.InvokeOptions): Promise<GetVpnGatewayResult>

The VPN Gateway data source provides details about a specific VPN gateway.

interface AmiArgs

The set of arguments for constructing a Ami resource.

property architecture

architecture?: pulumi.Input<string>;

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

property description

description?: pulumi.Input<string>;

A longer, human-readable description for the AMI.

property ebsBlockDevices

ebsBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property enaSupport

enaSupport?: pulumi.Input<boolean>;

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

property ephemeralBlockDevices

ephemeralBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property imageLocation

imageLocation?: pulumi.Input<string>;

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

property kernelId

kernelId?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

A region-unique name for the AMI.

property ramdiskId

ramdiskId?: pulumi.Input<string>;

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

property rootDeviceName

rootDeviceName?: pulumi.Input<string>;

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

property sriovNetSupport

sriovNetSupport?: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<{ ... }>;

property virtualizationType

virtualizationType?: pulumi.Input<string>;

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.

interface AmiCopyArgs

The set of arguments for constructing a AmiCopy resource.

property description

description?: pulumi.Input<string>;

A longer, human-readable description for the AMI.

property ebsBlockDevices

ebsBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property enaSupport

enaSupport?: pulumi.Input<boolean>;

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

property encrypted

encrypted?: pulumi.Input<boolean>;

Boolean controlling whether the created EBS volumes will be encrypted. Can’t be used with snapshot_id.

property ephemeralBlockDevices

ephemeralBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property kmsKeyId

kmsKeyId?: pulumi.Input<string>;

The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when encrypting the snapshots of an image during a copy operation. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used

property name

name?: pulumi.Input<string>;

A region-unique name for the AMI.

property sourceAmiId

sourceAmiId: pulumi.Input<string>;

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

property sourceAmiRegion

sourceAmiRegion: pulumi.Input<string>;

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.

property tags

tags?: pulumi.Input<Tags>;

interface AmiCopyState

Input properties used for looking up and filtering AmiCopy resources.

property architecture

architecture?: pulumi.Input<string>;

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

property description

description?: pulumi.Input<string>;

A longer, human-readable description for the AMI.

property ebsBlockDevices

ebsBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property enaSupport

enaSupport?: pulumi.Input<boolean>;

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

property encrypted

encrypted?: pulumi.Input<boolean>;

Boolean controlling whether the created EBS volumes will be encrypted. Can’t be used with snapshot_id.

property ephemeralBlockDevices

ephemeralBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property imageLocation

imageLocation?: pulumi.Input<string>;

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

property kernelId

kernelId?: pulumi.Input<string>;

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

property kmsKeyId

kmsKeyId?: pulumi.Input<string>;

The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when encrypting the snapshots of an image during a copy operation. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used

property manageEbsSnapshots

manageEbsSnapshots?: pulumi.Input<boolean>;

property name

name?: pulumi.Input<string>;

A region-unique name for the AMI.

property ramdiskId

ramdiskId?: pulumi.Input<string>;

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

property rootDeviceName

rootDeviceName?: pulumi.Input<string>;

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

property rootSnapshotId

rootSnapshotId?: pulumi.Input<string>;

property sourceAmiId

sourceAmiId?: pulumi.Input<string>;

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

property sourceAmiRegion

sourceAmiRegion?: pulumi.Input<string>;

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.

property sriovNetSupport

sriovNetSupport?: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<Tags>;

property virtualizationType

virtualizationType?: pulumi.Input<string>;

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.

interface AmiFromInstanceArgs

The set of arguments for constructing a AmiFromInstance resource.

property description

description?: pulumi.Input<string>;

A longer, human-readable description for the AMI.

property ebsBlockDevices

ebsBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property enaSupport

enaSupport?: pulumi.Input<boolean>;

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

property ephemeralBlockDevices

ephemeralBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property name

name?: pulumi.Input<string>;

A region-unique name for the AMI.

property snapshotWithoutReboot

snapshotWithoutReboot?: pulumi.Input<boolean>;

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.

property sourceInstanceId

sourceInstanceId: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<{ ... }>;

interface AmiFromInstanceState

Input properties used for looking up and filtering AmiFromInstance resources.

property architecture

architecture?: pulumi.Input<string>;

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

property description

description?: pulumi.Input<string>;

A longer, human-readable description for the AMI.

property ebsBlockDevices

ebsBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property enaSupport

enaSupport?: pulumi.Input<boolean>;

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

property ephemeralBlockDevices

ephemeralBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property imageLocation

imageLocation?: pulumi.Input<string>;

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

property kernelId

kernelId?: pulumi.Input<string>;

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

property manageEbsSnapshots

manageEbsSnapshots?: pulumi.Input<boolean>;

property name

name?: pulumi.Input<string>;

A region-unique name for the AMI.

property ramdiskId

ramdiskId?: pulumi.Input<string>;

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

property rootDeviceName

rootDeviceName?: pulumi.Input<string>;

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

property rootSnapshotId

rootSnapshotId?: pulumi.Input<string>;

property snapshotWithoutReboot

snapshotWithoutReboot?: pulumi.Input<boolean>;

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.

property sourceInstanceId

sourceInstanceId?: pulumi.Input<string>;

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

property sriovNetSupport

sriovNetSupport?: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<{ ... }>;

property virtualizationType

virtualizationType?: pulumi.Input<string>;

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.

interface AmiLaunchPermissionArgs

The set of arguments for constructing a AmiLaunchPermission resource.

property accountId

accountId: pulumi.Input<string>;

An AWS Account ID to add launch permissions.

property imageId

imageId: pulumi.Input<string>;

A region-unique name for the AMI.

interface AmiLaunchPermissionState

Input properties used for looking up and filtering AmiLaunchPermission resources.

property accountId

accountId?: pulumi.Input<string>;

An AWS Account ID to add launch permissions.

property imageId

imageId?: pulumi.Input<string>;

A region-unique name for the AMI.

interface AmiState

Input properties used for looking up and filtering Ami resources.

property architecture

architecture?: pulumi.Input<string>;

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

property description

description?: pulumi.Input<string>;

A longer, human-readable description for the AMI.

property ebsBlockDevices

ebsBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property enaSupport

enaSupport?: pulumi.Input<boolean>;

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

property ephemeralBlockDevices

ephemeralBlockDevices?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property imageLocation

imageLocation?: pulumi.Input<string>;

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

property kernelId

kernelId?: pulumi.Input<string>;

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

property manageEbsSnapshots

manageEbsSnapshots?: pulumi.Input<boolean>;

property name

name?: pulumi.Input<string>;

A region-unique name for the AMI.

property ramdiskId

ramdiskId?: pulumi.Input<string>;

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

property rootDeviceName

rootDeviceName?: pulumi.Input<string>;

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

property rootSnapshotId

rootSnapshotId?: pulumi.Input<string>;

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

property sriovNetSupport

sriovNetSupport?: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<{ ... }>;

property virtualizationType

virtualizationType?: pulumi.Input<string>;

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.

interface CustomerGatewayArgs

The set of arguments for constructing a CustomerGateway resource.

property bgpAsn

bgpAsn: pulumi.Input<number>;

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

property ipAddress

ipAddress: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<Tags>;

Tags to apply to the gateway.

property type

type: pulumi.Input<string>;

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

interface CustomerGatewayState

Input properties used for looking up and filtering CustomerGateway resources.

property bgpAsn

bgpAsn?: pulumi.Input<number>;

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

property ipAddress

ipAddress?: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<Tags>;

Tags to apply to the gateway.

property type

type?: pulumi.Input<string>;

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

interface DefaultNetworkAclArgs

The set of arguments for constructing a DefaultNetworkAcl resource.

property defaultNetworkAclId

defaultNetworkAclId: pulumi.Input<string>;

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

property egress

egress?: pulumi.Input<pulumi.Input<{ ... }>[]>;

Specifies an egress rule. Parameters defined below.

property ingress

ingress?: pulumi.Input<pulumi.Input<{ ... }>[]>;

Specifies an ingress rule. Parameters defined below.

property subnetIds

subnetIds?: pulumi.Input<pulumi.Input<string>[]>;

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

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

interface DefaultNetworkAclState

Input properties used for looking up and filtering DefaultNetworkAcl resources.

property defaultNetworkAclId

defaultNetworkAclId?: pulumi.Input<string>;

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

property egress

egress?: pulumi.Input<pulumi.Input<{ ... }>[]>;

Specifies an egress rule. Parameters defined below.

property ingress

ingress?: pulumi.Input<pulumi.Input<{ ... }>[]>;

Specifies an ingress rule. Parameters defined below.

property subnetIds

subnetIds?: pulumi.Input<pulumi.Input<string>[]>;

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

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

property vpcId

vpcId?: pulumi.Input<string>;

The ID of the associated VPC

interface DefaultRouteTableArgs

The set of arguments for constructing a DefaultRouteTable resource.

property defaultRouteTableId

defaultRouteTableId: pulumi.Input<string>;

The ID of the Default Routing Table.

property propagatingVgws

propagatingVgws?: pulumi.Input<pulumi.Input<string>[]>;

A list of virtual gateways for propagation.

property routes

routes?: pulumi.Input<pulumi.Input<{ ... }>[]>;

A list of route objects. Their keys are documented below.

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

interface DefaultRouteTableState

Input properties used for looking up and filtering DefaultRouteTable resources.

property defaultRouteTableId

defaultRouteTableId?: pulumi.Input<string>;

The ID of the Default Routing Table.

property propagatingVgws

propagatingVgws?: pulumi.Input<pulumi.Input<string>[]>;

A list of virtual gateways for propagation.

property routes

routes?: pulumi.Input<pulumi.Input<{ ... }>[]>;

A list of route objects. Their keys are documented below.

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

property vpcId

vpcId?: pulumi.Input<string>;

interface DefaultSecurityGroupArgs

The set of arguments for constructing a DefaultSecurityGroup resource.

property egress

egress?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property ingress

ingress?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property revokeRulesOnDelete

revokeRulesOnDelete?: pulumi.Input<boolean>;

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

property vpcId

vpcId?: pulumi.Input<string>;

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

interface DefaultSecurityGroupState

Input properties used for looking up and filtering DefaultSecurityGroup resources.

property arn

arn?: pulumi.Input<string>;

property egress

egress?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property ingress

ingress?: pulumi.Input<pulumi.Input<{ ... }>[]>;

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

property name

name?: pulumi.Input<string>;

The name of the security group

property ownerId

ownerId?: pulumi.Input<string>;

The owner ID.

property revokeRulesOnDelete

revokeRulesOnDelete?: pulumi.Input<boolean>;

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

property vpcId

vpcId?: pulumi.Input<string>;

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

interface DefaultSubnetArgs

The set of arguments for constructing a DefaultSubnet resource.

property availabilityZone

availabilityZone: pulumi.Input<string>;

property mapPublicIpOnLaunch

mapPublicIpOnLaunch?: pulumi.Input<boolean>;

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

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

interface DefaultSubnetState

Input properties used for looking up and filtering DefaultSubnet resources.

property assignIpv6AddressOnCreation

assignIpv6AddressOnCreation?: pulumi.Input<boolean>;

property availabilityZone

availabilityZone?: pulumi.Input<string>;

property cidrBlock

cidrBlock?: pulumi.Input<string>;

The CIDR block for the subnet.

property ipv6CidrBlock

ipv6CidrBlock?: pulumi.Input<string>;

The IPv6 CIDR block.

property ipv6CidrBlockAssociationId

ipv6CidrBlockAssociationId?: pulumi.Input<string>;

property mapPublicIpOnLaunch

mapPublicIpOnLaunch?: pulumi.Input<boolean>;

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

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

property vpcId

vpcId?: pulumi.Input<string>;

The VPC ID.

interface DefaultVpcArgs

The set of arguments for constructing a DefaultVpc resource.

property enableClassiclink

enableClassiclink?: pulumi.Input<boolean>;

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

property enableClassiclinkDnsSupport

enableClassiclinkDnsSupport?: pulumi.Input<boolean>;

property enableDnsHostnames

enableDnsHostnames?: pulumi.Input<boolean>;

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

property enableDnsSupport

enableDnsSupport?: pulumi.Input<boolean>;

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

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

interface DefaultVpcDhcpOptionsArgs

The set of arguments for constructing a DefaultVpcDhcpOptions resource.

property netbiosNameServers

netbiosNameServers?: pulumi.Input<pulumi.Input<string>[]>;

List of NETBIOS name servers.

property netbiosNodeType

netbiosNodeType?: pulumi.Input<string>;

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.

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

interface DefaultVpcDhcpOptionsState

Input properties used for looking up and filtering DefaultVpcDhcpOptions resources.

property domainName

domainName?: pulumi.Input<string>;

property domainNameServers

domainNameServers?: pulumi.Input<string>;

property netbiosNameServers

netbiosNameServers?: pulumi.Input<pulumi.Input<string>[]>;

List of NETBIOS name servers.

property netbiosNodeType

netbiosNodeType?: pulumi.Input<string>;

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.

property ntpServers

ntpServers?: pulumi.Input<string>;

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

interface DefaultVpcState

Input properties used for looking up and filtering DefaultVpc resources.

property arn

arn?: pulumi.Input<string>;

Amazon Resource Name (ARN) of VPC

property assignGeneratedIpv6CidrBlock

assignGeneratedIpv6CidrBlock?: pulumi.Input<boolean>;

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

property cidrBlock

cidrBlock?: pulumi.Input<string>;

The CIDR block of the VPC

property defaultNetworkAclId

defaultNetworkAclId?: pulumi.Input<string>;

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

property defaultRouteTableId

defaultRouteTableId?: pulumi.Input<string>;

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

property defaultSecurityGroupId

defaultSecurityGroupId?: pulumi.Input<string>;

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

property dhcpOptionsId

dhcpOptionsId?: pulumi.Input<string>;

property enableClassiclink

enableClassiclink?: pulumi.Input<boolean>;

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

property enableClassiclinkDnsSupport

enableClassiclinkDnsSupport?: pulumi.Input<boolean>;

property enableDnsHostnames

enableDnsHostnames?: pulumi.Input<boolean>;

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

property enableDnsSupport

enableDnsSupport?: pulumi.Input<boolean>;

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

property instanceTenancy

instanceTenancy?: pulumi.Input<string>;

Tenancy of instances spin up within VPC.

property ipv6AssociationId

ipv6AssociationId?: pulumi.Input<string>;

The association ID for the IPv6 CIDR block of the VPC

property ipv6CidrBlock

ipv6CidrBlock?: pulumi.Input<string>;

The IPv6 CIDR block of the VPC

property mainRouteTableId

mainRouteTableId?: pulumi.Input<string>;

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 aws_main_route_table_association

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

interface EgressOnlyInternetGatewayArgs

The set of arguments for constructing a EgressOnlyInternetGateway resource.

property vpcId

vpcId: pulumi.Input<string>;

The VPC ID to create in.

interface EgressOnlyInternetGatewayState

Input properties used for looking up and filtering EgressOnlyInternetGateway resources.

property vpcId

vpcId?: pulumi.Input<string>;

The VPC ID to create in.

interface EipArgs

The set of arguments for constructing a Eip resource.

property associateWithPrivateIp

associateWithPrivateIp?: pulumi.Input<string>;

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.

property instance

instance?: pulumi.Input<string>;

EC2 instance ID.

property networkInterface

networkInterface?: pulumi.Input<string>;

Network interface ID to associate with.

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

property vpc

vpc?: pulumi.Input<boolean>;

Boolean if the EIP is in a VPC or not.

interface EipAssociationArgs

The set of arguments for constructing a EipAssociation resource.

property allocationId

allocationId?: pulumi.Input<string>;

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

property allowReassociation

allowReassociation?: pulumi.Input<boolean>;

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

property instanceId

instanceId?: pulumi.Input<string>;

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.

property networkInterfaceId

networkInterfaceId?: pulumi.Input<string>;

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

property privateIpAddress

privateIpAddress?: pulumi.Input<string>;

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.

property publicIp

publicIp?: pulumi.Input<string>;

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

interface EipAssociationState

Input properties used for looking up and filtering EipAssociation resources.

property allocationId

allocationId?: pulumi.Input<string>;

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

property allowReassociation

allowReassociation?: pulumi.Input<boolean>;

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

property instanceId

instanceId?: pulumi.Input<string>;

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.

property networkInterfaceId

networkInterfaceId?: pulumi.Input<string>;

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

property privateIpAddress

privateIpAddress?: pulumi.Input<string>;

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.

property publicIp

publicIp?: pulumi.Input<string>;

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

interface EipState

Input properties used for looking up and filtering Eip resources.

property allocationId

allocationId?: pulumi.Input<string>;

property associateWithPrivateIp

associateWithPrivateIp?: pulumi.Input<string>;

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.

property associationId

associationId?: pulumi.Input<string>;

property domain

domain?: pulumi.Input<string>;

property instance

instance?: pulumi.Input<string>;

EC2 instance ID.

property networkInterface

networkInterface?: pulumi.Input<string>;

Network interface ID to associate with.

property privateIp

privateIp?: pulumi.Input<string>;

Contains the private IP address (if in VPC).

property publicIp

publicIp?: pulumi.Input<string>;

Contains the public IP address.

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the resource.

property vpc

vpc?: pulumi.Input<boolean>;

Boolean if the EIP is in a VPC or not.

interface FlowLogArgs

The set of arguments for constructing a FlowLog resource.

property eniId

eniId?: pulumi.Input<string>;

Elastic Network Interface ID to attach to

property iamRoleArn

iamRoleArn: pulumi.Input<string>;

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

property logGroupName

logGroupName: pulumi.Input<string>;

The name of the CloudWatch log group

property subnetId

subnetId?: pulumi.Input<string>;

Subnet ID to attach to

property trafficType

trafficType: pulumi.Input<string>;

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

property vpcId

vpcId?: pulumi.Input<string>;

VPC ID to attach to

interface FlowLogState

Input properties used for looking up and filtering FlowLog resources.

property eniId

eniId?: pulumi.Input<string>;

Elastic Network Interface ID to attach to

property iamRoleArn

iamRoleArn?: pulumi.Input<string>;

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

property logGroupName

logGroupName?: pulumi.Input<string>;

The name of the CloudWatch log group

property subnetId

subnetId?: pulumi.Input<string>;

Subnet ID to attach to

property trafficType

trafficType?: pulumi.Input<string>;

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

property vpcId

vpcId?: pulumi.Input<string>;

VPC ID to attach to

interface GetInstanceArgs

A collection of arguments for invoking getInstance.

property filters

filters?: { ... }[];

One or more name/value pairs to use as filters. There are several valid keys, for a full reference, check out describe-instances in the AWS CLI reference.

property getPasswordData

getPasswordData?: boolean;

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.

property instanceId

instanceId?: string;

Specify the exact Instance ID with which to populate the data source.

property instanceTags

instanceTags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on the desired Instance.

property tags

tags?: { ... };

interface GetInstanceResult

A collection of values returned by getInstance.

property ami

ami: string;

The ID of the AMI used to launch the instance.

property associatePublicIpAddress

associatePublicIpAddress: boolean;

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

property availabilityZone

availabilityZone: string;

The availability zone of the Instance.

property creditSpecifications

creditSpecifications: { ... }[];

The credit specification of the Instance.

property disableApiTermination

disableApiTermination: boolean;

property ebsBlockDevices

ebsBlockDevices: { ... }[];

The EBS block device mappings of the Instance.

property ebsOptimized

ebsOptimized: boolean;

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

property ephemeralBlockDevices

ephemeralBlockDevices: { ... }[];

The ephemeral block device mappings of the Instance.

property iamInstanceProfile

iamInstanceProfile: string;

The name of the instance profile associated with the Instance.

property id

id: string;

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

property instanceState

instanceState: string;

property instanceTags

instanceTags: { ... };

property instanceType

instanceType: string;

The type of the Instance.

property keyName

keyName: string;

The key name of the Instance.

property monitoring

monitoring: boolean;

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

property networkInterfaceId

networkInterfaceId: string;

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

property passwordData

passwordData: string;

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.

property placementGroup

placementGroup: string;

The placement group of the Instance.

property privateDns

privateDns: string;

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.

property privateIp

privateIp: string;

The private IP address assigned to the Instance.

property publicDns

publicDns: string;

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

property publicIp

publicIp: string;

The public IP address assigned to the Instance, if applicable. NOTE: If you are using an aws_eip 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.

property rootBlockDevices

rootBlockDevices: { ... }[];

The root block device mappings of the Instance

property securityGroups

securityGroups: string[];

The associated security groups.

property sourceDestCheck

sourceDestCheck: boolean;

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

property subnetId

subnetId: string;

The VPC subnet ID.

property tags

tags: { ... };

A mapping of tags assigned to the Instance.

property tenancy

tenancy: string;

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

property userData

userData: string;

The User Data supplied to the Instance.

property vpcSecurityGroupIds

vpcSecurityGroupIds: string[];

The associated security groups in a non-default VPC.

interface GetInstancesArgs

A collection of arguments for invoking getInstances.

property filters

filters?: { ... }[];

One or more name/value pairs to use as filters. There are several valid keys, for a full reference, check out describe-instances in the AWS CLI reference.

property instanceStateNames

instanceStateNames?: string[];

A list of instance states that should be applicable to the desired instances. The permitted values are: pending, running, shutting-down, stopped, stopping, terminated. The default value is running.

property instanceTags

instanceTags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on desired instances.

interface GetInstancesResult

A collection of values returned by getInstances.

property id

id: string;

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

property ids

ids: string[];

IDs of instances found through the filter

property instanceTags

instanceTags: { ... };

property privateIps

privateIps: string[];

Private IP addresses of instances found through the filter

property publicIps

publicIps: string[];

Public IP addresses of instances found through the filter

interface GetInternetGatewayArgs

A collection of arguments for invoking getInternetGateway.

property filters

filters?: { ... }[];

Custom filter block as described below.

property internetGatewayId

internetGatewayId?: string;

The id of the specific Internet Gateway to retrieve.

property tags

tags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on the desired Internet Gateway.

interface GetInternetGatewayResult

A collection of values returned by getInternetGateway.

property attachments

attachments: { ... }[];

property id

id: string;

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

property internetGatewayId

internetGatewayId: string;

property tags

tags: { ... };

interface GetLaunchConfigurationArgs

A collection of arguments for invoking getLaunchConfiguration.

property name

name: string;

The name of the launch configuration.

interface GetLaunchConfigurationResult

A collection of values returned by getLaunchConfiguration.

property associatePublicIpAddress

associatePublicIpAddress: boolean;

Whether a Public IP address is associated with the instance.

property ebsBlockDevices

ebsBlockDevices: { ... }[];

The EBS Block Devices attached to the instance.

property ebsOptimized

ebsOptimized: boolean;

Whether the launched EC2 instance will be EBS-optimized.

property enableMonitoring

enableMonitoring: boolean;

Whether Detailed Monitoring is Enabled.

property ephemeralBlockDevices

ephemeralBlockDevices: { ... }[];

The Ephemeral volumes on the instance.

property iamInstanceProfile

iamInstanceProfile: string;

The IAM Instance Profile to associate with launched instances.

property id

id: string;

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

property imageId

imageId: string;

The EC2 Image ID of the instance.

property instanceType

instanceType: string;

The Instance Type of the instance to launch.

property keyName

keyName: string;

The Key Name that should be used for the instance.

property placementTenancy

placementTenancy: string;

The Tenancy of the instance.

property rootBlockDevices

rootBlockDevices: { ... }[];

The Root Block Device of the instance.

property securityGroups

securityGroups: string[];

A list of associated Security Group IDS.

property spotPrice

spotPrice: string;

The Price to use for reserving Spot instances.

property userData

userData: string;

The User Data of the instance.

property vpcClassicLinkId

vpcClassicLinkId: string;

The ID of a ClassicLink-enabled VPC.

property vpcClassicLinkSecurityGroups

vpcClassicLinkSecurityGroups: string[];

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

interface GetNatGatewayArgs

A collection of arguments for invoking getNatGateway.

property filters

filters?: { ... }[];

Custom filter block as described below. More complex filters can be expressed using one or more filter sub-blocks, which take the following arguments:

property id

id?: string;

The id of the specific Nat Gateway to retrieve.

property state

state?: string;
The state of the NAT gateway (pending failed available deleting deleted ).

property subnetId

subnetId?: string;

The id of subnet that the Nat Gateway resides in.

property tags

tags?: { ... };

property vpcId

vpcId?: string;

The id of the VPC that the Nat Gateway resides in.

interface GetNatGatewayResult

A collection of values returned by getNatGateway.

property allocationId

allocationId: string;

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

property id

id: string;

property networkInterfaceId

networkInterfaceId: string;

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

property privateIp

privateIp: string;

The private Ip address of the selected Nat Gateway.

property publicIp

publicIp: string;

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

property state

state: string;

property subnetId

subnetId: string;

property tags

tags: { ... };

property vpcId

vpcId: string;

interface GetNetworkAclsArgs

A collection of arguments for invoking getNetworkAcls.

property filters

filters?: { ... }[];

Custom filter block as described below.

property tags

tags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on the desired network ACLs.

property vpcId

vpcId?: string;

The VPC ID that you want to filter from.

interface GetNetworkAclsResult

A collection of values returned by getNetworkAcls.

property id

id: string;

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

property ids

ids: string[];

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

property tags

tags: { ... };

interface GetNetworkInterfaceArgs

A collection of arguments for invoking getNetworkInterface.

property filters

filters?: { ... }[];

One or more name/value pairs to filter off of. There are several valid keys, for a full reference, check out describe-network-interfaces in the AWS CLI reference.

property id

id?: string;

The identifier for the network interface.

property tags

tags?: { ... };

interface GetNetworkInterfaceResult

A collection of values returned by getNetworkInterface.

property associations

associations: { ... }[];

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

property attachments

attachments: { ... }[];

property availabilityZone

availabilityZone: string;

The Availability Zone.

property description

description: string;

property id

id: string;

property interfaceType

interfaceType: string;

The type of interface.

property ipv6Addresses

ipv6Addresses: string[];

List of IPv6 addresses to assign to the ENI.

property macAddress

macAddress: string;

The MAC address.

property ownerId

ownerId: string;

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

property privateDnsName

privateDnsName: string;

property privateIp

privateIp: string;

property privateIps

privateIps: string[];

property requesterId

requesterId: string;

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

property securityGroups

securityGroups: string[];

property subnetId

subnetId: string;

property tags

tags: { ... };

property vpcId

vpcId: string;

interface GetNetworkInterfacesArgs

A collection of arguments for invoking getNetworkInterfaces.

property filters

filters?: { ... }[];

Custom filter block as described below.

property tags

tags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on the desired network interfaces.

interface GetNetworkInterfacesResult

A collection of values returned by getNetworkInterfaces.

property id

id: string;

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

property ids

ids: string[];

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

property tags

tags: { ... };

interface GetRouteArgs

A collection of arguments for invoking getRoute.

property destinationCidrBlock

destinationCidrBlock?: string;

The CIDR block of the Route belonging to the Route Table.

property destinationIpv6CidrBlock

destinationIpv6CidrBlock?: string;

The IPv6 CIDR block of the Route belonging to the Route Table.

property egressOnlyGatewayId

egressOnlyGatewayId?: string;

The Egress Only Gateway ID of the Route belonging to the Route Table.

property gatewayId

gatewayId?: string;

The Gateway ID of the Route belonging to the Route Table.

property instanceId

instanceId?: string;

The Instance ID of the Route belonging to the Route Table.

property natGatewayId

natGatewayId?: string;

The NAT Gateway ID of the Route belonging to the Route Table.

property networkInterfaceId

networkInterfaceId?: string;

The Network Interface ID of the Route belonging to the Route Table.

property routeTableId

routeTableId: string;

The id of the specific Route Table containing the Route entry.

property vpcPeeringConnectionId

vpcPeeringConnectionId?: string;

The VPC Peering Connection ID of the Route belonging to the Route Table.

interface GetRouteResult

A collection of values returned by getRoute.

property destinationCidrBlock

destinationCidrBlock: string;

property destinationIpv6CidrBlock

destinationIpv6CidrBlock: string;

property egressOnlyGatewayId

egressOnlyGatewayId: string;

property gatewayId

gatewayId: string;

property id

id: string;

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

property instanceId

instanceId: string;

property natGatewayId

natGatewayId: string;

property networkInterfaceId

networkInterfaceId: string;

property vpcPeeringConnectionId

vpcPeeringConnectionId: string;

interface GetRouteTableArgs

A collection of arguments for invoking getRouteTable.

property filters

filters?: { ... }[];

Custom filter block as described below.

property routeTableId

routeTableId?: string;

The id of the specific Route Table to retrieve.

property subnetId

subnetId?: string;

The id of a Subnet which is connected to the Route Table (not be exported if not given in parameter).

property tags

tags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on the desired Route Table.

property vpcId

vpcId?: string;

The id of the VPC that the desired Route Table belongs to.

interface GetRouteTableResult

A collection of values returned by getRouteTable.

property associations

associations: { ... }[];

property id

id: string;

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

property routeTableId

routeTableId: string;

The Route Table ID.

property routes

routes: { ... }[];

property subnetId

subnetId: string;

The Subnet ID.

property tags

tags: { ... };

property vpcId

vpcId: string;

interface GetRouteTablesArgs

A collection of arguments for invoking getRouteTables.

property filters

filters?: { ... }[];

Custom filter block as described below.

property tags

tags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on the desired route tables.

property vpcId

vpcId?: string;

The VPC ID that you want to filter from.

interface GetRouteTablesResult

A collection of values returned by getRouteTables.

property id

id: string;

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

property ids

ids: string[];

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

property tags

tags: { ... };

interface GetSecurityGroupArgs

A collection of arguments for invoking getSecurityGroup.

property filters

filters?: { ... }[];

Custom filter block as described below.

property id

id?: string;

The id of the specific security group to retrieve.

property name

name?: string;

The name of the field to filter by, as defined by the underlying AWS API.

property tags

tags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on the desired security group.

property vpcId

vpcId?: string;

The id of the VPC that the desired security group belongs to.

interface GetSecurityGroupResult

A collection of values returned by getSecurityGroup.

property arn

arn: string;

The computed ARN of the security group.

property description

description: string;

The description of the security group.

property id

id: string;

property name

name: string;

property tags

tags: { ... };

property vpcId

vpcId: string;

interface GetSecurityGroupsArgs

A collection of arguments for invoking getSecurityGroups.

property filters

filters?: { ... }[];

One or more name/value pairs to use as filters. There are several valid keys, for a full reference, check out describe-security-groups in the AWS CLI reference.

property tags

tags?: { ... };

A mapping of tags, each pair of which must exactly match for desired security groups.

interface GetSecurityGroupsResult

A collection of values returned by getSecurityGroups.

property id

id: string;

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

property ids

ids: string[];

IDs of the matches security groups.

property tags

tags: { ... };

property vpcIds

vpcIds: string[];

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.

interface GetSubnetArgs

A collection of arguments for invoking getSubnet.

property availabilityZone

availabilityZone?: string;

The availability zone where the subnet must reside.

property cidrBlock

cidrBlock?: string;

The cidr block of the desired subnet.

property defaultForAz

defaultForAz?: boolean;

Boolean constraint for whether the desired subnet must be the default subnet for its associated availability zone.

property filters

filters?: { ... }[];

Custom filter block as described below.

property id

id?: string;

The id of the specific subnet to retrieve.

property ipv6CidrBlock

ipv6CidrBlock?: string;

The Ipv6 cidr block of the desired subnet

property state

state?: string;

The state that the desired subnet must have.

property tags

tags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on the desired subnet.

property vpcId

vpcId?: string;

The id of the VPC that the desired subnet belongs to.

interface GetSubnetIdsArgs

A collection of arguments for invoking getSubnetIds.

property filters

filters?: { ... }[];

property tags

tags?: { ... };

A mapping of tags, each pair of which must exactly match a pair on the desired subnets.

property vpcId

vpcId: string;

The VPC ID that you want to filter from.

interface GetSubnetIdsResult

A collection of values returned by getSubnetIds.

property id

id: string;

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

property ids

ids: string[];

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

property tags

tags: { ... };

interface GetSubnetResult

A collection of values returned by getSubnet.

property assignIpv6AddressOnCreation

assignIpv6AddressOnCreation: boolean;

property availabilityZone

availabilityZone: string;

property cidrBlock

cidrBlock: string;

property defaultForAz

defaultForAz: boolean;

property id

id: string;

property ipv6CidrBlock

ipv6CidrBlock: string;

property ipv6CidrBlockAssociationId

ipv6CidrBlockAssociationId: string;

property mapPublicIpOnLaunch

mapPublicIpOnLaunch: boolean;

property state

state: string;

property tags

tags: { ... };

property vpcId

vpcId: string;

interface GetVpcArgs

A collection of arguments for invoking getVpc.

property cidrBlock

cidrBlock?: string;

The cidr block of the desired VPC.

property default

default?: boolean;

Boolean constraint on whether the desired VPC is the default VPC for the region.

property dhcpOptionsId

dhcpOptionsId?: string;

The DHCP options id of the desired VPC.

property filters

filters?: { ... }[];

Custom filter block as described below.

property id

id?: string;

The id of the specific VPC to retrieve.

property state

state?: string;

The current state of the desired VPC. Can be either "pending" or "available".

property tags