File Coverage

blib/lib/Paws/EC2/RunInstances.pm
Criterion Covered Total %
statement 12 12 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 16 16 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::EC2::RunInstances;
3 1     1   483 use Moose;
  1     2   4  
  1         6  
  2         1426  
  2         8  
  2         17  
4             has AdditionalInfo => (is => 'ro', isa => 'Str', traits => ['NameInRequest'], request_name => 'additionalInfo' );
5             has BlockDeviceMappings => (is => 'ro', isa => 'ArrayRef[Paws::EC2::BlockDeviceMapping]', traits => ['NameInRequest'], request_name => 'BlockDeviceMapping' );
6             has ClientToken => (is => 'ro', isa => 'Str', traits => ['NameInRequest'], request_name => 'clientToken' );
7             has DisableApiTermination => (is => 'ro', isa => 'Bool', traits => ['NameInRequest'], request_name => 'disableApiTermination' );
8             has DryRun => (is => 'ro', isa => 'Bool', traits => ['NameInRequest'], request_name => 'dryRun' );
9             has EbsOptimized => (is => 'ro', isa => 'Bool', traits => ['NameInRequest'], request_name => 'ebsOptimized' );
10             has IamInstanceProfile => (is => 'ro', isa => 'Paws::EC2::IamInstanceProfileSpecification', traits => ['NameInRequest'], request_name => 'iamInstanceProfile' );
11             has ImageId => (is => 'ro', isa => 'Str', required => 1);
12             has InstanceInitiatedShutdownBehavior => (is => 'ro', isa => 'Str', traits => ['NameInRequest'], request_name => 'instanceInitiatedShutdownBehavior' );
13             has InstanceType => (is => 'ro', isa => 'Str');
14             has Ipv6AddressCount => (is => 'ro', isa => 'Int');
15             has Ipv6Addresses => (is => 'ro', isa => 'ArrayRef[Paws::EC2::InstanceIpv6Address]', traits => ['NameInRequest'], request_name => 'Ipv6Address' );
16             has KernelId => (is => 'ro', isa => 'Str');
17             has KeyName => (is => 'ro', isa => 'Str');
18             has MaxCount => (is => 'ro', isa => 'Int', required => 1);
19             has MinCount => (is => 'ro', isa => 'Int', required => 1);
20             has Monitoring => (is => 'ro', isa => 'Paws::EC2::RunInstancesMonitoringEnabled');
21             has NetworkInterfaces => (is => 'ro', isa => 'ArrayRef[Paws::EC2::InstanceNetworkInterfaceSpecification]', traits => ['NameInRequest'], request_name => 'networkInterface' );
22             has Placement => (is => 'ro', isa => 'Paws::EC2::Placement');
23             has PrivateIpAddress => (is => 'ro', isa => 'Str', traits => ['NameInRequest'], request_name => 'privateIpAddress' );
24             has RamdiskId => (is => 'ro', isa => 'Str');
25             has SecurityGroupIds => (is => 'ro', isa => 'ArrayRef[Str|Undef]', traits => ['NameInRequest'], request_name => 'SecurityGroupId' );
26             has SecurityGroups => (is => 'ro', isa => 'ArrayRef[Str|Undef]', traits => ['NameInRequest'], request_name => 'SecurityGroup' );
27             has SubnetId => (is => 'ro', isa => 'Str');
28             has TagSpecifications => (is => 'ro', isa => 'ArrayRef[Paws::EC2::TagSpecification]', traits => ['NameInRequest'], request_name => 'TagSpecification' );
29             has UserData => (is => 'ro', isa => 'Str');
30              
31 1     1   6444 use MooseX::ClassAttribute;
  1     2   4  
  1         10  
  2         18148  
  2         6  
  2         19  
32              
33             class_has _api_call => (isa => 'Str', is => 'ro', default => 'RunInstances');
34             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::EC2::Reservation');
35             class_has _result_key => (isa => 'Str', is => 'ro');
36             1;
37              
38             ### main pod documentation begin ###
39              
40             =head1 NAME
41              
42             Paws::EC2::RunInstances - Arguments for method RunInstances on Paws::EC2
43              
44             =head1 DESCRIPTION
45              
46             This class represents the parameters used for calling the method RunInstances on the
47             Amazon Elastic Compute Cloud service. Use the attributes of this class
48             as arguments to method RunInstances.
49              
50             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to RunInstances.
51              
52             As an example:
53              
54             $service_obj->RunInstances(Att1 => $value1, Att2 => $value2, ...);
55              
56             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.
57              
58             =head1 ATTRIBUTES
59              
60              
61             =head2 AdditionalInfo => Str
62              
63             Reserved.
64              
65              
66              
67             =head2 BlockDeviceMappings => ArrayRef[L<Paws::EC2::BlockDeviceMapping>]
68              
69             The block device mapping.
70              
71             Supplying both a snapshot ID and an encryption value as arguments for
72             block-device mapping results in an error. This is because only blank
73             volumes can be encrypted on start, and these are not created from a
74             snapshot. If a snapshot is the basis for the volume, it contains data
75             by definition and its encryption status cannot be changed using this
76             action.
77              
78              
79              
80             =head2 ClientToken => Str
81              
82             Unique, case-sensitive identifier you provide to ensure the idempotency
83             of the request. For more information, see Ensuring Idempotency.
84              
85             Constraints: Maximum 64 ASCII characters
86              
87              
88              
89             =head2 DisableApiTermination => Bool
90              
91             If you set this parameter to C<true>, you can't terminate the instance
92             using the Amazon EC2 console, CLI, or API; otherwise, you can. To
93             change this attribute to C<false> after launch, use
94             ModifyInstanceAttribute. Alternatively, if you set
95             C<InstanceInitiatedShutdownBehavior> to C<terminate>, you can terminate
96             the instance by running the shutdown command from the instance.
97              
98             Default: C<false>
99              
100              
101              
102             =head2 DryRun => Bool
103              
104             Checks whether you have the required permissions for the action,
105             without actually making the request, and provides an error response. If
106             you have the required permissions, the error response is
107             C<DryRunOperation>. Otherwise, it is C<UnauthorizedOperation>.
108              
109              
110              
111             =head2 EbsOptimized => Bool
112              
113             Indicates whether the instance is optimized for EBS I/O. This
114             optimization provides dedicated throughput to Amazon EBS and an
115             optimized configuration stack to provide optimal EBS I/O performance.
116             This optimization isn't available with all instance types. Additional
117             usage charges apply when using an EBS-optimized instance.
118              
119             Default: C<false>
120              
121              
122              
123             =head2 IamInstanceProfile => L<Paws::EC2::IamInstanceProfileSpecification>
124              
125             The IAM instance profile.
126              
127              
128              
129             =head2 B<REQUIRED> ImageId => Str
130              
131             The ID of the AMI, which you can get by calling DescribeImages.
132              
133              
134              
135             =head2 InstanceInitiatedShutdownBehavior => Str
136              
137             Indicates whether an instance stops or terminates when you initiate
138             shutdown from the instance (using the operating system command for
139             system shutdown).
140              
141             Default: C<stop>
142              
143             Valid values are: C<"stop">, C<"terminate">
144              
145             =head2 InstanceType => Str
146              
147             The instance type. For more information, see Instance Types in the
148             I<Amazon Elastic Compute Cloud User Guide>.
149              
150             Default: C<m1.small>
151              
152             Valid values are: C<"t1.micro">, C<"t2.nano">, C<"t2.micro">, C<"t2.small">, C<"t2.medium">, C<"t2.large">, C<"t2.xlarge">, C<"t2.2xlarge">, C<"m1.small">, C<"m1.medium">, C<"m1.large">, C<"m1.xlarge">, C<"m3.medium">, C<"m3.large">, C<"m3.xlarge">, C<"m3.2xlarge">, C<"m4.large">, C<"m4.xlarge">, C<"m4.2xlarge">, C<"m4.4xlarge">, C<"m4.10xlarge">, C<"m4.16xlarge">, C<"m2.xlarge">, C<"m2.2xlarge">, C<"m2.4xlarge">, C<"cr1.8xlarge">, C<"r3.large">, C<"r3.xlarge">, C<"r3.2xlarge">, C<"r3.4xlarge">, C<"r3.8xlarge">, C<"r4.large">, C<"r4.xlarge">, C<"r4.2xlarge">, C<"r4.4xlarge">, C<"r4.8xlarge">, C<"r4.16xlarge">, C<"x1.16xlarge">, C<"x1.32xlarge">, C<"i2.xlarge">, C<"i2.2xlarge">, C<"i2.4xlarge">, C<"i2.8xlarge">, C<"i3.large">, C<"i3.xlarge">, C<"i3.2xlarge">, C<"i3.4xlarge">, C<"i3.8xlarge">, C<"i3.16xlarge">, C<"hi1.4xlarge">, C<"hs1.8xlarge">, C<"c1.medium">, C<"c1.xlarge">, C<"c3.large">, C<"c3.xlarge">, C<"c3.2xlarge">, C<"c3.4xlarge">, C<"c3.8xlarge">, C<"c4.large">, C<"c4.xlarge">, C<"c4.2xlarge">, C<"c4.4xlarge">, C<"c4.8xlarge">, C<"cc1.4xlarge">, C<"cc2.8xlarge">, C<"g2.2xlarge">, C<"g2.8xlarge">, C<"cg1.4xlarge">, C<"p2.xlarge">, C<"p2.8xlarge">, C<"p2.16xlarge">, C<"d2.xlarge">, C<"d2.2xlarge">, C<"d2.4xlarge">, C<"d2.8xlarge">, C<"f1.2xlarge">, C<"f1.16xlarge">
153              
154             =head2 Ipv6AddressCount => Int
155              
156             [EC2-VPC] A number of IPv6 addresses to associate with the primary
157             network interface. Amazon EC2 chooses the IPv6 addresses from the range
158             of your subnet. You cannot specify this option and the option to assign
159             specific IPv6 addresses in the same request. You can specify this
160             option if you've specified a minimum number of instances to launch.
161              
162              
163              
164             =head2 Ipv6Addresses => ArrayRef[L<Paws::EC2::InstanceIpv6Address>]
165              
166             [EC2-VPC] Specify one or more IPv6 addresses from the range of the
167             subnet to associate with the primary network interface. You cannot
168             specify this option and the option to assign a number of IPv6 addresses
169             in the same request. You cannot specify this option if you've specified
170             a minimum number of instances to launch.
171              
172              
173              
174             =head2 KernelId => Str
175              
176             The ID of the kernel.
177              
178             We recommend that you use PV-GRUB instead of kernels and RAM disks. For
179             more information, see PV-GRUB in the I<Amazon Elastic Compute Cloud
180             User Guide>.
181              
182              
183              
184             =head2 KeyName => Str
185              
186             The name of the key pair. You can create a key pair using CreateKeyPair
187             or ImportKeyPair.
188              
189             If you do not specify a key pair, you can't connect to the instance
190             unless you choose an AMI that is configured to allow users another way
191             to log in.
192              
193              
194              
195             =head2 B<REQUIRED> MaxCount => Int
196              
197             The maximum number of instances to launch. If you specify more
198             instances than Amazon EC2 can launch in the target Availability Zone,
199             Amazon EC2 launches the largest possible number of instances above
200             C<MinCount>.
201              
202             Constraints: Between 1 and the maximum number you're allowed for the
203             specified instance type. For more information about the default limits,
204             and how to request an increase, see How many instances can I run in
205             Amazon EC2 in the Amazon EC2 FAQ.
206              
207              
208              
209             =head2 B<REQUIRED> MinCount => Int
210              
211             The minimum number of instances to launch. If you specify a minimum
212             that is more instances than Amazon EC2 can launch in the target
213             Availability Zone, Amazon EC2 launches no instances.
214              
215             Constraints: Between 1 and the maximum number you're allowed for the
216             specified instance type. For more information about the default limits,
217             and how to request an increase, see How many instances can I run in
218             Amazon EC2 in the Amazon EC2 General FAQ.
219              
220              
221              
222             =head2 Monitoring => L<Paws::EC2::RunInstancesMonitoringEnabled>
223              
224             The monitoring for the instance.
225              
226              
227              
228             =head2 NetworkInterfaces => ArrayRef[L<Paws::EC2::InstanceNetworkInterfaceSpecification>]
229              
230             One or more network interfaces.
231              
232              
233              
234             =head2 Placement => L<Paws::EC2::Placement>
235              
236             The placement for the instance.
237              
238              
239              
240             =head2 PrivateIpAddress => Str
241              
242             [EC2-VPC] The primary IPv4 address. You must specify a value from the
243             IPv4 address range of the subnet.
244              
245             Only one private IP address can be designated as primary. You can't
246             specify this option if you've specified the option to designate a
247             private IP address as the primary IP address in a network interface
248             specification. You cannot specify this option if you're launching more
249             than one instance in the request.
250              
251              
252              
253             =head2 RamdiskId => Str
254              
255             The ID of the RAM disk.
256              
257             We recommend that you use PV-GRUB instead of kernels and RAM disks. For
258             more information, see PV-GRUB in the I<Amazon Elastic Compute Cloud
259             User Guide>.
260              
261              
262              
263             =head2 SecurityGroupIds => ArrayRef[Str|Undef]
264              
265             One or more security group IDs. You can create a security group using
266             CreateSecurityGroup.
267              
268             Default: Amazon EC2 uses the default security group.
269              
270              
271              
272             =head2 SecurityGroups => ArrayRef[Str|Undef]
273              
274             [EC2-Classic, default VPC] One or more security group names. For a
275             nondefault VPC, you must use security group IDs instead.
276              
277             Default: Amazon EC2 uses the default security group.
278              
279              
280              
281             =head2 SubnetId => Str
282              
283             [EC2-VPC] The ID of the subnet to launch the instance into.
284              
285              
286              
287             =head2 TagSpecifications => ArrayRef[L<Paws::EC2::TagSpecification>]
288              
289             The tags to apply to the resources during launch. You can tag instances
290             and volumes. The specified tags are applied to all instances or volumes
291             that are created during launch.
292              
293              
294              
295             =head2 UserData => Str
296              
297             The user data to make available to the instance. For more information,
298             see Running Commands on Your Linux Instance at Launch (Linux) and
299             Adding User Data (Windows). If you are using an AWS SDK or command line
300             tool, Base64-encoding is performed for you, and you can load the text
301             from a file. Otherwise, you must provide Base64-encoded text.
302              
303              
304              
305              
306             =head1 SEE ALSO
307              
308             This class forms part of L<Paws>, documenting arguments for method RunInstances in L<Paws::EC2>
309              
310             =head1 BUGS and CONTRIBUTIONS
311              
312             The source code is located here: https://github.com/pplu/aws-sdk-perl
313              
314             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
315              
316             =cut
317