File Coverage

blib/lib/Paws/CloudFormation/CreateChangeSet.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::CloudFormation::CreateChangeSet;
3 1     1   534 use Moose;
  1         3  
  1         6  
4             has Capabilities => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
5             has ChangeSetName => (is => 'ro', isa => 'Str', required => 1);
6             has ChangeSetType => (is => 'ro', isa => 'Str');
7             has ClientToken => (is => 'ro', isa => 'Str');
8             has Description => (is => 'ro', isa => 'Str');
9             has NotificationARNs => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
10             has Parameters => (is => 'ro', isa => 'ArrayRef[Paws::CloudFormation::Parameter]');
11             has ResourceTypes => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
12             has RoleARN => (is => 'ro', isa => 'Str');
13             has StackName => (is => 'ro', isa => 'Str', required => 1);
14             has Tags => (is => 'ro', isa => 'ArrayRef[Paws::CloudFormation::Tag]');
15             has TemplateBody => (is => 'ro', isa => 'Str');
16             has TemplateURL => (is => 'ro', isa => 'Str');
17             has UsePreviousTemplate => (is => 'ro', isa => 'Bool');
18              
19 1     1   6598 use MooseX::ClassAttribute;
  1         3  
  1         8  
20              
21             class_has _api_call => (isa => 'Str', is => 'ro', default => 'CreateChangeSet');
22             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::CloudFormation::CreateChangeSetOutput');
23             class_has _result_key => (isa => 'Str', is => 'ro', default => 'CreateChangeSetResult');
24             1;
25              
26             ### main pod documentation begin ###
27              
28             =head1 NAME
29              
30             Paws::CloudFormation::CreateChangeSet - Arguments for method CreateChangeSet on Paws::CloudFormation
31              
32             =head1 DESCRIPTION
33              
34             This class represents the parameters used for calling the method CreateChangeSet on the
35             AWS CloudFormation service. Use the attributes of this class
36             as arguments to method CreateChangeSet.
37              
38             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateChangeSet.
39              
40             As an example:
41              
42             $service_obj->CreateChangeSet(Att1 => $value1, Att2 => $value2, ...);
43              
44             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.
45              
46             =head1 ATTRIBUTES
47              
48              
49             =head2 Capabilities => ArrayRef[Str|Undef]
50              
51             A list of values that you must specify before AWS CloudFormation can
52             update certain stacks. Some stack templates might include resources
53             that can affect permissions in your AWS account, for example, by
54             creating new AWS Identity and Access Management (IAM) users. For those
55             stacks, you must explicitly acknowledge their capabilities by
56             specifying this parameter.
57              
58             The only valid values are C<CAPABILITY_IAM> and
59             C<CAPABILITY_NAMED_IAM>. The following resources require you to specify
60             this parameter: AWS::IAM::AccessKey, AWS::IAM::Group,
61             AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role,
62             AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack
63             template contains these resources, we recommend that you review all
64             permissions associated with them and edit their permissions if
65             necessary.
66              
67             If you have IAM resources, you can specify either capability. If you
68             have IAM resources with custom names, you must specify
69             C<CAPABILITY_NAMED_IAM>. If you don't specify this parameter, this
70             action returns an C<InsufficientCapabilities> error.
71              
72             For more information, see Acknowledging IAM Resources in AWS
73             CloudFormation Templates.
74              
75              
76              
77             =head2 B<REQUIRED> ChangeSetName => Str
78              
79             The name of the change set. The name must be unique among all change
80             sets that are associated with the specified stack.
81              
82             A change set name can contain only alphanumeric, case sensitive
83             characters and hyphens. It must start with an alphabetic character and
84             cannot exceed 128 characters.
85              
86              
87              
88             =head2 ChangeSetType => Str
89              
90             The type of change set operation. To create a change set for a new
91             stack, specify C<CREATE>. To create a change set for an existing stack,
92             specify C<UPDATE>.
93              
94             If you create a change set for a new stack, AWS Cloudformation creates
95             a stack with a unique stack ID, but no template or resources. The stack
96             will be in the C<REVIEW_IN_PROGRESS> state until you execute the change
97             set.
98              
99             By default, AWS CloudFormation specifies C<UPDATE>. You can't use the
100             C<UPDATE> type to create a change set for a new stack or the C<CREATE>
101             type to create a change set for an existing stack.
102              
103             Valid values are: C<"CREATE">, C<"UPDATE">
104              
105             =head2 ClientToken => Str
106              
107             A unique identifier for this C<CreateChangeSet> request. Specify this
108             token if you plan to retry requests so that AWS CloudFormation knows
109             that you're not attempting to create another change set with the same
110             name. You might retry C<CreateChangeSet> requests to ensure that AWS
111             CloudFormation successfully received them.
112              
113              
114              
115             =head2 Description => Str
116              
117             A description to help you identify this change set.
118              
119              
120              
121             =head2 NotificationARNs => ArrayRef[Str|Undef]
122              
123             The Amazon Resource Names (ARNs) of Amazon Simple Notification Service
124             (Amazon SNS) topics that AWS CloudFormation associates with the stack.
125             To remove all associated notification topics, specify an empty list.
126              
127              
128              
129             =head2 Parameters => ArrayRef[L<Paws::CloudFormation::Parameter>]
130              
131             A list of C<Parameter> structures that specify input parameters for the
132             change set. For more information, see the Parameter data type.
133              
134              
135              
136             =head2 ResourceTypes => ArrayRef[Str|Undef]
137              
138             The template resource types that you have permissions to work with if
139             you execute this change set, such as C<AWS::EC2::Instance>,
140             C<AWS::EC2::*>, or C<Custom::MyCustomInstance>.
141              
142             If the list of resource types doesn't include a resource type that
143             you're updating, the stack update fails. By default, AWS CloudFormation
144             grants permissions to all resource types. AWS Identity and Access
145             Management (IAM) uses this parameter for condition keys in IAM policies
146             for AWS CloudFormation. For more information, see Controlling Access
147             with AWS Identity and Access Management in the AWS CloudFormation User
148             Guide.
149              
150              
151              
152             =head2 RoleARN => Str
153              
154             The Amazon Resource Name (ARN) of an AWS Identity and Access Management
155             (IAM) role that AWS CloudFormation assumes when executing the change
156             set. AWS CloudFormation uses the role's credentials to make calls on
157             your behalf. AWS CloudFormation uses this role for all future
158             operations on the stack. As long as users have permission to operate on
159             the stack, AWS CloudFormation uses this role even if the users don't
160             have permission to pass it. Ensure that the role grants least
161             privilege.
162              
163             If you don't specify a value, AWS CloudFormation uses the role that was
164             previously associated with the stack. If no role is available, AWS
165             CloudFormation uses a temporary session that is generated from your
166             user credentials.
167              
168              
169              
170             =head2 B<REQUIRED> StackName => Str
171              
172             The name or the unique ID of the stack for which you are creating a
173             change set. AWS CloudFormation generates the change set by comparing
174             this stack's information with the information that you submit, such as
175             a modified template or different parameter input values.
176              
177              
178              
179             =head2 Tags => ArrayRef[L<Paws::CloudFormation::Tag>]
180              
181             Key-value pairs to associate with this stack. AWS CloudFormation also
182             propagates these tags to resources in the stack. You can specify a
183             maximum of 10 tags.
184              
185              
186              
187             =head2 TemplateBody => Str
188              
189             A structure that contains the body of the revised template, with a
190             minimum length of 1 byte and a maximum length of 51,200 bytes. AWS
191             CloudFormation generates the change set by comparing this template with
192             the template of the stack that you specified.
193              
194             Conditional: You must specify only C<TemplateBody> or C<TemplateURL>.
195              
196              
197              
198             =head2 TemplateURL => Str
199              
200             The location of the file that contains the revised template. The URL
201             must point to a template (max size: 460,800 bytes) that is located in
202             an S3 bucket. AWS CloudFormation generates the change set by comparing
203             this template with the stack that you specified.
204              
205             Conditional: You must specify only C<TemplateBody> or C<TemplateURL>.
206              
207              
208              
209             =head2 UsePreviousTemplate => Bool
210              
211             Whether to reuse the template that is associated with the stack to
212             create the change set.
213              
214              
215              
216              
217             =head1 SEE ALSO
218              
219             This class forms part of L<Paws>, documenting arguments for method CreateChangeSet in L<Paws::CloudFormation>
220              
221             =head1 BUGS and CONTRIBUTIONS
222              
223             The source code is located here: https://github.com/pplu/aws-sdk-perl
224              
225             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
226              
227             =cut
228