File Coverage

blib/lib/Paws/AutoScaling/CreateAutoScalingGroup.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::AutoScaling::CreateAutoScalingGroup;
3 1     1   404 use Moose;
  1     1   3  
  1         5  
  1         682  
  1         4  
  1         8  
4             has AutoScalingGroupName => (is => 'ro', isa => 'Str', required => 1);
5             has AvailabilityZones => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
6             has DefaultCooldown => (is => 'ro', isa => 'Int');
7             has DesiredCapacity => (is => 'ro', isa => 'Int');
8             has HealthCheckGracePeriod => (is => 'ro', isa => 'Int');
9             has HealthCheckType => (is => 'ro', isa => 'Str');
10             has InstanceId => (is => 'ro', isa => 'Str');
11             has LaunchConfigurationName => (is => 'ro', isa => 'Str');
12             has LoadBalancerNames => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
13             has MaxSize => (is => 'ro', isa => 'Int', required => 1);
14             has MinSize => (is => 'ro', isa => 'Int', required => 1);
15             has NewInstancesProtectedFromScaleIn => (is => 'ro', isa => 'Bool');
16             has PlacementGroup => (is => 'ro', isa => 'Str');
17             has Tags => (is => 'ro', isa => 'ArrayRef[Paws::AutoScaling::Tag]');
18             has TargetGroupARNs => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
19             has TerminationPolicies => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
20             has VPCZoneIdentifier => (is => 'ro', isa => 'Str');
21              
22 1     1   5891 use MooseX::ClassAttribute;
  1     1   3  
  1         9  
  1         6880  
  1         6  
  1         9  
23              
24             class_has _api_call => (isa => 'Str', is => 'ro', default => 'CreateAutoScalingGroup');
25             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::API::Response');
26             class_has _result_key => (isa => 'Str', is => 'ro');
27             1;
28              
29             ### main pod documentation begin ###
30              
31             =head1 NAME
32              
33             Paws::AutoScaling::CreateAutoScalingGroup - Arguments for method CreateAutoScalingGroup on Paws::AutoScaling
34              
35             =head1 DESCRIPTION
36              
37             This class represents the parameters used for calling the method CreateAutoScalingGroup on the
38             Auto Scaling service. Use the attributes of this class
39             as arguments to method CreateAutoScalingGroup.
40              
41             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateAutoScalingGroup.
42              
43             As an example:
44              
45             $service_obj->CreateAutoScalingGroup(Att1 => $value1, Att2 => $value2, ...);
46              
47             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.
48              
49             =head1 ATTRIBUTES
50              
51              
52             =head2 B<REQUIRED> AutoScalingGroupName => Str
53              
54             The name of the group. This name must be unique within the scope of
55             your AWS account.
56              
57              
58              
59             =head2 AvailabilityZones => ArrayRef[Str|Undef]
60              
61             One or more Availability Zones for the group. This parameter is
62             optional if you specify one or more subnets.
63              
64              
65              
66             =head2 DefaultCooldown => Int
67              
68             The amount of time, in seconds, after a scaling activity completes
69             before another scaling activity can start. The default is 300.
70              
71             For more information, see Auto Scaling Cooldowns in the I<Auto Scaling
72             User Guide>.
73              
74              
75              
76             =head2 DesiredCapacity => Int
77              
78             The number of EC2 instances that should be running in the group. This
79             number must be greater than or equal to the minimum size of the group
80             and less than or equal to the maximum size of the group. If you do not
81             specify a desired capacity, the default is the minimum size of the
82             group.
83              
84              
85              
86             =head2 HealthCheckGracePeriod => Int
87              
88             The amount of time, in seconds, that Auto Scaling waits before checking
89             the health status of an EC2 instance that has come into service. During
90             this time, any health check failures for the instance are ignored. The
91             default is 0.
92              
93             This parameter is required if you are adding an C<ELB> health check.
94              
95             For more information, see Health Checks in the I<Auto Scaling User
96             Guide>.
97              
98              
99              
100             =head2 HealthCheckType => Str
101              
102             The service to use for the health checks. The valid values are C<EC2>
103             and C<ELB>.
104              
105             By default, health checks use Amazon EC2 instance status checks to
106             determine the health of an instance. For more information, see Health
107             Checks in the I<Auto Scaling User Guide>.
108              
109              
110              
111             =head2 InstanceId => Str
112              
113             The ID of the instance used to create a launch configuration for the
114             group. Alternatively, specify a launch configuration instead of an EC2
115             instance.
116              
117             When you specify an ID of an instance, Auto Scaling creates a new
118             launch configuration and associates it with the group. This launch
119             configuration derives its attributes from the specified instance, with
120             the exception of the block device mapping.
121              
122             For more information, see Create an Auto Scaling Group Using an EC2
123             Instance in the I<Auto Scaling User Guide>.
124              
125              
126              
127             =head2 LaunchConfigurationName => Str
128              
129             The name of the launch configuration. Alternatively, specify an EC2
130             instance instead of a launch configuration.
131              
132              
133              
134             =head2 LoadBalancerNames => ArrayRef[Str|Undef]
135              
136             One or more Classic Load Balancers. To specify an Application Load
137             Balancer, use C<TargetGroupARNs> instead.
138              
139             For more information, see Using a Load Balancer With an Auto Scaling
140             Group in the I<Auto Scaling User Guide>.
141              
142              
143              
144             =head2 B<REQUIRED> MaxSize => Int
145              
146             The maximum size of the group.
147              
148              
149              
150             =head2 B<REQUIRED> MinSize => Int
151              
152             The minimum size of the group.
153              
154              
155              
156             =head2 NewInstancesProtectedFromScaleIn => Bool
157              
158             Indicates whether newly launched instances are protected from
159             termination by Auto Scaling when scaling in.
160              
161              
162              
163             =head2 PlacementGroup => Str
164              
165             The name of the placement group into which you'll launch your
166             instances, if any. For more information, see Placement Groups in the
167             I<Amazon Elastic Compute Cloud User Guide>.
168              
169              
170              
171             =head2 Tags => ArrayRef[L<Paws::AutoScaling::Tag>]
172              
173             One or more tags.
174              
175             For more information, see Tagging Auto Scaling Groups and Instances in
176             the I<Auto Scaling User Guide>.
177              
178              
179              
180             =head2 TargetGroupARNs => ArrayRef[Str|Undef]
181              
182             The Amazon Resource Names (ARN) of the target groups.
183              
184              
185              
186             =head2 TerminationPolicies => ArrayRef[Str|Undef]
187              
188             One or more termination policies used to select the instance to
189             terminate. These policies are executed in the order that they are
190             listed.
191              
192             For more information, see Controlling Which Instances Auto Scaling
193             Terminates During Scale In in the I<Auto Scaling User Guide>.
194              
195              
196              
197             =head2 VPCZoneIdentifier => Str
198              
199             A comma-separated list of subnet identifiers for your virtual private
200             cloud (VPC).
201              
202             If you specify subnets and Availability Zones with this call, ensure
203             that the subnets' Availability Zones match the Availability Zones
204             specified.
205              
206             For more information, see Launching Auto Scaling Instances in a VPC in
207             the I<Auto Scaling User Guide>.
208              
209              
210              
211              
212             =head1 SEE ALSO
213              
214             This class forms part of L<Paws>, documenting arguments for method CreateAutoScalingGroup in L<Paws::AutoScaling>
215              
216             =head1 BUGS and CONTRIBUTIONS
217              
218             The source code is located here: https://github.com/pplu/aws-sdk-perl
219              
220             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
221              
222             =cut
223