1. Packages
  2. AWS Classic
  3. API Docs
  4. ec2
  5. getAmi

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.28.1 published on Thursday, Mar 28, 2024 by Pulumi

aws.ec2.getAmi

Explore with Pulumi AI

aws logo

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.28.1 published on Thursday, Mar 28, 2024 by Pulumi

    Use this data source to get the ID of a registered AMI for use in other resources.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = aws.ec2.getAmi({
        executableUsers: ["self"],
        mostRecent: true,
        nameRegex: "^myami-\\d{3}",
        owners: ["self"],
        filters: [
            {
                name: "name",
                values: ["myami-*"],
            },
            {
                name: "root-device-type",
                values: ["ebs"],
            },
            {
                name: "virtualization-type",
                values: ["hvm"],
            },
        ],
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.ec2.get_ami(executable_users=["self"],
        most_recent=True,
        name_regex="^myami-\\d{3}",
        owners=["self"],
        filters=[
            aws.ec2.GetAmiFilterArgs(
                name="name",
                values=["myami-*"],
            ),
            aws.ec2.GetAmiFilterArgs(
                name="root-device-type",
                values=["ebs"],
            ),
            aws.ec2.GetAmiFilterArgs(
                name="virtualization-type",
                values=["hvm"],
            ),
        ])
    
    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.LookupAmi(ctx, &ec2.LookupAmiArgs{
    			ExecutableUsers: []string{
    				"self",
    			},
    			MostRecent: pulumi.BoolRef(true),
    			NameRegex:  pulumi.StringRef("^myami-\\d{3}"),
    			Owners: []string{
    				"self",
    			},
    			Filters: []ec2.GetAmiFilter{
    				{
    					Name: "name",
    					Values: []string{
    						"myami-*",
    					},
    				},
    				{
    					Name: "root-device-type",
    					Values: []string{
    						"ebs",
    					},
    				},
    				{
    					Name: "virtualization-type",
    					Values: []string{
    						"hvm",
    					},
    				},
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Aws.Ec2.GetAmi.Invoke(new()
        {
            ExecutableUsers = new[]
            {
                "self",
            },
            MostRecent = true,
            NameRegex = "^myami-\\d{3}",
            Owners = new[]
            {
                "self",
            },
            Filters = new[]
            {
                new Aws.Ec2.Inputs.GetAmiFilterInputArgs
                {
                    Name = "name",
                    Values = new[]
                    {
                        "myami-*",
                    },
                },
                new Aws.Ec2.Inputs.GetAmiFilterInputArgs
                {
                    Name = "root-device-type",
                    Values = new[]
                    {
                        "ebs",
                    },
                },
                new Aws.Ec2.Inputs.GetAmiFilterInputArgs
                {
                    Name = "virtualization-type",
                    Values = new[]
                    {
                        "hvm",
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.ec2.Ec2Functions;
    import com.pulumi.aws.ec2.inputs.GetAmiArgs;
    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) {
            final var example = Ec2Functions.getAmi(GetAmiArgs.builder()
                .executableUsers("self")
                .mostRecent(true)
                .nameRegex("^myami-\\d{3}")
                .owners("self")
                .filters(            
                    GetAmiFilterArgs.builder()
                        .name("name")
                        .values("myami-*")
                        .build(),
                    GetAmiFilterArgs.builder()
                        .name("root-device-type")
                        .values("ebs")
                        .build(),
                    GetAmiFilterArgs.builder()
                        .name("virtualization-type")
                        .values("hvm")
                        .build())
                .build());
    
        }
    }
    
    variables:
      example:
        fn::invoke:
          Function: aws:ec2:getAmi
          Arguments:
            executableUsers:
              - self
            mostRecent: true
            nameRegex: ^myami-\d{3}
            owners:
              - self
            filters:
              - name: name
                values:
                  - myami-*
              - name: root-device-type
                values:
                  - ebs
              - name: virtualization-type
                values:
                  - hvm
    

    Using getAmi

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getAmi(args: GetAmiArgs, opts?: InvokeOptions): Promise<GetAmiResult>
    function getAmiOutput(args: GetAmiOutputArgs, opts?: InvokeOptions): Output<GetAmiResult>
    def get_ami(executable_users: Optional[Sequence[str]] = None,
                filters: Optional[Sequence[GetAmiFilter]] = None,
                include_deprecated: Optional[bool] = None,
                most_recent: Optional[bool] = None,
                name_regex: Optional[str] = None,
                owners: Optional[Sequence[str]] = None,
                tags: Optional[Mapping[str, str]] = None,
                opts: Optional[InvokeOptions] = None) -> GetAmiResult
    def get_ami_output(executable_users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                filters: Optional[pulumi.Input[Sequence[pulumi.Input[GetAmiFilterArgs]]]] = None,
                include_deprecated: Optional[pulumi.Input[bool]] = None,
                most_recent: Optional[pulumi.Input[bool]] = None,
                name_regex: Optional[pulumi.Input[str]] = None,
                owners: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
                opts: Optional[InvokeOptions] = None) -> Output[GetAmiResult]
    func LookupAmi(ctx *Context, args *LookupAmiArgs, opts ...InvokeOption) (*LookupAmiResult, error)
    func LookupAmiOutput(ctx *Context, args *LookupAmiOutputArgs, opts ...InvokeOption) LookupAmiResultOutput

    > Note: This function is named LookupAmi in the Go SDK.

    public static class GetAmi 
    {
        public static Task<GetAmiResult> InvokeAsync(GetAmiArgs args, InvokeOptions? opts = null)
        public static Output<GetAmiResult> Invoke(GetAmiInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetAmiResult> getAmi(GetAmiArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: aws:ec2/getAmi:getAmi
      arguments:
        # arguments dictionary

    The following arguments are supported:

    ExecutableUsers List<string>
    Limit search to users with explicit launch permission on the image. Valid items are the numeric account ID or self.
    Filters List<GetAmiFilter>
    One or more name/value pairs to filter off of. There are several valid keys, for a full reference, check out [describe-images in the AWS CLI reference][1].
    IncludeDeprecated bool
    If true, all deprecated AMIs are included in the response. If false, no deprecated AMIs are included in the response. If no value is specified, the default value is false.
    MostRecent bool
    If more than one result is returned, use the most recent AMI.
    NameRegex string

    Regex string to apply to the AMI list returned by AWS. This allows more advanced filtering not supported from the AWS API. This filtering is done locally on what AWS returns, and could have a performance impact if the result is large. Combine this with other options to narrow down the list AWS returns.

    NOTE: If more or less than a single match is returned by the search, this call will fail. Ensure that your search is specific enough to return a single AMI ID only, or use most_recent to choose the most recent one. If you want to match multiple AMIs, use the aws.ec2.getAmiIds data source instead.

    Owners List<string>
    List of AMI owners to limit search. Valid values: an AWS account ID, self (the current account), or an AWS owner alias (e.g., amazon, aws-marketplace, microsoft).
    Tags Dictionary<string, string>
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    ExecutableUsers []string
    Limit search to users with explicit launch permission on the image. Valid items are the numeric account ID or self.
    Filters []GetAmiFilter
    One or more name/value pairs to filter off of. There are several valid keys, for a full reference, check out [describe-images in the AWS CLI reference][1].
    IncludeDeprecated bool
    If true, all deprecated AMIs are included in the response. If false, no deprecated AMIs are included in the response. If no value is specified, the default value is false.
    MostRecent bool
    If more than one result is returned, use the most recent AMI.
    NameRegex string

    Regex string to apply to the AMI list returned by AWS. This allows more advanced filtering not supported from the AWS API. This filtering is done locally on what AWS returns, and could have a performance impact if the result is large. Combine this with other options to narrow down the list AWS returns.

    NOTE: If more or less than a single match is returned by the search, this call will fail. Ensure that your search is specific enough to return a single AMI ID only, or use most_recent to choose the most recent one. If you want to match multiple AMIs, use the aws.ec2.getAmiIds data source instead.

    Owners []string
    List of AMI owners to limit search. Valid values: an AWS account ID, self (the current account), or an AWS owner alias (e.g., amazon, aws-marketplace, microsoft).
    Tags map[string]string
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    executableUsers List<String>
    Limit search to users with explicit launch permission on the image. Valid items are the numeric account ID or self.
    filters List<GetAmiFilter>
    One or more name/value pairs to filter off of. There are several valid keys, for a full reference, check out [describe-images in the AWS CLI reference][1].
    includeDeprecated Boolean
    If true, all deprecated AMIs are included in the response. If false, no deprecated AMIs are included in the response. If no value is specified, the default value is false.
    mostRecent Boolean
    If more than one result is returned, use the most recent AMI.
    nameRegex String

    Regex string to apply to the AMI list returned by AWS. This allows more advanced filtering not supported from the AWS API. This filtering is done locally on what AWS returns, and could have a performance impact if the result is large. Combine this with other options to narrow down the list AWS returns.

    NOTE: If more or less than a single match is returned by the search, this call will fail. Ensure that your search is specific enough to return a single AMI ID only, or use most_recent to choose the most recent one. If you want to match multiple AMIs, use the aws.ec2.getAmiIds data source instead.

    owners List<String>
    List of AMI owners to limit search. Valid values: an AWS account ID, self (the current account), or an AWS owner alias (e.g., amazon, aws-marketplace, microsoft).
    tags Map<String,String>
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    executableUsers string[]
    Limit search to users with explicit launch permission on the image. Valid items are the numeric account ID or self.
    filters GetAmiFilter[]
    One or more name/value pairs to filter off of. There are several valid keys, for a full reference, check out [describe-images in the AWS CLI reference][1].
    includeDeprecated boolean
    If true, all deprecated AMIs are included in the response. If false, no deprecated AMIs are included in the response. If no value is specified, the default value is false.
    mostRecent boolean
    If more than one result is returned, use the most recent AMI.
    nameRegex string

    Regex string to apply to the AMI list returned by AWS. This allows more advanced filtering not supported from the AWS API. This filtering is done locally on what AWS returns, and could have a performance impact if the result is large. Combine this with other options to narrow down the list AWS returns.

    NOTE: If more or less than a single match is returned by the search, this call will fail. Ensure that your search is specific enough to return a single AMI ID only, or use most_recent to choose the most recent one. If you want to match multiple AMIs, use the aws.ec2.getAmiIds data source instead.

    owners string[]
    List of AMI owners to limit search. Valid values: an AWS account ID, self (the current account), or an AWS owner alias (e.g., amazon, aws-marketplace, microsoft).
    tags {[key: string]: string}
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    executable_users Sequence[str]
    Limit search to users with explicit launch permission on the image. Valid items are the numeric account ID or self.
    filters Sequence[GetAmiFilter]
    One or more name/value pairs to filter off of. There are several valid keys, for a full reference, check out [describe-images in the AWS CLI reference][1].
    include_deprecated bool
    If true, all deprecated AMIs are included in the response. If false, no deprecated AMIs are included in the response. If no value is specified, the default value is false.
    most_recent bool
    If more than one result is returned, use the most recent AMI.
    name_regex str

    Regex string to apply to the AMI list returned by AWS. This allows more advanced filtering not supported from the AWS API. This filtering is done locally on what AWS returns, and could have a performance impact if the result is large. Combine this with other options to narrow down the list AWS returns.

    NOTE: If more or less than a single match is returned by the search, this call will fail. Ensure that your search is specific enough to return a single AMI ID only, or use most_recent to choose the most recent one. If you want to match multiple AMIs, use the aws.ec2.getAmiIds data source instead.

    owners Sequence[str]
    List of AMI owners to limit search. Valid values: an AWS account ID, self (the current account), or an AWS owner alias (e.g., amazon, aws-marketplace, microsoft).
    tags Mapping[str, str]
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    executableUsers List<String>
    Limit search to users with explicit launch permission on the image. Valid items are the numeric account ID or self.
    filters List<Property Map>
    One or more name/value pairs to filter off of. There are several valid keys, for a full reference, check out [describe-images in the AWS CLI reference][1].
    includeDeprecated Boolean
    If true, all deprecated AMIs are included in the response. If false, no deprecated AMIs are included in the response. If no value is specified, the default value is false.
    mostRecent Boolean
    If more than one result is returned, use the most recent AMI.
    nameRegex String

    Regex string to apply to the AMI list returned by AWS. This allows more advanced filtering not supported from the AWS API. This filtering is done locally on what AWS returns, and could have a performance impact if the result is large. Combine this with other options to narrow down the list AWS returns.

    NOTE: If more or less than a single match is returned by the search, this call will fail. Ensure that your search is specific enough to return a single AMI ID only, or use most_recent to choose the most recent one. If you want to match multiple AMIs, use the aws.ec2.getAmiIds data source instead.

    owners List<String>
    List of AMI owners to limit search. Valid values: an AWS account ID, self (the current account), or an AWS owner alias (e.g., amazon, aws-marketplace, microsoft).
    tags Map<String>
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.

    getAmi Result

    The following output properties are available:

    Architecture string
    OS architecture of the AMI (ie: i386 or x86_64).
    Arn string
    ARN of the AMI.
    BlockDeviceMappings List<GetAmiBlockDeviceMapping>
    Set of objects with block device mappings of the AMI.
    BootMode string
    Boot mode of the image.
    CreationDate string
    Date and time the image was created.
    DeprecationTime string
    Date and time when the image will be deprecated.
    Description string
    Description of the AMI that was provided during image creation.
    EnaSupport bool
    Whether enhanced networking with ENA is enabled.
    Hypervisor string
    Hypervisor type of the image.
    Id string
    The provider-assigned unique ID for this managed resource.
    ImageId string
    ID of the AMI. Should be the same as the resource id.
    ImageLocation string
    Location of the AMI.
    ImageOwnerAlias string
    AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
    ImageType string
    Type of image.
    ImdsSupport string
    Instance Metadata Service (IMDS) support mode for the image. Set to v2.0 if instances ran from this image enforce IMDSv2.
    KernelId string
    Kernel associated with the image, if any. Only applicable for machine images.
    Name string
    Name of the AMI that was provided during image creation.
    OwnerId string
    AWS account ID of the image owner.
    Platform string
    Value is Windows for Windows AMIs; otherwise blank.
    PlatformDetails string
    Platform details associated with the billing code of the AMI.
    ProductCodes List<GetAmiProductCode>
    Any product codes associated with the AMI.

    • product_codes.#.product_code_id - The product code.
    • product_codes.#.product_code_type - The type of product code.
    Public bool
    true if the image has public launch permissions.
    RamdiskId string
    RAM disk associated with the image, if any. Only applicable for machine images.
    RootDeviceName string
    Device name of the root device.
    RootDeviceType string
    Type of root device (ie: ebs or instance-store).
    RootSnapshotId string
    Snapshot id associated with the root device, if any (only applies to ebs root devices).
    SriovNetSupport string
    Whether enhanced networking is enabled.
    State string
    Current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.
    StateReason Dictionary<string, string>
    Describes a state change. Fields are UNSET if not available.

    • state_reason.code - The reason code for the state change.
    • state_reason.message - The message for the state change.
    Tags Dictionary<string, string>
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    TpmSupport string
    If the image is configured for NitroTPM support, the value is v2.0.
    UsageOperation string
    Operation of the Amazon EC2 instance and the billing code that is associated with the AMI.
    VirtualizationType string
    Type of virtualization of the AMI (ie: hvm or paravirtual).
    ExecutableUsers List<string>
    Filters List<GetAmiFilter>
    IncludeDeprecated bool
    MostRecent bool
    NameRegex string
    Owners List<string>
    Architecture string
    OS architecture of the AMI (ie: i386 or x86_64).
    Arn string
    ARN of the AMI.
    BlockDeviceMappings []GetAmiBlockDeviceMapping
    Set of objects with block device mappings of the AMI.
    BootMode string
    Boot mode of the image.
    CreationDate string
    Date and time the image was created.
    DeprecationTime string
    Date and time when the image will be deprecated.
    Description string
    Description of the AMI that was provided during image creation.
    EnaSupport bool
    Whether enhanced networking with ENA is enabled.
    Hypervisor string
    Hypervisor type of the image.
    Id string
    The provider-assigned unique ID for this managed resource.
    ImageId string
    ID of the AMI. Should be the same as the resource id.
    ImageLocation string
    Location of the AMI.
    ImageOwnerAlias string
    AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
    ImageType string
    Type of image.
    ImdsSupport string
    Instance Metadata Service (IMDS) support mode for the image. Set to v2.0 if instances ran from this image enforce IMDSv2.
    KernelId string
    Kernel associated with the image, if any. Only applicable for machine images.
    Name string
    Name of the AMI that was provided during image creation.
    OwnerId string
    AWS account ID of the image owner.
    Platform string
    Value is Windows for Windows AMIs; otherwise blank.
    PlatformDetails string
    Platform details associated with the billing code of the AMI.
    ProductCodes []GetAmiProductCode
    Any product codes associated with the AMI.

    • product_codes.#.product_code_id - The product code.
    • product_codes.#.product_code_type - The type of product code.
    Public bool
    true if the image has public launch permissions.
    RamdiskId string
    RAM disk associated with the image, if any. Only applicable for machine images.
    RootDeviceName string
    Device name of the root device.
    RootDeviceType string
    Type of root device (ie: ebs or instance-store).
    RootSnapshotId string
    Snapshot id associated with the root device, if any (only applies to ebs root devices).
    SriovNetSupport string
    Whether enhanced networking is enabled.
    State string
    Current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.
    StateReason map[string]string
    Describes a state change. Fields are UNSET if not available.

    • state_reason.code - The reason code for the state change.
    • state_reason.message - The message for the state change.
    Tags map[string]string
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    TpmSupport string
    If the image is configured for NitroTPM support, the value is v2.0.
    UsageOperation string
    Operation of the Amazon EC2 instance and the billing code that is associated with the AMI.
    VirtualizationType string
    Type of virtualization of the AMI (ie: hvm or paravirtual).
    ExecutableUsers []string
    Filters []GetAmiFilter
    IncludeDeprecated bool
    MostRecent bool
    NameRegex string
    Owners []string
    architecture String
    OS architecture of the AMI (ie: i386 or x86_64).
    arn String
    ARN of the AMI.
    blockDeviceMappings List<GetAmiBlockDeviceMapping>
    Set of objects with block device mappings of the AMI.
    bootMode String
    Boot mode of the image.
    creationDate String
    Date and time the image was created.
    deprecationTime String
    Date and time when the image will be deprecated.
    description String
    Description of the AMI that was provided during image creation.
    enaSupport Boolean
    Whether enhanced networking with ENA is enabled.
    hypervisor String
    Hypervisor type of the image.
    id String
    The provider-assigned unique ID for this managed resource.
    imageId String
    ID of the AMI. Should be the same as the resource id.
    imageLocation String
    Location of the AMI.
    imageOwnerAlias String
    AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
    imageType String
    Type of image.
    imdsSupport String
    Instance Metadata Service (IMDS) support mode for the image. Set to v2.0 if instances ran from this image enforce IMDSv2.
    kernelId String
    Kernel associated with the image, if any. Only applicable for machine images.
    name String
    Name of the AMI that was provided during image creation.
    ownerId String
    AWS account ID of the image owner.
    platform String
    Value is Windows for Windows AMIs; otherwise blank.
    platformDetails String
    Platform details associated with the billing code of the AMI.
    productCodes List<GetAmiProductCode>
    Any product codes associated with the AMI.

    • product_codes.#.product_code_id - The product code.
    • product_codes.#.product_code_type - The type of product code.
    public_ Boolean
    true if the image has public launch permissions.
    ramdiskId String
    RAM disk associated with the image, if any. Only applicable for machine images.
    rootDeviceName String
    Device name of the root device.
    rootDeviceType String
    Type of root device (ie: ebs or instance-store).
    rootSnapshotId String
    Snapshot id associated with the root device, if any (only applies to ebs root devices).
    sriovNetSupport String
    Whether enhanced networking is enabled.
    state String
    Current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.
    stateReason Map<String,String>
    Describes a state change. Fields are UNSET if not available.

    • state_reason.code - The reason code for the state change.
    • state_reason.message - The message for the state change.
    tags Map<String,String>
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    tpmSupport String
    If the image is configured for NitroTPM support, the value is v2.0.
    usageOperation String
    Operation of the Amazon EC2 instance and the billing code that is associated with the AMI.
    virtualizationType String
    Type of virtualization of the AMI (ie: hvm or paravirtual).
    executableUsers List<String>
    filters List<GetAmiFilter>
    includeDeprecated Boolean
    mostRecent Boolean
    nameRegex String
    owners List<String>
    architecture string
    OS architecture of the AMI (ie: i386 or x86_64).
    arn string
    ARN of the AMI.
    blockDeviceMappings GetAmiBlockDeviceMapping[]
    Set of objects with block device mappings of the AMI.
    bootMode string
    Boot mode of the image.
    creationDate string
    Date and time the image was created.
    deprecationTime string
    Date and time when the image will be deprecated.
    description string
    Description of the AMI that was provided during image creation.
    enaSupport boolean
    Whether enhanced networking with ENA is enabled.
    hypervisor string
    Hypervisor type of the image.
    id string
    The provider-assigned unique ID for this managed resource.
    imageId string
    ID of the AMI. Should be the same as the resource id.
    imageLocation string
    Location of the AMI.
    imageOwnerAlias string
    AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
    imageType string
    Type of image.
    imdsSupport string
    Instance Metadata Service (IMDS) support mode for the image. Set to v2.0 if instances ran from this image enforce IMDSv2.
    kernelId string
    Kernel associated with the image, if any. Only applicable for machine images.
    name string
    Name of the AMI that was provided during image creation.
    ownerId string
    AWS account ID of the image owner.
    platform string
    Value is Windows for Windows AMIs; otherwise blank.
    platformDetails string
    Platform details associated with the billing code of the AMI.
    productCodes GetAmiProductCode[]
    Any product codes associated with the AMI.

    • product_codes.#.product_code_id - The product code.
    • product_codes.#.product_code_type - The type of product code.
    public boolean
    true if the image has public launch permissions.
    ramdiskId string
    RAM disk associated with the image, if any. Only applicable for machine images.
    rootDeviceName string
    Device name of the root device.
    rootDeviceType string
    Type of root device (ie: ebs or instance-store).
    rootSnapshotId string
    Snapshot id associated with the root device, if any (only applies to ebs root devices).
    sriovNetSupport string
    Whether enhanced networking is enabled.
    state string
    Current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.
    stateReason {[key: string]: string}
    Describes a state change. Fields are UNSET if not available.

    • state_reason.code - The reason code for the state change.
    • state_reason.message - The message for the state change.
    tags {[key: string]: string}
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    tpmSupport string
    If the image is configured for NitroTPM support, the value is v2.0.
    usageOperation string
    Operation of the Amazon EC2 instance and the billing code that is associated with the AMI.
    virtualizationType string
    Type of virtualization of the AMI (ie: hvm or paravirtual).
    executableUsers string[]
    filters GetAmiFilter[]
    includeDeprecated boolean
    mostRecent boolean
    nameRegex string
    owners string[]
    architecture str
    OS architecture of the AMI (ie: i386 or x86_64).
    arn str
    ARN of the AMI.
    block_device_mappings Sequence[GetAmiBlockDeviceMapping]
    Set of objects with block device mappings of the AMI.
    boot_mode str
    Boot mode of the image.
    creation_date str
    Date and time the image was created.
    deprecation_time str
    Date and time when the image will be deprecated.
    description str
    Description of the AMI that was provided during image creation.
    ena_support bool
    Whether enhanced networking with ENA is enabled.
    hypervisor str
    Hypervisor type of the image.
    id str
    The provider-assigned unique ID for this managed resource.
    image_id str
    ID of the AMI. Should be the same as the resource id.
    image_location str
    Location of the AMI.
    image_owner_alias str
    AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
    image_type str
    Type of image.
    imds_support str
    Instance Metadata Service (IMDS) support mode for the image. Set to v2.0 if instances ran from this image enforce IMDSv2.
    kernel_id str
    Kernel associated with the image, if any. Only applicable for machine images.
    name str
    Name of the AMI that was provided during image creation.
    owner_id str
    AWS account ID of the image owner.
    platform str
    Value is Windows for Windows AMIs; otherwise blank.
    platform_details str
    Platform details associated with the billing code of the AMI.
    product_codes Sequence[GetAmiProductCode]
    Any product codes associated with the AMI.

    • product_codes.#.product_code_id - The product code.
    • product_codes.#.product_code_type - The type of product code.
    public bool
    true if the image has public launch permissions.
    ramdisk_id str
    RAM disk associated with the image, if any. Only applicable for machine images.
    root_device_name str
    Device name of the root device.
    root_device_type str
    Type of root device (ie: ebs or instance-store).
    root_snapshot_id str
    Snapshot id associated with the root device, if any (only applies to ebs root devices).
    sriov_net_support str
    Whether enhanced networking is enabled.
    state str
    Current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.
    state_reason Mapping[str, str]
    Describes a state change. Fields are UNSET if not available.

    • state_reason.code - The reason code for the state change.
    • state_reason.message - The message for the state change.
    tags Mapping[str, str]
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    tpm_support str
    If the image is configured for NitroTPM support, the value is v2.0.
    usage_operation str
    Operation of the Amazon EC2 instance and the billing code that is associated with the AMI.
    virtualization_type str
    Type of virtualization of the AMI (ie: hvm or paravirtual).
    executable_users Sequence[str]
    filters Sequence[GetAmiFilter]
    include_deprecated bool
    most_recent bool
    name_regex str
    owners Sequence[str]
    architecture String
    OS architecture of the AMI (ie: i386 or x86_64).
    arn String
    ARN of the AMI.
    blockDeviceMappings List<Property Map>
    Set of objects with block device mappings of the AMI.
    bootMode String
    Boot mode of the image.
    creationDate String
    Date and time the image was created.
    deprecationTime String
    Date and time when the image will be deprecated.
    description String
    Description of the AMI that was provided during image creation.
    enaSupport Boolean
    Whether enhanced networking with ENA is enabled.
    hypervisor String
    Hypervisor type of the image.
    id String
    The provider-assigned unique ID for this managed resource.
    imageId String
    ID of the AMI. Should be the same as the resource id.
    imageLocation String
    Location of the AMI.
    imageOwnerAlias String
    AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
    imageType String
    Type of image.
    imdsSupport String
    Instance Metadata Service (IMDS) support mode for the image. Set to v2.0 if instances ran from this image enforce IMDSv2.
    kernelId String
    Kernel associated with the image, if any. Only applicable for machine images.
    name String
    Name of the AMI that was provided during image creation.
    ownerId String
    AWS account ID of the image owner.
    platform String
    Value is Windows for Windows AMIs; otherwise blank.
    platformDetails String
    Platform details associated with the billing code of the AMI.
    productCodes List<Property Map>
    Any product codes associated with the AMI.

    • product_codes.#.product_code_id - The product code.
    • product_codes.#.product_code_type - The type of product code.
    public Boolean
    true if the image has public launch permissions.
    ramdiskId String
    RAM disk associated with the image, if any. Only applicable for machine images.
    rootDeviceName String
    Device name of the root device.
    rootDeviceType String
    Type of root device (ie: ebs or instance-store).
    rootSnapshotId String
    Snapshot id associated with the root device, if any (only applies to ebs root devices).
    sriovNetSupport String
    Whether enhanced networking is enabled.
    state String
    Current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.
    stateReason Map<String>
    Describes a state change. Fields are UNSET if not available.

    • state_reason.code - The reason code for the state change.
    • state_reason.message - The message for the state change.
    tags Map<String>
    Any tags assigned to the image.

    • tags.#.key - Key name of the tag.
    • tags.#.value - Value of the tag.
    tpmSupport String
    If the image is configured for NitroTPM support, the value is v2.0.
    usageOperation String
    Operation of the Amazon EC2 instance and the billing code that is associated with the AMI.
    virtualizationType String
    Type of virtualization of the AMI (ie: hvm or paravirtual).
    executableUsers List<String>
    filters List<Property Map>
    includeDeprecated Boolean
    mostRecent Boolean
    nameRegex String
    owners List<String>

    Supporting Types

    GetAmiBlockDeviceMapping

    DeviceName string
    Physical name of the device.
    Ebs Dictionary<string, string>
    Map containing EBS information, if the device is EBS based. Unlike most object attributes, these are accessed directly (e.g., ebs.volume_size or ebs["volume_size"]) rather than accessed through the first element of a list (e.g., ebs[0].volume_size).
    NoDevice string
    Suppresses the specified device included in the block device mapping of the AMI.
    VirtualName string
    Virtual device name (for instance stores).
    DeviceName string
    Physical name of the device.
    Ebs map[string]string
    Map containing EBS information, if the device is EBS based. Unlike most object attributes, these are accessed directly (e.g., ebs.volume_size or ebs["volume_size"]) rather than accessed through the first element of a list (e.g., ebs[0].volume_size).
    NoDevice string
    Suppresses the specified device included in the block device mapping of the AMI.
    VirtualName string
    Virtual device name (for instance stores).
    deviceName String
    Physical name of the device.
    ebs Map<String,String>
    Map containing EBS information, if the device is EBS based. Unlike most object attributes, these are accessed directly (e.g., ebs.volume_size or ebs["volume_size"]) rather than accessed through the first element of a list (e.g., ebs[0].volume_size).
    noDevice String
    Suppresses the specified device included in the block device mapping of the AMI.
    virtualName String
    Virtual device name (for instance stores).
    deviceName string
    Physical name of the device.
    ebs {[key: string]: string}
    Map containing EBS information, if the device is EBS based. Unlike most object attributes, these are accessed directly (e.g., ebs.volume_size or ebs["volume_size"]) rather than accessed through the first element of a list (e.g., ebs[0].volume_size).
    noDevice string
    Suppresses the specified device included in the block device mapping of the AMI.
    virtualName string
    Virtual device name (for instance stores).
    device_name str
    Physical name of the device.
    ebs Mapping[str, str]
    Map containing EBS information, if the device is EBS based. Unlike most object attributes, these are accessed directly (e.g., ebs.volume_size or ebs["volume_size"]) rather than accessed through the first element of a list (e.g., ebs[0].volume_size).
    no_device str
    Suppresses the specified device included in the block device mapping of the AMI.
    virtual_name str
    Virtual device name (for instance stores).
    deviceName String
    Physical name of the device.
    ebs Map<String>
    Map containing EBS information, if the device is EBS based. Unlike most object attributes, these are accessed directly (e.g., ebs.volume_size or ebs["volume_size"]) rather than accessed through the first element of a list (e.g., ebs[0].volume_size).
    noDevice String
    Suppresses the specified device included in the block device mapping of the AMI.
    virtualName String
    Virtual device name (for instance stores).

    GetAmiFilter

    Name string
    Name of the AMI that was provided during image creation.
    Values List<string>
    Name string
    Name of the AMI that was provided during image creation.
    Values []string
    name String
    Name of the AMI that was provided during image creation.
    values List<String>
    name string
    Name of the AMI that was provided during image creation.
    values string[]
    name str
    Name of the AMI that was provided during image creation.
    values Sequence[str]
    name String
    Name of the AMI that was provided during image creation.
    values List<String>

    GetAmiProductCode

    Package Details

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

    Try AWS Native preview for resources not in the classic version.

    AWS Classic v6.28.1 published on Thursday, Mar 28, 2024 by Pulumi