You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::EC2::Types::CreateLaunchTemplateVersionRequest

Inherits:
Struct
  • Object
show all
Defined in:
(unknown)

Overview

Note:

When passing CreateLaunchTemplateVersionRequest as input to an Aws::Client method, you can use a vanilla Hash:

{
  dry_run: false,
  client_token: "String",
  launch_template_id: "LaunchTemplateId",
  launch_template_name: "LaunchTemplateName",
  source_version: "String",
  version_description: "VersionDescription",
  launch_template_data: { # required
    kernel_id: "KernelId",
    ebs_optimized: false,
    iam_instance_profile: {
      arn: "String",
      name: "String",
    },
    block_device_mappings: [
      {
        device_name: "String",
        virtual_name: "String",
        ebs: {
          encrypted: false,
          delete_on_termination: false,
          iops: 1,
          kms_key_id: "KmsKeyId",
          snapshot_id: "SnapshotId",
          volume_size: 1,
          volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1
        },
        no_device: "String",
      },
    ],
    network_interfaces: [
      {
        associate_carrier_ip_address: false,
        associate_public_ip_address: false,
        delete_on_termination: false,
        description: "String",
        device_index: 1,
        groups: ["SecurityGroupId"],
        interface_type: "String",
        ipv_6_address_count: 1,
        ipv_6_addresses: [
          {
            ipv_6_address: "String",
          },
        ],
        network_interface_id: "NetworkInterfaceId",
        private_ip_address: "String",
        private_ip_addresses: [
          {
            primary: false,
            private_ip_address: "String",
          },
        ],
        secondary_private_ip_address_count: 1,
        subnet_id: "SubnetId",
        network_card_index: 1,
      },
    ],
    image_id: "ImageId",
    instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, t3.nano, t3.micro, t3.small, t3.medium, t3.large, t3.xlarge, t3.2xlarge, t3a.nano, t3a.micro, t3a.small, t3a.medium, t3a.large, t3a.xlarge, t3a.2xlarge, t4g.nano, t4g.micro, t4g.small, t4g.medium, t4g.large, t4g.xlarge, t4g.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, r5.large, r5.xlarge, r5.2xlarge, r5.4xlarge, r5.8xlarge, r5.12xlarge, r5.16xlarge, r5.24xlarge, r5.metal, r5a.large, r5a.xlarge, r5a.2xlarge, r5a.4xlarge, r5a.8xlarge, r5a.12xlarge, r5a.16xlarge, r5a.24xlarge, r5d.large, r5d.xlarge, r5d.2xlarge, r5d.4xlarge, r5d.8xlarge, r5d.12xlarge, r5d.16xlarge, r5d.24xlarge, r5d.metal, r5ad.large, r5ad.xlarge, r5ad.2xlarge, r5ad.4xlarge, r5ad.8xlarge, r5ad.12xlarge, r5ad.16xlarge, r5ad.24xlarge, r6g.metal, r6g.medium, r6g.large, r6g.xlarge, r6g.2xlarge, r6g.4xlarge, r6g.8xlarge, r6g.12xlarge, r6g.16xlarge, r6gd.metal, r6gd.medium, r6gd.large, r6gd.xlarge, r6gd.2xlarge, r6gd.4xlarge, r6gd.8xlarge, r6gd.12xlarge, r6gd.16xlarge, x1.16xlarge, x1.32xlarge, x1e.xlarge, x1e.2xlarge, x1e.4xlarge, x1e.8xlarge, x1e.16xlarge, x1e.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, i3.large, i3.xlarge, i3.2xlarge, i3.4xlarge, i3.8xlarge, i3.16xlarge, i3.metal, i3en.large, i3en.xlarge, i3en.2xlarge, i3en.3xlarge, i3en.6xlarge, i3en.12xlarge, i3en.24xlarge, i3en.metal, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, c5.large, c5.xlarge, c5.2xlarge, c5.4xlarge, c5.9xlarge, c5.12xlarge, c5.18xlarge, c5.24xlarge, c5.metal, c5a.large, c5a.xlarge, c5a.2xlarge, c5a.4xlarge, c5a.8xlarge, c5a.12xlarge, c5a.16xlarge, c5a.24xlarge, c5ad.large, c5ad.xlarge, c5ad.2xlarge, c5ad.4xlarge, c5ad.8xlarge, c5ad.12xlarge, c5ad.16xlarge, c5ad.24xlarge, c5d.large, c5d.xlarge, c5d.2xlarge, c5d.4xlarge, c5d.9xlarge, c5d.12xlarge, c5d.18xlarge, c5d.24xlarge, c5d.metal, c5n.large, c5n.xlarge, c5n.2xlarge, c5n.4xlarge, c5n.9xlarge, c5n.18xlarge, c6g.metal, c6g.medium, c6g.large, c6g.xlarge, c6g.2xlarge, c6g.4xlarge, c6g.8xlarge, c6g.12xlarge, c6g.16xlarge, c6gd.metal, c6gd.medium, c6gd.large, c6gd.xlarge, c6gd.2xlarge, c6gd.4xlarge, c6gd.8xlarge, c6gd.12xlarge, c6gd.16xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, g3s.xlarge, g4dn.xlarge, g4dn.2xlarge, g4dn.4xlarge, g4dn.8xlarge, g4dn.12xlarge, g4dn.16xlarge, g4dn.metal, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, p3dn.24xlarge, p4d.24xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.4xlarge, f1.16xlarge, m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.8xlarge, m5.12xlarge, m5.16xlarge, m5.24xlarge, m5.metal, m5a.large, m5a.xlarge, m5a.2xlarge, m5a.4xlarge, m5a.8xlarge, m5a.12xlarge, m5a.16xlarge, m5a.24xlarge, m5d.large, m5d.xlarge, m5d.2xlarge, m5d.4xlarge, m5d.8xlarge, m5d.12xlarge, m5d.16xlarge, m5d.24xlarge, m5d.metal, m5ad.large, m5ad.xlarge, m5ad.2xlarge, m5ad.4xlarge, m5ad.8xlarge, m5ad.12xlarge, m5ad.16xlarge, m5ad.24xlarge, h1.2xlarge, h1.4xlarge, h1.8xlarge, h1.16xlarge, z1d.large, z1d.xlarge, z1d.2xlarge, z1d.3xlarge, z1d.6xlarge, z1d.12xlarge, z1d.metal, u-6tb1.metal, u-9tb1.metal, u-12tb1.metal, u-18tb1.metal, u-24tb1.metal, a1.medium, a1.large, a1.xlarge, a1.2xlarge, a1.4xlarge, a1.metal, m5dn.large, m5dn.xlarge, m5dn.2xlarge, m5dn.4xlarge, m5dn.8xlarge, m5dn.12xlarge, m5dn.16xlarge, m5dn.24xlarge, m5n.large, m5n.xlarge, m5n.2xlarge, m5n.4xlarge, m5n.8xlarge, m5n.12xlarge, m5n.16xlarge, m5n.24xlarge, r5dn.large, r5dn.xlarge, r5dn.2xlarge, r5dn.4xlarge, r5dn.8xlarge, r5dn.12xlarge, r5dn.16xlarge, r5dn.24xlarge, r5n.large, r5n.xlarge, r5n.2xlarge, r5n.4xlarge, r5n.8xlarge, r5n.12xlarge, r5n.16xlarge, r5n.24xlarge, inf1.xlarge, inf1.2xlarge, inf1.6xlarge, inf1.24xlarge, m6g.metal, m6g.medium, m6g.large, m6g.xlarge, m6g.2xlarge, m6g.4xlarge, m6g.8xlarge, m6g.12xlarge, m6g.16xlarge, m6gd.metal, m6gd.medium, m6gd.large, m6gd.xlarge, m6gd.2xlarge, m6gd.4xlarge, m6gd.8xlarge, m6gd.12xlarge, m6gd.16xlarge
    key_name: "KeyPairName",
    monitoring: {
      enabled: false,
    },
    placement: {
      availability_zone: "String",
      affinity: "String",
      group_name: "PlacementGroupName",
      host_id: "DedicatedHostId",
      tenancy: "default", # accepts default, dedicated, host
      spread_domain: "String",
      host_resource_group_arn: "String",
      partition_number: 1,
    },
    ram_disk_id: "RamdiskId",
    disable_api_termination: false,
    instance_initiated_shutdown_behavior: "stop", # accepts stop, terminate
    user_data: "String",
    tag_specifications: [
      {
        resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, egress-only-internet-gateway, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
        tags: [
          {
            key: "String",
            value: "String",
          },
        ],
      },
    ],
    elastic_gpu_specifications: [
      {
        type: "String", # required
      },
    ],
    elastic_inference_accelerators: [
      {
        type: "String", # required
        count: 1,
      },
    ],
    security_group_ids: ["SecurityGroupId"],
    security_groups: ["SecurityGroupName"],
    instance_market_options: {
      market_type: "spot", # accepts spot
      spot_options: {
        max_price: "String",
        spot_instance_type: "one-time", # accepts one-time, persistent
        block_duration_minutes: 1,
        valid_until: Time.now,
        instance_interruption_behavior: "hibernate", # accepts hibernate, stop, terminate
      },
    },
    credit_specification: {
      cpu_credits: "String", # required
    },
    cpu_options: {
      core_count: 1,
      threads_per_core: 1,
    },
    capacity_reservation_specification: {
      capacity_reservation_preference: "open", # accepts open, none
      capacity_reservation_target: {
        capacity_reservation_id: "CapacityReservationId",
        capacity_reservation_resource_group_arn: "String",
      },
    },
    license_specifications: [
      {
        license_configuration_arn: "String",
      },
    ],
    hibernation_options: {
      configured: false,
    },
    metadata_options: {
      http_tokens: "optional", # accepts optional, required
      http_put_response_hop_limit: 1,
      http_endpoint: "disabled", # accepts disabled, enabled
    },
    enclave_options: {
      enabled: false,
    },
  },
}

Instance Attribute Summary collapse

Instance Attribute Details

#client_tokenString

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

Constraint: Maximum 128 ASCII characters.

Returns:

  • (String)

    Unique, case-sensitive identifier you provide to ensure the idempotency of the request.

#dry_runBoolean

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

Returns:

  • (Boolean)

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response.

#launch_template_dataTypes::RequestLaunchTemplateData

The information for the launch template.

Returns:

#launch_template_idString

The ID of the launch template. You must specify either the launch template ID or launch template name in the request.

Returns:

  • (String)

    The ID of the launch template.

#launch_template_nameString

The name of the launch template. You must specify either the launch template ID or launch template name in the request.

Returns:

  • (String)

    The name of the launch template.

#source_versionString

The version number of the launch template version on which to base the new version. The new version inherits the same launch parameters as the source version, except for parameters that you specify in LaunchTemplateData. Snapshots applied to the block device mapping are ignored when creating a new version unless they are explicitly included.

Returns:

  • (String)

    The version number of the launch template version on which to base the new version.

#version_descriptionString

A description for the version of the launch template.

Returns:

  • (String)

    A description for the version of the launch template.