1. Packages
  2. AWS
  3. API Docs
  4. ec2
  5. AmiFromInstance
AWS v6.76.0 published on Tuesday, Apr 8, 2025 by Pulumi

aws.ec2.AmiFromInstance

Explore with Pulumi AI

The “AMI from instance” resource allows the creation of an Amazon Machine Image (AMI) modeled 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.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.ec2.AmiFromInstance("example", {
    name: "example",
    sourceInstanceId: "i-xxxxxxxx",
});
Copy
import pulumi
import pulumi_aws as aws

example = aws.ec2.AmiFromInstance("example",
    name="example",
    source_instance_id="i-xxxxxxxx")
Copy
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ec2.NewAmiFromInstance(ctx, "example", &ec2.AmiFromInstanceArgs{
			Name:             pulumi.String("example"),
			SourceInstanceId: pulumi.String("i-xxxxxxxx"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() => 
{
    var example = new Aws.Ec2.AmiFromInstance("example", new()
    {
        Name = "example",
        SourceInstanceId = "i-xxxxxxxx",
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.AmiFromInstance;
import com.pulumi.aws.ec2.AmiFromInstanceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var example = new AmiFromInstance("example", AmiFromInstanceArgs.builder()
            .name("example")
            .sourceInstanceId("i-xxxxxxxx")
            .build());

    }
}
Copy
resources:
  example:
    type: aws:ec2:AmiFromInstance
    properties:
      name: example
      sourceInstanceId: i-xxxxxxxx
Copy

Create AmiFromInstance Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new AmiFromInstance(name: string, args: AmiFromInstanceArgs, opts?: CustomResourceOptions);
@overload
def AmiFromInstance(resource_name: str,
                    args: AmiFromInstanceArgs,
                    opts: Optional[ResourceOptions] = None)

@overload
def AmiFromInstance(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    source_instance_id: Optional[str] = None,
                    deprecation_time: Optional[str] = None,
                    description: Optional[str] = None,
                    ebs_block_devices: Optional[Sequence[AmiFromInstanceEbsBlockDeviceArgs]] = None,
                    ephemeral_block_devices: Optional[Sequence[AmiFromInstanceEphemeralBlockDeviceArgs]] = None,
                    name: Optional[str] = None,
                    snapshot_without_reboot: Optional[bool] = None,
                    tags: Optional[Mapping[str, str]] = None)
func NewAmiFromInstance(ctx *Context, name string, args AmiFromInstanceArgs, opts ...ResourceOption) (*AmiFromInstance, error)
public AmiFromInstance(string name, AmiFromInstanceArgs args, CustomResourceOptions? opts = null)
public AmiFromInstance(String name, AmiFromInstanceArgs args)
public AmiFromInstance(String name, AmiFromInstanceArgs args, CustomResourceOptions options)
type: aws:ec2:AmiFromInstance
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. AmiFromInstanceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. AmiFromInstanceArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. AmiFromInstanceArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. AmiFromInstanceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. AmiFromInstanceArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var amiFromInstanceResource = new Aws.Ec2.AmiFromInstance("amiFromInstanceResource", new()
{
    SourceInstanceId = "string",
    DeprecationTime = "string",
    Description = "string",
    EbsBlockDevices = new[]
    {
        new Aws.Ec2.Inputs.AmiFromInstanceEbsBlockDeviceArgs
        {
            DeleteOnTermination = false,
            DeviceName = "string",
            Encrypted = false,
            Iops = 0,
            OutpostArn = "string",
            SnapshotId = "string",
            Throughput = 0,
            VolumeSize = 0,
            VolumeType = "string",
        },
    },
    EphemeralBlockDevices = new[]
    {
        new Aws.Ec2.Inputs.AmiFromInstanceEphemeralBlockDeviceArgs
        {
            DeviceName = "string",
            VirtualName = "string",
        },
    },
    Name = "string",
    SnapshotWithoutReboot = false,
    Tags = 
    {
        { "string", "string" },
    },
});
Copy
example, err := ec2.NewAmiFromInstance(ctx, "amiFromInstanceResource", &ec2.AmiFromInstanceArgs{
	SourceInstanceId: pulumi.String("string"),
	DeprecationTime:  pulumi.String("string"),
	Description:      pulumi.String("string"),
	EbsBlockDevices: ec2.AmiFromInstanceEbsBlockDeviceArray{
		&ec2.AmiFromInstanceEbsBlockDeviceArgs{
			DeleteOnTermination: pulumi.Bool(false),
			DeviceName:          pulumi.String("string"),
			Encrypted:           pulumi.Bool(false),
			Iops:                pulumi.Int(0),
			OutpostArn:          pulumi.String("string"),
			SnapshotId:          pulumi.String("string"),
			Throughput:          pulumi.Int(0),
			VolumeSize:          pulumi.Int(0),
			VolumeType:          pulumi.String("string"),
		},
	},
	EphemeralBlockDevices: ec2.AmiFromInstanceEphemeralBlockDeviceArray{
		&ec2.AmiFromInstanceEphemeralBlockDeviceArgs{
			DeviceName:  pulumi.String("string"),
			VirtualName: pulumi.String("string"),
		},
	},
	Name:                  pulumi.String("string"),
	SnapshotWithoutReboot: pulumi.Bool(false),
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
})
Copy
var amiFromInstanceResource = new AmiFromInstance("amiFromInstanceResource", AmiFromInstanceArgs.builder()
    .sourceInstanceId("string")
    .deprecationTime("string")
    .description("string")
    .ebsBlockDevices(AmiFromInstanceEbsBlockDeviceArgs.builder()
        .deleteOnTermination(false)
        .deviceName("string")
        .encrypted(false)
        .iops(0)
        .outpostArn("string")
        .snapshotId("string")
        .throughput(0)
        .volumeSize(0)
        .volumeType("string")
        .build())
    .ephemeralBlockDevices(AmiFromInstanceEphemeralBlockDeviceArgs.builder()
        .deviceName("string")
        .virtualName("string")
        .build())
    .name("string")
    .snapshotWithoutReboot(false)
    .tags(Map.of("string", "string"))
    .build());
Copy
ami_from_instance_resource = aws.ec2.AmiFromInstance("amiFromInstanceResource",
    source_instance_id="string",
    deprecation_time="string",
    description="string",
    ebs_block_devices=[{
        "delete_on_termination": False,
        "device_name": "string",
        "encrypted": False,
        "iops": 0,
        "outpost_arn": "string",
        "snapshot_id": "string",
        "throughput": 0,
        "volume_size": 0,
        "volume_type": "string",
    }],
    ephemeral_block_devices=[{
        "device_name": "string",
        "virtual_name": "string",
    }],
    name="string",
    snapshot_without_reboot=False,
    tags={
        "string": "string",
    })
Copy
const amiFromInstanceResource = new aws.ec2.AmiFromInstance("amiFromInstanceResource", {
    sourceInstanceId: "string",
    deprecationTime: "string",
    description: "string",
    ebsBlockDevices: [{
        deleteOnTermination: false,
        deviceName: "string",
        encrypted: false,
        iops: 0,
        outpostArn: "string",
        snapshotId: "string",
        throughput: 0,
        volumeSize: 0,
        volumeType: "string",
    }],
    ephemeralBlockDevices: [{
        deviceName: "string",
        virtualName: "string",
    }],
    name: "string",
    snapshotWithoutReboot: false,
    tags: {
        string: "string",
    },
});
Copy
type: aws:ec2:AmiFromInstance
properties:
    deprecationTime: string
    description: string
    ebsBlockDevices:
        - deleteOnTermination: false
          deviceName: string
          encrypted: false
          iops: 0
          outpostArn: string
          snapshotId: string
          throughput: 0
          volumeSize: 0
          volumeType: string
    ephemeralBlockDevices:
        - deviceName: string
          virtualName: string
    name: string
    snapshotWithoutReboot: false
    sourceInstanceId: string
    tags:
        string: string
Copy

AmiFromInstance Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The AmiFromInstance resource accepts the following input properties:

SourceInstanceId
This property is required.
Changes to this property will trigger replacement.
string
ID of the instance to use as the basis of the AMI.
DeprecationTime string
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
Description string
Longer, human-readable description for the AMI.
EbsBlockDevices List<AmiFromInstanceEbsBlockDevice>
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
EphemeralBlockDevices Changes to this property will trigger replacement. List<AmiFromInstanceEphemeralBlockDevice>
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
Name Changes to this property will trigger replacement. string
Region-unique name for the AMI.
SnapshotWithoutReboot Changes to this property will trigger replacement. bool
Boolean that overrides the behavior of stopping the instance before snapshotting. This is risky since it may cause a snapshot of an inconsistent filesystem state, but can be used to avoid downtime if the user otherwise guarantees that no filesystem writes will be underway at the time of snapshot.
Tags Dictionary<string, string>
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
SourceInstanceId
This property is required.
Changes to this property will trigger replacement.
string
ID of the instance to use as the basis of the AMI.
DeprecationTime string
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
Description string
Longer, human-readable description for the AMI.
EbsBlockDevices []AmiFromInstanceEbsBlockDeviceArgs
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
EphemeralBlockDevices Changes to this property will trigger replacement. []AmiFromInstanceEphemeralBlockDeviceArgs
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
Name Changes to this property will trigger replacement. string
Region-unique name for the AMI.
SnapshotWithoutReboot Changes to this property will trigger replacement. bool
Boolean that overrides the behavior of stopping the instance before snapshotting. This is risky since it may cause a snapshot of an inconsistent filesystem state, but can be used to avoid downtime if the user otherwise guarantees that no filesystem writes will be underway at the time of snapshot.
Tags map[string]string
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
sourceInstanceId
This property is required.
Changes to this property will trigger replacement.
String
ID of the instance to use as the basis of the AMI.
deprecationTime String
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
description String
Longer, human-readable description for the AMI.
ebsBlockDevices List<AmiFromInstanceEbsBlockDevice>
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
ephemeralBlockDevices Changes to this property will trigger replacement. List<AmiFromInstanceEphemeralBlockDevice>
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
name Changes to this property will trigger replacement. String
Region-unique name for the AMI.
snapshotWithoutReboot Changes to this property will trigger replacement. 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.
tags Map<String,String>
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
sourceInstanceId
This property is required.
Changes to this property will trigger replacement.
string
ID of the instance to use as the basis of the AMI.
deprecationTime string
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
description string
Longer, human-readable description for the AMI.
ebsBlockDevices AmiFromInstanceEbsBlockDevice[]
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
ephemeralBlockDevices Changes to this property will trigger replacement. AmiFromInstanceEphemeralBlockDevice[]
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
name Changes to this property will trigger replacement. string
Region-unique name for the AMI.
snapshotWithoutReboot Changes to this property will trigger replacement. 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.
tags {[key: string]: string}
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
source_instance_id
This property is required.
Changes to this property will trigger replacement.
str
ID of the instance to use as the basis of the AMI.
deprecation_time str
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
description str
Longer, human-readable description for the AMI.
ebs_block_devices Sequence[AmiFromInstanceEbsBlockDeviceArgs]
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
ephemeral_block_devices Changes to this property will trigger replacement. Sequence[AmiFromInstanceEphemeralBlockDeviceArgs]
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
name Changes to this property will trigger replacement. str
Region-unique name for the AMI.
snapshot_without_reboot Changes to this property will trigger replacement. bool
Boolean that overrides the behavior of stopping the instance before snapshotting. This is risky since it may cause a snapshot of an inconsistent filesystem state, but can be used to avoid downtime if the user otherwise guarantees that no filesystem writes will be underway at the time of snapshot.
tags Mapping[str, str]
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
sourceInstanceId
This property is required.
Changes to this property will trigger replacement.
String
ID of the instance to use as the basis of the AMI.
deprecationTime String
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
description String
Longer, human-readable description for the AMI.
ebsBlockDevices List<Property Map>
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
ephemeralBlockDevices Changes to this property will trigger replacement. List<Property Map>
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
name Changes to this property will trigger replacement. String
Region-unique name for the AMI.
snapshotWithoutReboot Changes to this property will trigger replacement. 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.
tags Map<String>
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Outputs

All input properties are implicitly available as output properties. Additionally, the AmiFromInstance resource produces the following output properties:

Architecture string
Machine architecture for created instances. Defaults to x86_64.
Arn string
ARN of the AMI.
BootMode string
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
EnaSupport bool
Whether enhanced networking with ENA is enabled. Defaults to false.
Hypervisor string
Id string
The provider-assigned unique ID for this managed resource.
ImageLocation 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.
ImageOwnerAlias string
ImageType string
ImdsSupport string
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
KernelId string
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
LastLaunchedTime string
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
ManageEbsSnapshots bool
OwnerId string
Platform string
PlatformDetails string
Public bool
RamdiskId string
ID of an initrd image (ARI) that will be used when booting the created instances.
RootDeviceName string
Name of the root device (for example, /dev/sda1, or /dev/xvda).
RootSnapshotId string
SriovNetSupport string
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
TagsAll Dictionary<string, string>

Deprecated: Please use tags instead.

TpmSupport string
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
UefiData string
Base64 representation of the non-volatile UEFI variable store.
UsageOperation string
VirtualizationType 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.
Architecture string
Machine architecture for created instances. Defaults to x86_64.
Arn string
ARN of the AMI.
BootMode string
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
EnaSupport bool
Whether enhanced networking with ENA is enabled. Defaults to false.
Hypervisor string
Id string
The provider-assigned unique ID for this managed resource.
ImageLocation 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.
ImageOwnerAlias string
ImageType string
ImdsSupport string
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
KernelId string
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
LastLaunchedTime string
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
ManageEbsSnapshots bool
OwnerId string
Platform string
PlatformDetails string
Public bool
RamdiskId string
ID of an initrd image (ARI) that will be used when booting the created instances.
RootDeviceName string
Name of the root device (for example, /dev/sda1, or /dev/xvda).
RootSnapshotId string
SriovNetSupport string
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
TagsAll map[string]string

Deprecated: Please use tags instead.

TpmSupport string
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
UefiData string
Base64 representation of the non-volatile UEFI variable store.
UsageOperation string
VirtualizationType 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.
architecture String
Machine architecture for created instances. Defaults to x86_64.
arn String
ARN of the AMI.
bootMode String
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
enaSupport Boolean
Whether enhanced networking with ENA is enabled. Defaults to false.
hypervisor String
id String
The provider-assigned unique ID for this managed resource.
imageLocation 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.
imageOwnerAlias String
imageType String
imdsSupport String
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
kernelId String
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
lastLaunchedTime String
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
manageEbsSnapshots Boolean
ownerId String
platform String
platformDetails String
public_ Boolean
ramdiskId String
ID of an initrd image (ARI) that will be used when booting the created instances.
rootDeviceName String
Name of the root device (for example, /dev/sda1, or /dev/xvda).
rootSnapshotId String
sriovNetSupport String
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
tagsAll Map<String,String>

Deprecated: Please use tags instead.

tpmSupport String
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
uefiData String
Base64 representation of the non-volatile UEFI variable store.
usageOperation String
virtualizationType 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.
architecture string
Machine architecture for created instances. Defaults to x86_64.
arn string
ARN of the AMI.
bootMode string
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
enaSupport boolean
Whether enhanced networking with ENA is enabled. Defaults to false.
hypervisor string
id string
The provider-assigned unique ID for this managed resource.
imageLocation 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.
imageOwnerAlias string
imageType string
imdsSupport string
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
kernelId string
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
lastLaunchedTime string
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
manageEbsSnapshots boolean
ownerId string
platform string
platformDetails string
public boolean
ramdiskId string
ID of an initrd image (ARI) that will be used when booting the created instances.
rootDeviceName string
Name of the root device (for example, /dev/sda1, or /dev/xvda).
rootSnapshotId string
sriovNetSupport string
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
tagsAll {[key: string]: string}

Deprecated: Please use tags instead.

tpmSupport string
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
uefiData string
Base64 representation of the non-volatile UEFI variable store.
usageOperation string
virtualizationType 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.
architecture str
Machine architecture for created instances. Defaults to x86_64.
arn str
ARN of the AMI.
boot_mode str
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
ena_support bool
Whether enhanced networking with ENA is enabled. Defaults to false.
hypervisor str
id str
The provider-assigned unique ID for this managed resource.
image_location str
Path to an S3 object containing an image manifest, e.g., created by the ec2-upload-bundle command in the EC2 command line tools.
image_owner_alias str
image_type str
imds_support str
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
kernel_id str
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
last_launched_time str
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
manage_ebs_snapshots bool
owner_id str
platform str
platform_details str
public bool
ramdisk_id str
ID of an initrd image (ARI) that will be used when booting the created instances.
root_device_name str
Name of the root device (for example, /dev/sda1, or /dev/xvda).
root_snapshot_id str
sriov_net_support str
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
tags_all Mapping[str, str]

Deprecated: Please use tags instead.

tpm_support str
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
uefi_data str
Base64 representation of the non-volatile UEFI variable store.
usage_operation str
virtualization_type str
Keyword to choose what virtualization mode created instances will use. Can be either "paravirtual" (the default) or "hvm". The choice of virtualization type changes the set of further arguments that are required, as described below.
architecture String
Machine architecture for created instances. Defaults to x86_64.
arn String
ARN of the AMI.
bootMode String
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
enaSupport Boolean
Whether enhanced networking with ENA is enabled. Defaults to false.
hypervisor String
id String
The provider-assigned unique ID for this managed resource.
imageLocation 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.
imageOwnerAlias String
imageType String
imdsSupport String
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
kernelId String
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
lastLaunchedTime String
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
manageEbsSnapshots Boolean
ownerId String
platform String
platformDetails String
public Boolean
ramdiskId String
ID of an initrd image (ARI) that will be used when booting the created instances.
rootDeviceName String
Name of the root device (for example, /dev/sda1, or /dev/xvda).
rootSnapshotId String
sriovNetSupport String
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
tagsAll Map<String>

Deprecated: Please use tags instead.

tpmSupport String
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
uefiData String
Base64 representation of the non-volatile UEFI variable store.
usageOperation String
virtualizationType 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.

Look up Existing AmiFromInstance Resource

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

public static get(name: string, id: Input<ID>, state?: AmiFromInstanceState, opts?: CustomResourceOptions): AmiFromInstance
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        architecture: Optional[str] = None,
        arn: Optional[str] = None,
        boot_mode: Optional[str] = None,
        deprecation_time: Optional[str] = None,
        description: Optional[str] = None,
        ebs_block_devices: Optional[Sequence[AmiFromInstanceEbsBlockDeviceArgs]] = None,
        ena_support: Optional[bool] = None,
        ephemeral_block_devices: Optional[Sequence[AmiFromInstanceEphemeralBlockDeviceArgs]] = None,
        hypervisor: Optional[str] = None,
        image_location: Optional[str] = None,
        image_owner_alias: Optional[str] = None,
        image_type: Optional[str] = None,
        imds_support: Optional[str] = None,
        kernel_id: Optional[str] = None,
        last_launched_time: Optional[str] = None,
        manage_ebs_snapshots: Optional[bool] = None,
        name: Optional[str] = None,
        owner_id: Optional[str] = None,
        platform: Optional[str] = None,
        platform_details: Optional[str] = None,
        public: Optional[bool] = None,
        ramdisk_id: Optional[str] = None,
        root_device_name: Optional[str] = None,
        root_snapshot_id: Optional[str] = None,
        snapshot_without_reboot: Optional[bool] = None,
        source_instance_id: Optional[str] = None,
        sriov_net_support: Optional[str] = None,
        tags: Optional[Mapping[str, str]] = None,
        tags_all: Optional[Mapping[str, str]] = None,
        tpm_support: Optional[str] = None,
        uefi_data: Optional[str] = None,
        usage_operation: Optional[str] = None,
        virtualization_type: Optional[str] = None) -> AmiFromInstance
func GetAmiFromInstance(ctx *Context, name string, id IDInput, state *AmiFromInstanceState, opts ...ResourceOption) (*AmiFromInstance, error)
public static AmiFromInstance Get(string name, Input<string> id, AmiFromInstanceState? state, CustomResourceOptions? opts = null)
public static AmiFromInstance get(String name, Output<String> id, AmiFromInstanceState state, CustomResourceOptions options)
resources:  _:    type: aws:ec2:AmiFromInstance    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
Architecture string
Machine architecture for created instances. Defaults to x86_64.
Arn string
ARN of the AMI.
BootMode string
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
DeprecationTime string
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
Description string
Longer, human-readable description for the AMI.
EbsBlockDevices List<AmiFromInstanceEbsBlockDevice>
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
EnaSupport bool
Whether enhanced networking with ENA is enabled. Defaults to false.
EphemeralBlockDevices Changes to this property will trigger replacement. List<AmiFromInstanceEphemeralBlockDevice>
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
Hypervisor string
ImageLocation 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.
ImageOwnerAlias string
ImageType string
ImdsSupport string
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
KernelId string
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
LastLaunchedTime string
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
ManageEbsSnapshots bool
Name Changes to this property will trigger replacement. string
Region-unique name for the AMI.
OwnerId string
Platform string
PlatformDetails string
Public bool
RamdiskId string
ID of an initrd image (ARI) that will be used when booting the created instances.
RootDeviceName string
Name of the root device (for example, /dev/sda1, or /dev/xvda).
RootSnapshotId string
SnapshotWithoutReboot Changes to this property will trigger replacement. bool
Boolean that overrides the behavior of stopping the instance before snapshotting. This is risky since it may cause a snapshot of an inconsistent filesystem state, but can be used to avoid downtime if the user otherwise guarantees that no filesystem writes will be underway at the time of snapshot.
SourceInstanceId Changes to this property will trigger replacement. string
ID of the instance to use as the basis of the AMI.
SriovNetSupport string
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
Tags Dictionary<string, string>
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll Dictionary<string, string>

Deprecated: Please use tags instead.

TpmSupport string
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
UefiData string
Base64 representation of the non-volatile UEFI variable store.
UsageOperation string
VirtualizationType 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.
Architecture string
Machine architecture for created instances. Defaults to x86_64.
Arn string
ARN of the AMI.
BootMode string
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
DeprecationTime string
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
Description string
Longer, human-readable description for the AMI.
EbsBlockDevices []AmiFromInstanceEbsBlockDeviceArgs
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
EnaSupport bool
Whether enhanced networking with ENA is enabled. Defaults to false.
EphemeralBlockDevices Changes to this property will trigger replacement. []AmiFromInstanceEphemeralBlockDeviceArgs
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
Hypervisor string
ImageLocation 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.
ImageOwnerAlias string
ImageType string
ImdsSupport string
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
KernelId string
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
LastLaunchedTime string
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
ManageEbsSnapshots bool
Name Changes to this property will trigger replacement. string
Region-unique name for the AMI.
OwnerId string
Platform string
PlatformDetails string
Public bool
RamdiskId string
ID of an initrd image (ARI) that will be used when booting the created instances.
RootDeviceName string
Name of the root device (for example, /dev/sda1, or /dev/xvda).
RootSnapshotId string
SnapshotWithoutReboot Changes to this property will trigger replacement. bool
Boolean that overrides the behavior of stopping the instance before snapshotting. This is risky since it may cause a snapshot of an inconsistent filesystem state, but can be used to avoid downtime if the user otherwise guarantees that no filesystem writes will be underway at the time of snapshot.
SourceInstanceId Changes to this property will trigger replacement. string
ID of the instance to use as the basis of the AMI.
SriovNetSupport string
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
Tags map[string]string
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll map[string]string

Deprecated: Please use tags instead.

TpmSupport string
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
UefiData string
Base64 representation of the non-volatile UEFI variable store.
UsageOperation string
VirtualizationType 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.
architecture String
Machine architecture for created instances. Defaults to x86_64.
arn String
ARN of the AMI.
bootMode String
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
deprecationTime String
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
description String
Longer, human-readable description for the AMI.
ebsBlockDevices List<AmiFromInstanceEbsBlockDevice>
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
enaSupport Boolean
Whether enhanced networking with ENA is enabled. Defaults to false.
ephemeralBlockDevices Changes to this property will trigger replacement. List<AmiFromInstanceEphemeralBlockDevice>
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
hypervisor String
imageLocation 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.
imageOwnerAlias String
imageType String
imdsSupport String
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
kernelId String
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
lastLaunchedTime String
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
manageEbsSnapshots Boolean
name Changes to this property will trigger replacement. String
Region-unique name for the AMI.
ownerId String
platform String
platformDetails String
public_ Boolean
ramdiskId String
ID of an initrd image (ARI) that will be used when booting the created instances.
rootDeviceName String
Name of the root device (for example, /dev/sda1, or /dev/xvda).
rootSnapshotId String
snapshotWithoutReboot Changes to this property will trigger replacement. 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.
sourceInstanceId Changes to this property will trigger replacement. String
ID of the instance to use as the basis of the AMI.
sriovNetSupport String
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
tags Map<String,String>
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll Map<String,String>

Deprecated: Please use tags instead.

tpmSupport String
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
uefiData String
Base64 representation of the non-volatile UEFI variable store.
usageOperation String
virtualizationType 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.
architecture string
Machine architecture for created instances. Defaults to x86_64.
arn string
ARN of the AMI.
bootMode string
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
deprecationTime string
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
description string
Longer, human-readable description for the AMI.
ebsBlockDevices AmiFromInstanceEbsBlockDevice[]
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
enaSupport boolean
Whether enhanced networking with ENA is enabled. Defaults to false.
ephemeralBlockDevices Changes to this property will trigger replacement. AmiFromInstanceEphemeralBlockDevice[]
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
hypervisor string
imageLocation 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.
imageOwnerAlias string
imageType string
imdsSupport string
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
kernelId string
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
lastLaunchedTime string
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
manageEbsSnapshots boolean
name Changes to this property will trigger replacement. string
Region-unique name for the AMI.
ownerId string
platform string
platformDetails string
public boolean
ramdiskId string
ID of an initrd image (ARI) that will be used when booting the created instances.
rootDeviceName string
Name of the root device (for example, /dev/sda1, or /dev/xvda).
rootSnapshotId string
snapshotWithoutReboot Changes to this property will trigger replacement. 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.
sourceInstanceId Changes to this property will trigger replacement. string
ID of the instance to use as the basis of the AMI.
sriovNetSupport string
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
tags {[key: string]: string}
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll {[key: string]: string}

Deprecated: Please use tags instead.

tpmSupport string
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
uefiData string
Base64 representation of the non-volatile UEFI variable store.
usageOperation string
virtualizationType 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.
architecture str
Machine architecture for created instances. Defaults to x86_64.
arn str
ARN of the AMI.
boot_mode str
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
deprecation_time str
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
description str
Longer, human-readable description for the AMI.
ebs_block_devices Sequence[AmiFromInstanceEbsBlockDeviceArgs]
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
ena_support bool
Whether enhanced networking with ENA is enabled. Defaults to false.
ephemeral_block_devices Changes to this property will trigger replacement. Sequence[AmiFromInstanceEphemeralBlockDeviceArgs]
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
hypervisor str
image_location str
Path to an S3 object containing an image manifest, e.g., created by the ec2-upload-bundle command in the EC2 command line tools.
image_owner_alias str
image_type str
imds_support str
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
kernel_id str
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
last_launched_time str
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
manage_ebs_snapshots bool
name Changes to this property will trigger replacement. str
Region-unique name for the AMI.
owner_id str
platform str
platform_details str
public bool
ramdisk_id str
ID of an initrd image (ARI) that will be used when booting the created instances.
root_device_name str
Name of the root device (for example, /dev/sda1, or /dev/xvda).
root_snapshot_id str
snapshot_without_reboot Changes to this property will trigger replacement. bool
Boolean that overrides the behavior of stopping the instance before snapshotting. This is risky since it may cause a snapshot of an inconsistent filesystem state, but can be used to avoid downtime if the user otherwise guarantees that no filesystem writes will be underway at the time of snapshot.
source_instance_id Changes to this property will trigger replacement. str
ID of the instance to use as the basis of the AMI.
sriov_net_support str
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
tags Mapping[str, str]
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tags_all Mapping[str, str]

Deprecated: Please use tags instead.

tpm_support str
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
uefi_data str
Base64 representation of the non-volatile UEFI variable store.
usage_operation str
virtualization_type str
Keyword to choose what virtualization mode created instances will use. Can be either "paravirtual" (the default) or "hvm". The choice of virtualization type changes the set of further arguments that are required, as described below.
architecture String
Machine architecture for created instances. Defaults to x86_64.
arn String
ARN of the AMI.
bootMode String
Boot mode of the AMI. For more information, see Boot modes in the Amazon Elastic Compute Cloud User Guide.
deprecationTime String
Date and time to deprecate the AMI. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute. Valid values: RFC3339 time string (YYYY-MM-DDTHH:MM:SSZ)
description String
Longer, human-readable description for the AMI.
ebsBlockDevices List<Property Map>
Nested block describing an EBS block device that should be attached to created instances. The structure of this block is described below.
enaSupport Boolean
Whether enhanced networking with ENA is enabled. Defaults to false.
ephemeralBlockDevices Changes to this property will trigger replacement. List<Property Map>
Nested block describing an ephemeral block device that should be attached to created instances. The structure of this block is described below.
hypervisor String
imageLocation 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.
imageOwnerAlias String
imageType String
imdsSupport String
If EC2 instances started from this image should require the use of the Instance Metadata Service V2 (IMDSv2), set this argument to v2.0. For more information, see Configure instance metadata options for new instances.
kernelId String
ID of the kernel image (AKI) that will be used as the paravirtual kernel in created instances.
lastLaunchedTime String
Date and time, in ISO 8601 date-time format , when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported. For more information, see the following AWS document.
manageEbsSnapshots Boolean
name Changes to this property will trigger replacement. String
Region-unique name for the AMI.
ownerId String
platform String
platformDetails String
public Boolean
ramdiskId String
ID of an initrd image (ARI) that will be used when booting the created instances.
rootDeviceName String
Name of the root device (for example, /dev/sda1, or /dev/xvda).
rootSnapshotId String
snapshotWithoutReboot Changes to this property will trigger replacement. 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.
sourceInstanceId Changes to this property will trigger replacement. String
ID of the instance to use as the basis of the AMI.
sriovNetSupport String
When set to "simple" (the default), enables enhanced networking for created instances. No other value is supported at this time.
tags Map<String>
Map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll Map<String>

Deprecated: Please use tags instead.

tpmSupport String
If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon Elastic Compute Cloud User Guide.
uefiData String
Base64 representation of the non-volatile UEFI variable store.
usageOperation String
virtualizationType 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.

Supporting Types

AmiFromInstanceEbsBlockDevice
, AmiFromInstanceEbsBlockDeviceArgs

DeleteOnTermination bool
Boolean controlling whether the EBS volumes created to support each created instance will be deleted once that instance is terminated.
DeviceName string
Path at which the device is exposed to created instances.
Encrypted bool
Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with snapshot_id.
Iops int
Number of I/O operations per second the created volumes will support.
OutpostArn string

ARN of the Outpost on which the snapshot is stored.

Note: You can specify encrypted or snapshot_id but not both.

SnapshotId string
ID of an EBS snapshot that will be used to initialize the created EBS volumes. If set, the volume_size attribute must be at least as large as the referenced snapshot.
Throughput int
Throughput that the EBS volume supports, in MiB/s. Only valid for volume_type of gp3.
VolumeSize int
Size of created volumes in GiB. If snapshot_id is set and volume_size is omitted then the volume will have the same size as the selected snapshot.
VolumeType string
Type of EBS volume to create. Can be standard, gp2, gp3, io1, io2, sc1 or st1 (Default: standard).
DeleteOnTermination bool
Boolean controlling whether the EBS volumes created to support each created instance will be deleted once that instance is terminated.
DeviceName string
Path at which the device is exposed to created instances.
Encrypted bool
Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with snapshot_id.
Iops int
Number of I/O operations per second the created volumes will support.
OutpostArn string

ARN of the Outpost on which the snapshot is stored.

Note: You can specify encrypted or snapshot_id but not both.

SnapshotId string
ID of an EBS snapshot that will be used to initialize the created EBS volumes. If set, the volume_size attribute must be at least as large as the referenced snapshot.
Throughput int
Throughput that the EBS volume supports, in MiB/s. Only valid for volume_type of gp3.
VolumeSize int
Size of created volumes in GiB. If snapshot_id is set and volume_size is omitted then the volume will have the same size as the selected snapshot.
VolumeType string
Type of EBS volume to create. Can be standard, gp2, gp3, io1, io2, sc1 or st1 (Default: standard).
deleteOnTermination Boolean
Boolean controlling whether the EBS volumes created to support each created instance will be deleted once that instance is terminated.
deviceName String
Path at which the device is exposed to created instances.
encrypted Boolean
Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with snapshot_id.
iops Integer
Number of I/O operations per second the created volumes will support.
outpostArn String

ARN of the Outpost on which the snapshot is stored.

Note: You can specify encrypted or snapshot_id but not both.

snapshotId String
ID of an EBS snapshot that will be used to initialize the created EBS volumes. If set, the volume_size attribute must be at least as large as the referenced snapshot.
throughput Integer
Throughput that the EBS volume supports, in MiB/s. Only valid for volume_type of gp3.
volumeSize Integer
Size of created volumes in GiB. If snapshot_id is set and volume_size is omitted then the volume will have the same size as the selected snapshot.
volumeType String
Type of EBS volume to create. Can be standard, gp2, gp3, io1, io2, sc1 or st1 (Default: standard).
deleteOnTermination boolean
Boolean controlling whether the EBS volumes created to support each created instance will be deleted once that instance is terminated.
deviceName string
Path at which the device is exposed to created instances.
encrypted boolean
Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with snapshot_id.
iops number
Number of I/O operations per second the created volumes will support.
outpostArn string

ARN of the Outpost on which the snapshot is stored.

Note: You can specify encrypted or snapshot_id but not both.

snapshotId string
ID of an EBS snapshot that will be used to initialize the created EBS volumes. If set, the volume_size attribute must be at least as large as the referenced snapshot.
throughput number
Throughput that the EBS volume supports, in MiB/s. Only valid for volume_type of gp3.
volumeSize number
Size of created volumes in GiB. If snapshot_id is set and volume_size is omitted then the volume will have the same size as the selected snapshot.
volumeType string
Type of EBS volume to create. Can be standard, gp2, gp3, io1, io2, sc1 or st1 (Default: standard).
delete_on_termination bool
Boolean controlling whether the EBS volumes created to support each created instance will be deleted once that instance is terminated.
device_name str
Path at which the device is exposed to created instances.
encrypted bool
Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with snapshot_id.
iops int
Number of I/O operations per second the created volumes will support.
outpost_arn str

ARN of the Outpost on which the snapshot is stored.

Note: You can specify encrypted or snapshot_id but not both.

snapshot_id str
ID of an EBS snapshot that will be used to initialize the created EBS volumes. If set, the volume_size attribute must be at least as large as the referenced snapshot.
throughput int
Throughput that the EBS volume supports, in MiB/s. Only valid for volume_type of gp3.
volume_size int
Size of created volumes in GiB. If snapshot_id is set and volume_size is omitted then the volume will have the same size as the selected snapshot.
volume_type str
Type of EBS volume to create. Can be standard, gp2, gp3, io1, io2, sc1 or st1 (Default: standard).
deleteOnTermination Boolean
Boolean controlling whether the EBS volumes created to support each created instance will be deleted once that instance is terminated.
deviceName String
Path at which the device is exposed to created instances.
encrypted Boolean
Boolean controlling whether the created EBS volumes will be encrypted. Can't be used with snapshot_id.
iops Number
Number of I/O operations per second the created volumes will support.
outpostArn String

ARN of the Outpost on which the snapshot is stored.

Note: You can specify encrypted or snapshot_id but not both.

snapshotId String
ID of an EBS snapshot that will be used to initialize the created EBS volumes. If set, the volume_size attribute must be at least as large as the referenced snapshot.
throughput Number
Throughput that the EBS volume supports, in MiB/s. Only valid for volume_type of gp3.
volumeSize Number
Size of created volumes in GiB. If snapshot_id is set and volume_size is omitted then the volume will have the same size as the selected snapshot.
volumeType String
Type of EBS volume to create. Can be standard, gp2, gp3, io1, io2, sc1 or st1 (Default: standard).

AmiFromInstanceEphemeralBlockDevice
, AmiFromInstanceEphemeralBlockDeviceArgs

DeviceName string
Path at which the device is exposed to created instances.
VirtualName string
Name for the ephemeral device, of the form "ephemeralN" where N is a volume number starting from zero.
DeviceName string
Path at which the device is exposed to created instances.
VirtualName string
Name for the ephemeral device, of the form "ephemeralN" where N is a volume number starting from zero.
deviceName String
Path at which the device is exposed to created instances.
virtualName String
Name for the ephemeral device, of the form "ephemeralN" where N is a volume number starting from zero.
deviceName string
Path at which the device is exposed to created instances.
virtualName string
Name for the ephemeral device, of the form "ephemeralN" where N is a volume number starting from zero.
device_name str
Path at which the device is exposed to created instances.
virtual_name str
Name for the ephemeral device, of the form "ephemeralN" where N is a volume number starting from zero.
deviceName String
Path at which the device is exposed to created instances.
virtualName String
Name for the ephemeral device, of the form "ephemeralN" where N is a volume number starting from zero.

Package Details

Repository
AWS Classic pulumi/pulumi-aws
License
Apache-2.0
Notes
This Pulumi package is based on the aws Terraform Provider.