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