Paws::EC2::CreateLaunchTemplateVersion - Arguments for method CreateLaunchTemplateVersion on Paws::EC2
This class represents the parameters used for calling the method CreateLaunchTemplateVersion on the Amazon Elastic Compute Cloud service. Use the attributes of this class as arguments to method CreateLaunchTemplateVersion.
You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateLaunchTemplateVersion.
my $ec2 = Paws->service('EC2'); my $CreateLaunchTemplateVersionResult = $ec2->CreateLaunchTemplateVersion( LaunchTemplateData => { BlockDeviceMappings => [ { DeviceName => 'MyString', # OPTIONAL Ebs => { DeleteOnTermination => 1, # OPTIONAL Encrypted => 1, # OPTIONAL Iops => 1, # OPTIONAL KmsKeyId => 'MyString', # OPTIONAL SnapshotId => 'MySnapshotId', # OPTIONAL VolumeSize => 1, # OPTIONAL VolumeType => 'standard', # values: standard, io1, gp2, sc1, st1; OPTIONAL }, # OPTIONAL NoDevice => 'MyString', # OPTIONAL VirtualName => 'MyString', # OPTIONAL }, ... ], # OPTIONAL CapacityReservationSpecification => { CapacityReservationPreference => 'open', # values: open, none; OPTIONAL CapacityReservationTarget => { CapacityReservationId => 'MyCapacityReservationId', # OPTIONAL }, # OPTIONAL }, # OPTIONAL CpuOptions => { CoreCount => 1, # OPTIONAL ThreadsPerCore => 1, # OPTIONAL }, # OPTIONAL CreditSpecification => { CpuCredits => 'MyString', # OPTIONAL }, # OPTIONAL DisableApiTermination => 1, # OPTIONAL EbsOptimized => 1, # OPTIONAL ElasticGpuSpecifications => [ { Type => 'MyString', # OPTIONAL }, ... ], # OPTIONAL ElasticInferenceAccelerators => [ { Type => 'MyString', # OPTIONAL Count => 1, # min: 1; OPTIONAL }, ... ], # OPTIONAL HibernationOptions => { Configured => 1, # OPTIONAL }, # OPTIONAL IamInstanceProfile => { Arn => 'MyString', # OPTIONAL Name => 'MyString', # OPTIONAL }, # OPTIONAL ImageId => 'MyImageId', # OPTIONAL InstanceInitiatedShutdownBehavior => 'stop', # values: stop, terminate; OPTIONAL InstanceMarketOptions => { MarketType => 'spot', # values: spot; OPTIONAL SpotOptions => { BlockDurationMinutes => 1, # OPTIONAL InstanceInterruptionBehavior => 'hibernate', # values: hibernate, stop, terminate; OPTIONAL MaxPrice => 'MyString', # OPTIONAL SpotInstanceType => 'one-time', # values: one-time, persistent; OPTIONAL ValidUntil => '1970-01-01T01:00:00', # OPTIONAL }, # OPTIONAL }, # OPTIONAL InstanceType => 't1.micro' , # values: 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, 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, 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, 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, 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, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, p3dn.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; OPTIONAL KernelId => 'MyKernelId', # OPTIONAL KeyName => 'MyKeyPairName', # OPTIONAL LicenseSpecifications => [ { LicenseConfigurationArn => 'MyString', # OPTIONAL }, ... ], # OPTIONAL MetadataOptions => { HttpEndpoint => 'disabled', # values: disabled, enabled; OPTIONAL HttpPutResponseHopLimit => 1, # OPTIONAL HttpTokens => 'optional', # values: optional, required; OPTIONAL }, # OPTIONAL Monitoring => { Enabled => 1, # OPTIONAL }, # OPTIONAL NetworkInterfaces => [ { AssociatePublicIpAddress => 1, # OPTIONAL DeleteOnTermination => 1, # OPTIONAL Description => 'MyString', # OPTIONAL DeviceIndex => 1, # OPTIONAL Groups => [ 'MySecurityGroupId', ... ], # OPTIONAL InterfaceType => 'MyString', # OPTIONAL Ipv6AddressCount => 1, # OPTIONAL Ipv6Addresses => [ { Ipv6Address => 'MyString', # OPTIONAL }, ... ], # OPTIONAL NetworkInterfaceId => 'MyNetworkInterfaceId', # OPTIONAL PrivateIpAddress => 'MyString', # OPTIONAL PrivateIpAddresses => [ { Primary => 1, # OPTIONAL PrivateIpAddress => 'MyString', # OPTIONAL }, ... ], # OPTIONAL SecondaryPrivateIpAddressCount => 1, # OPTIONAL SubnetId => 'MySubnetId', # OPTIONAL }, ... ], # OPTIONAL Placement => { Affinity => 'MyString', # OPTIONAL AvailabilityZone => 'MyString', # OPTIONAL GroupName => 'MyPlacementGroupName', # OPTIONAL HostId => 'MyDedicatedHostId', # OPTIONAL HostResourceGroupArn => 'MyString', # OPTIONAL PartitionNumber => 1, # OPTIONAL SpreadDomain => 'MyString', # OPTIONAL Tenancy => 'default', # values: default, dedicated, host; OPTIONAL }, # OPTIONAL RamDiskId => 'MyRamdiskId', # OPTIONAL SecurityGroupIds => [ 'MySecurityGroupId', ... ], # OPTIONAL SecurityGroups => [ 'MySecurityGroupName', ... ], # OPTIONAL TagSpecifications => [ { ResourceType => 'client-vpn-endpoint' , # values: client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, fleet, fpga-image, host-reservation, image, instance, internet-gateway, key-pair, launch-template, 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; OPTIONAL Tags => [ { Key => 'MyString', # OPTIONAL Value => 'MyString', # OPTIONAL }, ... ], # OPTIONAL }, ... ], # OPTIONAL UserData => 'MyString', # OPTIONAL }, ClientToken => 'MyString', # OPTIONAL DryRun => 1, # OPTIONAL LaunchTemplateId => 'MyLaunchTemplateId', # OPTIONAL LaunchTemplateName => 'MyLaunchTemplateName', # OPTIONAL SourceVersion => 'MyString', # OPTIONAL VersionDescription => 'MyVersionDescription', # OPTIONAL ); # Results: my $LaunchTemplateVersion = $CreateLaunchTemplateVersionResult->LaunchTemplateVersion; # Returns a L<Paws::EC2::CreateLaunchTemplateVersionResult> object.
Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/ec2/CreateLaunchTemplateVersion
Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html).
Constraint: Maximum 128 ASCII characters.
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.
DryRunOperation
UnauthorizedOperation
The information for the launch template.
The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
The name of the launch template. You must specify either the launch template ID or launch template name in the request.
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.
LaunchTemplateData
A description for the version of the launch template.
This class forms part of Paws, documenting arguments for method CreateLaunchTemplateVersion in Paws::EC2
The source code is located here: https://github.com/pplu/aws-sdk-perl
Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
To install Paws::SDK::Config, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Paws::SDK::Config
CPAN shell
perl -MCPAN -e shell install Paws::SDK::Config
For more information on module installation, please visit the detailed CPAN module installation guide.