Skip to content

Create Imported Image

appstream_create_imported_image R Documentation

Creates a custom WorkSpaces Applications image by importing an EC2 AMI

Description

Creates a custom WorkSpaces Applications image by importing an EC2 AMI. This allows you to use your own customized AMI to create WorkSpaces Applications images that support additional instance types beyond the standard stream.* instances.

Usage

appstream_create_imported_image(Name, SourceAmiId, IamRoleArn,
  Description, DisplayName, Tags, RuntimeValidationConfig,
  AgentSoftwareVersion, AppCatalogConfig, DryRun)

Arguments

Name

[required] A unique name for the imported image. The name must be between 1 and 100 characters and can contain letters, numbers, underscores, periods, and hyphens.

SourceAmiId

[required] The ID of the EC2 AMI to import. The AMI must meet specific requirements including Windows Server 2022 Full Base, UEFI boot mode, TPM 2.0 support, and proper drivers.

IamRoleArn

[required] The ARN of the IAM role that allows WorkSpaces Applications to access your AMI. The role must have permissions to modify image attributes and describe images, with a trust relationship allowing appstream.amazonaws.com to assume the role.

Description

An optional description for the imported image. The description must match approved regex patterns and can be up to 256 characters.

DisplayName

An optional display name for the imported image. The display name must match approved regex patterns and can be up to 100 characters.

Tags

The tags to apply to the imported image. Tags help you organize and manage your WorkSpaces Applications resources.

RuntimeValidationConfig

Configuration for runtime validation of the imported image. When specified, WorkSpaces Applications provisions an instance to test streaming functionality, which helps ensure the image is suitable for use.

AgentSoftwareVersion

The version of the WorkSpaces Applications agent to use for the imported image. Choose CURRENT_LATEST to use the agent version available at the time of import, or ALWAYS_LATEST to automatically update to the latest agent version when new versions are released.

AppCatalogConfig

Configuration for the application catalog of the imported image. This allows you to specify applications available for streaming, including their paths, icons, and launch parameters. This field contains sensitive data.

DryRun

When set to true, performs validation checks without actually creating the imported image. Use this to verify your configuration before executing the actual import operation.

Value

A list with the following syntax:

list(
  Image = list(
    Name = "string",
    Arn = "string",
    BaseImageArn = "string",
    DisplayName = "string",
    State = "PENDING"|"AVAILABLE"|"FAILED"|"COPYING"|"DELETING"|"CREATING"|"IMPORTING"|"VALIDATING",
    Visibility = "PUBLIC"|"PRIVATE"|"SHARED",
    ImageBuilderSupported = TRUE|FALSE,
    ImageBuilderName = "string",
    Platform = "WINDOWS"|"WINDOWS_SERVER_2016"|"WINDOWS_SERVER_2019"|"WINDOWS_SERVER_2022"|"WINDOWS_SERVER_2025"|"AMAZON_LINUX2"|"RHEL8"|"ROCKY_LINUX8"|"UBUNTU_PRO_2404",
    Description = "string",
    StateChangeReason = list(
      Code = "INTERNAL_ERROR"|"IMAGE_BUILDER_NOT_AVAILABLE"|"IMAGE_COPY_FAILURE"|"IMAGE_UPDATE_FAILURE"|"IMAGE_IMPORT_FAILURE",
      Message = "string"
    ),
    Applications = list(
      list(
        Name = "string",
        DisplayName = "string",
        IconURL = "string",
        LaunchPath = "string",
        LaunchParameters = "string",
        Enabled = TRUE|FALSE,
        Metadata = list(
          "string"
        ),
        WorkingDirectory = "string",
        Description = "string",
        Arn = "string",
        AppBlockArn = "string",
        IconS3Location = list(
          S3Bucket = "string",
          S3Key = "string"
        ),
        Platforms = list(
          "WINDOWS"|"WINDOWS_SERVER_2016"|"WINDOWS_SERVER_2019"|"WINDOWS_SERVER_2022"|"WINDOWS_SERVER_2025"|"AMAZON_LINUX2"|"RHEL8"|"ROCKY_LINUX8"|"UBUNTU_PRO_2404"
        ),
        InstanceFamilies = list(
          "string"
        ),
        CreatedTime = as.POSIXct(
          "2015-01-01"
        )
      )
    ),
    CreatedTime = as.POSIXct(
      "2015-01-01"
    ),
    PublicBaseImageReleasedDate = as.POSIXct(
      "2015-01-01"
    ),
    AppstreamAgentVersion = "string",
    ImagePermissions = list(
      allowFleet = TRUE|FALSE,
      allowImageBuilder = TRUE|FALSE
    ),
    ImageErrors = list(
      list(
        ErrorCode = "IAM_SERVICE_ROLE_MISSING_ENI_DESCRIBE_ACTION"|"IAM_SERVICE_ROLE_MISSING_ENI_CREATE_ACTION"|"IAM_SERVICE_ROLE_MISSING_ENI_DELETE_ACTION"|"NETWORK_INTERFACE_LIMIT_EXCEEDED"|"INTERNAL_SERVICE_ERROR"|"IAM_SERVICE_ROLE_IS_MISSING"|"MACHINE_ROLE_IS_MISSING"|"STS_DISABLED_IN_REGION"|"SUBNET_HAS_INSUFFICIENT_IP_ADDRESSES"|"IAM_SERVICE_ROLE_MISSING_DESCRIBE_SUBNET_ACTION"|"SUBNET_NOT_FOUND"|"IMAGE_NOT_FOUND"|"INVALID_SUBNET_CONFIGURATION"|"SECURITY_GROUPS_NOT_FOUND"|"IGW_NOT_ATTACHED"|"IAM_SERVICE_ROLE_MISSING_DESCRIBE_SECURITY_GROUPS_ACTION"|"FLEET_STOPPED"|"FLEET_INSTANCE_PROVISIONING_FAILURE"|"DOMAIN_JOIN_ERROR_FILE_NOT_FOUND"|"DOMAIN_JOIN_ERROR_ACCESS_DENIED"|"DOMAIN_JOIN_ERROR_LOGON_FAILURE"|"DOMAIN_JOIN_ERROR_INVALID_PARAMETER"|"DOMAIN_JOIN_ERROR_MORE_DATA"|"DOMAIN_JOIN_ERROR_NO_SUCH_DOMAIN"|"DOMAIN_JOIN_ERROR_NOT_SUPPORTED"|"DOMAIN_JOIN_NERR_INVALID_WORKGROUP_NAME"|"DOMAIN_JOIN_NERR_WORKSTATION_NOT_STARTED"|"DOMAIN_JOIN_ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED"|"DOMAIN_JOIN_NERR_PASSWORD_EXPIRED"|"DOMAIN_JOIN_INTERNAL_SERVICE_ERROR"|"VALIDATION_ERROR",
        ErrorMessage = "string",
        ErrorTimestamp = as.POSIXct(
          "2015-01-01"
        )
      )
    ),
    LatestAppstreamAgentVersion = "TRUE"|"FALSE",
    SupportedInstanceFamilies = list(
      "string"
    ),
    DynamicAppProvidersEnabled = "ENABLED"|"DISABLED",
    ImageSharedWithOthers = "TRUE"|"FALSE",
    ManagedSoftwareIncluded = TRUE|FALSE,
    ImageType = "CUSTOM"|"NATIVE"
  )
)

Request syntax

svc$create_imported_image(
  Name = "string",
  SourceAmiId = "string",
  IamRoleArn = "string",
  Description = "string",
  DisplayName = "string",
  Tags = list(
    "string"
  ),
  RuntimeValidationConfig = list(
    IntendedInstanceType = "string"
  ),
  AgentSoftwareVersion = "CURRENT_LATEST"|"ALWAYS_LATEST",
  AppCatalogConfig = list(
    list(
      Name = "string",
      DisplayName = "string",
      AbsoluteAppPath = "string",
      AbsoluteIconPath = "string",
      AbsoluteManifestPath = "string",
      WorkingDirectory = "string",
      LaunchParameters = "string"
    )
  ),
  DryRun = TRUE|FALSE
)