aws-sdk-cloudformation 1.0.0.rc1 → 1.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8705ef1b3b859eced6bd27f74658675c346188f5
4
- data.tar.gz: b8570d2cd5a5c55d1a331841cdb42f8ab8844968
3
+ metadata.gz: 059c7f26a85a3d4e31f17d36feb3c026c17019fd
4
+ data.tar.gz: b5ca64bd857e406dbdd7f596a7caf27ffe0026e3
5
5
  SHA512:
6
- metadata.gz: 2838270a16a8140d114e71db91f909e31d18d5f860f6c77ffb3556d226926282df682bc2cc17ae57a496f024faff961f08481fe56043dc73ffa63ffd6a19ba28
7
- data.tar.gz: 5812ac0631f76c43fcb02f7c02dd7e67988c399b529f5aabfec2d99ba2dce4fe31cf32edc5edffbb64fa55ddd17326916bd3ec8feded4988ebc52e730e474647
6
+ metadata.gz: de31aac45bedd1b559df2c33d39e6f6ad326bc11a865e9923df619955fac7779befb7605bde0838a9af7a6a6102d8f8e060254c0ca6ee155d0d41b9ef65e1c49
7
+ data.tar.gz: 5693763247b0fc7006dc50a6b4d182766c26c3d53863985545dffe6b5559f5a8b1b753c6f5d91fc6a1230356a8e599870d2a5802659e372d82e2a62ace8f064d
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -47,6 +47,6 @@ require_relative 'aws-sdk-cloudformation/customizations'
47
47
  # @service
48
48
  module Aws::CloudFormation
49
49
 
50
- GEM_VERSION = '1.0.0.rc1'
50
+ GEM_VERSION = '1.0.0.rc2'
51
51
 
52
52
  end
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -18,1997 +18,2256 @@ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
18
  require 'aws-sdk-core/plugins/response_paging.rb'
19
19
  require 'aws-sdk-core/plugins/stub_responses.rb'
20
20
  require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
21
22
  require 'aws-sdk-core/plugins/signature_v4.rb'
22
23
  require 'aws-sdk-core/plugins/protocols/query.rb'
23
24
 
24
25
  Aws::Plugins::GlobalConfiguration.add_identifier(:cloudformation)
25
26
 
26
- module Aws
27
- module CloudFormation
28
- class Client < Seahorse::Client::Base
27
+ module Aws::CloudFormation
28
+ class Client < Seahorse::Client::Base
29
29
 
30
- include Aws::ClientStubs
30
+ include Aws::ClientStubs
31
31
 
32
- @identifier = :cloudformation
32
+ @identifier = :cloudformation
33
33
 
34
- set_api(ClientApi::API)
34
+ set_api(ClientApi::API)
35
35
 
36
- add_plugin(Seahorse::Client::Plugins::ContentLength)
37
- add_plugin(Aws::Plugins::CredentialsConfiguration)
38
- add_plugin(Aws::Plugins::Logging)
39
- add_plugin(Aws::Plugins::ParamConverter)
40
- add_plugin(Aws::Plugins::ParamValidator)
41
- add_plugin(Aws::Plugins::UserAgent)
42
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
- add_plugin(Aws::Plugins::RetryErrors)
44
- add_plugin(Aws::Plugins::GlobalConfiguration)
45
- add_plugin(Aws::Plugins::RegionalEndpoint)
46
- add_plugin(Aws::Plugins::ResponsePaging)
47
- add_plugin(Aws::Plugins::StubResponses)
48
- add_plugin(Aws::Plugins::IdempotencyToken)
49
- add_plugin(Aws::Plugins::SignatureV4)
50
- add_plugin(Aws::Plugins::Protocols::Query)
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::JsonvalueConverter)
50
+ add_plugin(Aws::Plugins::SignatureV4)
51
+ add_plugin(Aws::Plugins::Protocols::Query)
51
52
 
52
- # @option options [required, Aws::CredentialProvider] :credentials
53
- # Your AWS credentials. This can be an instance of any one of the
54
- # following classes:
55
- #
56
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
- # credentials.
58
- #
59
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
- # from an EC2 IMDS on an EC2 instance.
61
- #
62
- # * `Aws::SharedCredentials` - Used for loading credentials from a
63
- # shared file, such as `~/.aws/config`.
64
- #
65
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
- #
67
- # When `:credentials` are not configured directly, the following
68
- # locations will be searched for credentials:
69
- #
70
- # * `Aws.config[:credentials]`
71
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
- # * `~/.aws/credentials`
74
- # * `~/.aws/config`
75
- # * EC2 IMDS instance profile - When used by default, the timeouts are
76
- # very aggressive. Construct and pass an instance of
77
- # `Aws::InstanceProfileCredentails` to enable retries and extended
78
- # timeouts.
79
- # @option options [required, String] :region
80
- # The AWS region to connect to. The configured `:region` is
81
- # used to determine the service `:endpoint`. When not passed,
82
- # a default `:region` is search for in the following locations:
83
- #
84
- # * `Aws.config[:region]`
85
- # * `ENV['AWS_REGION']`
86
- # * `ENV['AMAZON_REGION']`
87
- # * `ENV['AWS_DEFAULT_REGION']`
88
- # * `~/.aws/credentials`
89
- # * `~/.aws/config`
90
- # @option options [String] :access_key_id
91
- # @option options [Boolean] :convert_params (true)
92
- # When `true`, an attempt is made to coerce request parameters into
93
- # the required types.
94
- # @option options [String] :endpoint
95
- # The client endpoint is normally constructed from the `:region`
96
- # option. You should only configure an `:endpoint` when connecting
97
- # to test endpoints. This should be avalid HTTP(S) URI.
98
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
- # The log formatter.
100
- # @option options [Symbol] :log_level (:info)
101
- # The log level to send messages to the `:logger` at.
102
- # @option options [Logger] :logger
103
- # The Logger instance to send log messages to. If this option
104
- # is not set, logging will be disabled.
105
- # @option options [String] :profile ("default")
106
- # Used when loading credentials from the shared credentials file
107
- # at HOME/.aws/credentials. When not specified, 'default' is used.
108
- # @option options [Integer] :retry_limit (3)
109
- # The maximum number of times to retry failed requests. Only
110
- # ~ 500 level server errors and certain ~ 400 level client errors
111
- # are retried. Generally, these are throttling errors, data
112
- # checksum errors, networking errors, timeout errors and auth
113
- # errors from expired credentials.
114
- # @option options [String] :secret_access_key
115
- # @option options [String] :session_token
116
- # @option options [Boolean] :stub_responses (false)
117
- # Causes the client to return stubbed responses. By default
118
- # fake responses are generated and returned. You can specify
119
- # the response data to return or errors to raise by calling
120
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
121
- #
122
- # ** Please note ** When response stubbing is enabled, no HTTP
123
- # requests are made, and retries are disabled.
124
- # @option options [Boolean] :validate_params (true)
125
- # When `true`, request parameters are validated before
126
- # sending the request.
127
- def initialize(*args)
128
- super
129
- end
53
+ # @option options [required, Aws::CredentialProvider] :credentials
54
+ # Your AWS credentials. This can be an instance of any one of the
55
+ # following classes:
56
+ #
57
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
58
+ # credentials.
59
+ #
60
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
61
+ # from an EC2 IMDS on an EC2 instance.
62
+ #
63
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
64
+ # shared file, such as `~/.aws/config`.
65
+ #
66
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
67
+ #
68
+ # When `:credentials` are not configured directly, the following
69
+ # locations will be searched for credentials:
70
+ #
71
+ # * `Aws.config[:credentials]`
72
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
73
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
74
+ # * `~/.aws/credentials`
75
+ # * `~/.aws/config`
76
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
77
+ # very aggressive. Construct and pass an instance of
78
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
79
+ # timeouts.
80
+ #
81
+ # @option options [required, String] :region
82
+ # The AWS region to connect to. The configured `:region` is
83
+ # used to determine the service `:endpoint`. When not passed,
84
+ # a default `:region` is search for in the following locations:
85
+ #
86
+ # * `Aws.config[:region]`
87
+ # * `ENV['AWS_REGION']`
88
+ # * `ENV['AMAZON_REGION']`
89
+ # * `ENV['AWS_DEFAULT_REGION']`
90
+ # * `~/.aws/credentials`
91
+ # * `~/.aws/config`
92
+ #
93
+ # @option options [String] :access_key_id
94
+ #
95
+ # @option options [Boolean] :convert_params (true)
96
+ # When `true`, an attempt is made to coerce request parameters into
97
+ # the required types.
98
+ #
99
+ # @option options [String] :endpoint
100
+ # The client endpoint is normally constructed from the `:region`
101
+ # option. You should only configure an `:endpoint` when connecting
102
+ # to test endpoints. This should be avalid HTTP(S) URI.
103
+ #
104
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
105
+ # The log formatter.
106
+ #
107
+ # @option options [Symbol] :log_level (:info)
108
+ # The log level to send messages to the `:logger` at.
109
+ #
110
+ # @option options [Logger] :logger
111
+ # The Logger instance to send log messages to. If this option
112
+ # is not set, logging will be disabled.
113
+ #
114
+ # @option options [String] :profile ("default")
115
+ # Used when loading credentials from the shared credentials file
116
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
117
+ #
118
+ # @option options [Integer] :retry_limit (3)
119
+ # The maximum number of times to retry failed requests. Only
120
+ # ~ 500 level server errors and certain ~ 400 level client errors
121
+ # are retried. Generally, these are throttling errors, data
122
+ # checksum errors, networking errors, timeout errors and auth
123
+ # errors from expired credentials.
124
+ #
125
+ # @option options [String] :secret_access_key
126
+ #
127
+ # @option options [String] :session_token
128
+ #
129
+ # @option options [Boolean] :stub_responses (false)
130
+ # Causes the client to return stubbed responses. By default
131
+ # fake responses are generated and returned. You can specify
132
+ # the response data to return or errors to raise by calling
133
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
134
+ #
135
+ # ** Please note ** When response stubbing is enabled, no HTTP
136
+ # requests are made, and retries are disabled.
137
+ #
138
+ # @option options [Boolean] :validate_params (true)
139
+ # When `true`, request parameters are validated before
140
+ # sending the request.
141
+ #
142
+ def initialize(*args)
143
+ super
144
+ end
130
145
 
131
- # @!group API Operations
146
+ # @!group API Operations
132
147
 
133
- # Cancels an update on the specified stack. If the call completes
134
- # successfully, the stack rolls back the update and reverts to the
135
- # previous stack configuration.
136
- #
137
- # <note markdown="1"> You can cancel only stacks that are in the UPDATE\_IN\_PROGRESS state.
138
- #
139
- # </note>
140
- # @option params [required, String] :stack_name
141
- # The name or the unique stack ID that is associated with the stack.
142
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
143
- #
144
- # @example Request syntax with placeholder values
145
- # resp = client.cancel_update_stack({
146
- # stack_name: "StackName", # required
147
- # })
148
- # @overload cancel_update_stack(params = {})
149
- # @param [Hash] params ({})
150
- def cancel_update_stack(params = {}, options = {})
151
- req = build_request(:cancel_update_stack, params)
152
- req.send_request(options)
153
- end
154
-
155
- # For a specified stack that is in the `UPDATE_ROLLBACK_FAILED` state,
156
- # continues rolling it back to the `UPDATE_ROLLBACK_COMPLETE` state.
157
- # Depending on the cause of the failure, you can manually [ fix the
158
- # error][1] and continue the rollback. By continuing the rollback, you
159
- # can return your stack to a working state (the
160
- # `UPDATE_ROLLBACK_COMPLETE` state), and then try to update the stack
161
- # again.
162
- #
163
- # A stack goes into the `UPDATE_ROLLBACK_FAILED` state when AWS
164
- # CloudFormation cannot roll back all changes after a failed stack
165
- # update. For example, you might have a stack that is rolling back to an
166
- # old database instance that was deleted outside of AWS CloudFormation.
167
- # Because AWS CloudFormation doesn't know the database was deleted, it
168
- # assumes that the database instance still exists and attempts to roll
169
- # back to it, causing the update rollback to fail.
170
- #
171
- #
172
- #
173
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-update-rollback-failed
174
- # @option params [required, String] :stack_name
175
- # The name or the unique ID of the stack that you want to continue
176
- # rolling back.
177
- #
178
- # <note markdown="1"> Don't specify the name of a nested stack (a stack that was created by
179
- # using the `AWS::CloudFormation::Stack` resource). Instead, use this
180
- # operation on the parent stack (the stack that contains the
181
- # `AWS::CloudFormation::Stack` resource).
182
- #
183
- # </note>
184
- # @option params [String] :role_arn
185
- # The Amazon Resource Name (ARN) of an AWS Identity and Access
186
- # Management (IAM) role that AWS CloudFormation assumes to roll back the
187
- # stack. AWS CloudFormation uses the role's credentials to make calls
188
- # on your behalf. AWS CloudFormation always uses this role for all
189
- # future operations on the stack. As long as users have permission to
190
- # operate on the stack, AWS CloudFormation uses this role even if the
191
- # users don't have permission to pass it. Ensure that the role grants
192
- # least privilege.
193
- #
194
- # If you don't specify a value, AWS CloudFormation uses the role that
195
- # was previously associated with the stack. If no role is available, AWS
196
- # CloudFormation uses a temporary session that is generated from your
197
- # user credentials.
198
- # @option params [Array<String>] :resources_to_skip
199
- # A list of the logical IDs of the resources that AWS CloudFormation
200
- # skips during the continue update rollback operation. You can specify
201
- # only resources that are in the `UPDATE_FAILED` state because a
202
- # rollback failed. You can't specify resources that are in the
203
- # `UPDATE_FAILED` state for other reasons, for example, because an
204
- # update was canceled. To check why a resource update failed, use the
205
- # DescribeStackResources action, and view the resource status reason.
206
- #
207
- # Specify this property to skip rolling back resources that AWS
208
- # CloudFormation can't successfully roll back. We recommend that you [
209
- # troubleshoot][1] resources before skipping them. AWS CloudFormation
210
- # sets the status of the specified resources to `UPDATE_COMPLETE` and
211
- # continues to roll back the stack. After the rollback is complete, the
212
- # state of the skipped resources will be inconsistent with the state of
213
- # the resources in the stack template. Before performing another stack
214
- # update, you must update the stack or resources to be consistent with
215
- # each other. If you don't, subsequent stack updates might fail, and
216
- # the stack will become unrecoverable.
217
- #
218
- # Specify the minimum number of resources required to successfully roll
219
- # back your stack. For example, a failed resource update might cause
220
- # dependent resources to fail. In this case, it might not be necessary
221
- # to skip the dependent resources.
222
- #
223
- # To specify resources in a nested stack, use the following format:
224
- # `NestedStackName.ResourceLogicalID`. You can specify a nested stack
225
- # resource (the logical ID of an `AWS::CloudFormation::Stack` resource)
226
- # only if it's in one of the following states: `DELETE_IN_PROGRESS`,
227
- # `DELETE_COMPLETE`, or `DELETE_FAILED`.
228
- #
229
- #
230
- #
231
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-update-rollback-failed
232
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
233
- #
234
- # @example Request syntax with placeholder values
235
- # resp = client.continue_update_rollback({
236
- # stack_name: "StackNameOrId", # required
237
- # role_arn: "RoleARN",
238
- # resources_to_skip: ["ResourceToSkip"],
239
- # })
240
- # @overload continue_update_rollback(params = {})
241
- # @param [Hash] params ({})
242
- def continue_update_rollback(params = {}, options = {})
243
- req = build_request(:continue_update_rollback, params)
244
- req.send_request(options)
245
- end
148
+ # Cancels an update on the specified stack. If the call completes
149
+ # successfully, the stack rolls back the update and reverts to the
150
+ # previous stack configuration.
151
+ #
152
+ # <note markdown="1"> You can cancel only stacks that are in the UPDATE\_IN\_PROGRESS state.
153
+ #
154
+ # </note>
155
+ #
156
+ # @option params [required, String] :stack_name
157
+ # The name or the unique stack ID that is associated with the stack.
158
+ #
159
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
160
+ #
161
+ # @example Request syntax with placeholder values
162
+ #
163
+ # resp = client.cancel_update_stack({
164
+ # stack_name: "StackName", # required
165
+ # })
166
+ #
167
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CancelUpdateStack AWS API Documentation
168
+ #
169
+ # @overload cancel_update_stack(params = {})
170
+ # @param [Hash] params ({})
171
+ def cancel_update_stack(params = {}, options = {})
172
+ req = build_request(:cancel_update_stack, params)
173
+ req.send_request(options)
174
+ end
246
175
 
247
- # Creates a list of changes for a stack. AWS CloudFormation generates
248
- # the change set by comparing the template's information with the
249
- # information that you submit. A change set can help you understand
250
- # which resources AWS CloudFormation will change, and how it will change
251
- # them, before you update your stack. Change sets allow you to check
252
- # before making a change to avoid deleting or replacing critical
253
- # resources.
254
- #
255
- # AWS CloudFormation doesn't make any changes to the stack when you
256
- # create a change set. To make the specified changes, you must execute
257
- # the change set by using the ExecuteChangeSet action.
258
- #
259
- # After the call successfully completes, AWS CloudFormation starts
260
- # creating the change set. To check the status of the change set, use
261
- # the DescribeChangeSet action.
262
- # @option params [required, String] :stack_name
263
- # The name or the unique ID of the stack for which you are creating a
264
- # change set. AWS CloudFormation generates the change set by comparing
265
- # this stack's information with the information that you submit, such
266
- # as a modified template or different parameter input values.
267
- # @option params [String] :template_body
268
- # A structure that contains the body of the revised template, with a
269
- # minimum length of 1 byte and a maximum length of 51,200 bytes. AWS
270
- # CloudFormation generates the change set by comparing this template
271
- # with the template of the stack that you specified.
272
- #
273
- # Conditional: You must specify only `TemplateBody` or `TemplateURL`.
274
- # @option params [String] :template_url
275
- # The location of the file that contains the revised template. The URL
276
- # must point to a template (max size: 460,800 bytes) that is located in
277
- # an S3 bucket. AWS CloudFormation generates the change set by comparing
278
- # this template with the stack that you specified.
279
- #
280
- # Conditional: You must specify only `TemplateBody` or `TemplateURL`.
281
- # @option params [Boolean] :use_previous_template
282
- # Whether to reuse the template that is associated with the stack to
283
- # create the change set.
284
- # @option params [Array<Types::Parameter>] :parameters
285
- # A list of `Parameter` structures that specify input parameters for the
286
- # change set. For more information, see the [Parameter][1] data type.
287
- #
288
- #
289
- #
290
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_Parameter.html
291
- # @option params [Array<String>] :capabilities
292
- # A list of values that you must specify before AWS CloudFormation can
293
- # update certain stacks. Some stack templates might include resources
294
- # that can affect permissions in your AWS account, for example, by
295
- # creating new AWS Identity and Access Management (IAM) users. For those
296
- # stacks, you must explicitly acknowledge their capabilities by
297
- # specifying this parameter.
298
- #
299
- # The only valid values are `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`.
300
- # The following resources require you to specify this parameter: [
301
- # AWS::IAM::AccessKey][1], [ AWS::IAM::Group][2], [
302
- # AWS::IAM::InstanceProfile][3], [ AWS::IAM::Policy][4], [
303
- # AWS::IAM::Role][5], [ AWS::IAM::User][6], and [
304
- # AWS::IAM::UserToGroupAddition][7]. If your stack template contains
305
- # these resources, we recommend that you review all permissions
306
- # associated with them and edit their permissions if necessary.
307
- #
308
- # If you have IAM resources, you can specify either capability. If you
309
- # have IAM resources with custom names, you must specify
310
- # `CAPABILITY_NAMED_IAM`. If you don't specify this parameter, this
311
- # action returns an `InsufficientCapabilities` error.
312
- #
313
- # For more information, see [Acknowledging IAM Resources in AWS
314
- # CloudFormation Templates][8].
315
- #
316
- #
317
- #
318
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html
319
- # [2]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html
320
- # [3]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html
321
- # [4]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html
322
- # [5]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html
323
- # [6]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html
324
- # [7]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html
325
- # [8]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities
326
- # @option params [Array<String>] :resource_types
327
- # The template resource types that you have permissions to work with if
328
- # you execute this change set, such as `AWS::EC2::Instance`,
329
- # `AWS::EC2::*`, or `Custom::MyCustomInstance`.
330
- #
331
- # If the list of resource types doesn't include a resource type that
332
- # you're updating, the stack update fails. By default, AWS
333
- # CloudFormation grants permissions to all resource types. AWS Identity
334
- # and Access Management (IAM) uses this parameter for condition keys in
335
- # IAM policies for AWS CloudFormation. For more information, see
336
- # [Controlling Access with AWS Identity and Access Management][1] in the
337
- # AWS CloudFormation User Guide.
338
- #
339
- #
340
- #
341
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html
342
- # @option params [String] :role_arn
343
- # The Amazon Resource Name (ARN) of an AWS Identity and Access
344
- # Management (IAM) role that AWS CloudFormation assumes when executing
345
- # the change set. AWS CloudFormation uses the role's credentials to
346
- # make calls on your behalf. AWS CloudFormation uses this role for all
347
- # future operations on the stack. As long as users have permission to
348
- # operate on the stack, AWS CloudFormation uses this role even if the
349
- # users don't have permission to pass it. Ensure that the role grants
350
- # least privilege.
351
- #
352
- # If you don't specify a value, AWS CloudFormation uses the role that
353
- # was previously associated with the stack. If no role is available, AWS
354
- # CloudFormation uses a temporary session that is generated from your
355
- # user credentials.
356
- # @option params [Array<String>] :notification_arns
357
- # The Amazon Resource Names (ARNs) of Amazon Simple Notification Service
358
- # (Amazon SNS) topics that AWS CloudFormation associates with the stack.
359
- # To remove all associated notification topics, specify an empty list.
360
- # @option params [Array<Types::Tag>] :tags
361
- # Key-value pairs to associate with this stack. AWS CloudFormation also
362
- # propagates these tags to resources in the stack. You can specify a
363
- # maximum of 10 tags.
364
- # @option params [required, String] :change_set_name
365
- # The name of the change set. The name must be unique among all change
366
- # sets that are associated with the specified stack.
367
- #
368
- # A change set name can contain only alphanumeric, case sensitive
369
- # characters and hyphens. It must start with an alphabetic character and
370
- # cannot exceed 128 characters.
371
- # @option params [String] :client_token
372
- # A unique identifier for this `CreateChangeSet` request. Specify this
373
- # token if you plan to retry requests so that AWS CloudFormation knows
374
- # that you're not attempting to create another change set with the same
375
- # name. You might retry `CreateChangeSet` requests to ensure that AWS
376
- # CloudFormation successfully received them.
377
- # @option params [String] :description
378
- # A description to help you identify this change set.
379
- # @option params [String] :change_set_type
380
- # The type of change set operation. To create a change set for a new
381
- # stack, specify `CREATE`. To create a change set for an existing stack,
382
- # specify `UPDATE`.
383
- #
384
- # If you create a change set for a new stack, AWS Cloudformation creates
385
- # a stack with a unique stack ID, but no template or resources. The
386
- # stack will be in the [ `REVIEW_IN_PROGRESS` ][1] state until you
387
- # execute the change set.
388
- #
389
- # By default, AWS CloudFormation specifies `UPDATE`. You can't use the
390
- # `UPDATE` type to create a change set for a new stack or the `CREATE`
391
- # type to create a change set for an existing stack.
392
- #
393
- #
394
- #
395
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-describing-stacks.html#d0e11995
396
- # @return [Types::CreateChangeSetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
397
- #
398
- # * {Types::CreateChangeSetOutput#id #Id} => String
399
- # * {Types::CreateChangeSetOutput#stack_id #StackId} => String
400
- #
401
- # @example Request syntax with placeholder values
402
- # resp = client.create_change_set({
403
- # stack_name: "StackNameOrId", # required
404
- # template_body: "TemplateBody",
405
- # template_url: "TemplateURL",
406
- # use_previous_template: false,
407
- # parameters: [
408
- # {
409
- # parameter_key: "ParameterKey",
410
- # parameter_value: "ParameterValue",
411
- # use_previous_value: false,
412
- # },
413
- # ],
414
- # capabilities: ["CAPABILITY_IAM"], # accepts CAPABILITY_IAM, CAPABILITY_NAMED_IAM
415
- # resource_types: ["ResourceType"],
416
- # role_arn: "RoleARN",
417
- # notification_arns: ["NotificationARN"],
418
- # tags: [
419
- # {
420
- # key: "TagKey",
421
- # value: "TagValue",
422
- # },
423
- # ],
424
- # change_set_name: "ChangeSetName", # required
425
- # client_token: "ClientToken",
426
- # description: "Description",
427
- # change_set_type: "CREATE", # accepts CREATE, UPDATE
428
- # })
429
- #
430
- # @example Response structure
431
- # resp.id #=> String
432
- # resp.stack_id #=> String
433
- # @overload create_change_set(params = {})
434
- # @param [Hash] params ({})
435
- def create_change_set(params = {}, options = {})
436
- req = build_request(:create_change_set, params)
437
- req.send_request(options)
438
- end
176
+ # For a specified stack that is in the `UPDATE_ROLLBACK_FAILED` state,
177
+ # continues rolling it back to the `UPDATE_ROLLBACK_COMPLETE` state.
178
+ # Depending on the cause of the failure, you can manually [ fix the
179
+ # error][1] and continue the rollback. By continuing the rollback, you
180
+ # can return your stack to a working state (the
181
+ # `UPDATE_ROLLBACK_COMPLETE` state), and then try to update the stack
182
+ # again.
183
+ #
184
+ # A stack goes into the `UPDATE_ROLLBACK_FAILED` state when AWS
185
+ # CloudFormation cannot roll back all changes after a failed stack
186
+ # update. For example, you might have a stack that is rolling back to an
187
+ # old database instance that was deleted outside of AWS CloudFormation.
188
+ # Because AWS CloudFormation doesn't know the database was deleted, it
189
+ # assumes that the database instance still exists and attempts to roll
190
+ # back to it, causing the update rollback to fail.
191
+ #
192
+ #
193
+ #
194
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-update-rollback-failed
195
+ #
196
+ # @option params [required, String] :stack_name
197
+ # The name or the unique ID of the stack that you want to continue
198
+ # rolling back.
199
+ #
200
+ # <note markdown="1"> Don't specify the name of a nested stack (a stack that was created by
201
+ # using the `AWS::CloudFormation::Stack` resource). Instead, use this
202
+ # operation on the parent stack (the stack that contains the
203
+ # `AWS::CloudFormation::Stack` resource).
204
+ #
205
+ # </note>
206
+ #
207
+ # @option params [String] :role_arn
208
+ # The Amazon Resource Name (ARN) of an AWS Identity and Access
209
+ # Management (IAM) role that AWS CloudFormation assumes to roll back the
210
+ # stack. AWS CloudFormation uses the role's credentials to make calls
211
+ # on your behalf. AWS CloudFormation always uses this role for all
212
+ # future operations on the stack. As long as users have permission to
213
+ # operate on the stack, AWS CloudFormation uses this role even if the
214
+ # users don't have permission to pass it. Ensure that the role grants
215
+ # least privilege.
216
+ #
217
+ # If you don't specify a value, AWS CloudFormation uses the role that
218
+ # was previously associated with the stack. If no role is available, AWS
219
+ # CloudFormation uses a temporary session that is generated from your
220
+ # user credentials.
221
+ #
222
+ # @option params [Array<String>] :resources_to_skip
223
+ # A list of the logical IDs of the resources that AWS CloudFormation
224
+ # skips during the continue update rollback operation. You can specify
225
+ # only resources that are in the `UPDATE_FAILED` state because a
226
+ # rollback failed. You can't specify resources that are in the
227
+ # `UPDATE_FAILED` state for other reasons, for example, because an
228
+ # update was canceled. To check why a resource update failed, use the
229
+ # DescribeStackResources action, and view the resource status reason.
230
+ #
231
+ # Specify this property to skip rolling back resources that AWS
232
+ # CloudFormation can't successfully roll back. We recommend that you [
233
+ # troubleshoot][1] resources before skipping them. AWS CloudFormation
234
+ # sets the status of the specified resources to `UPDATE_COMPLETE` and
235
+ # continues to roll back the stack. After the rollback is complete, the
236
+ # state of the skipped resources will be inconsistent with the state of
237
+ # the resources in the stack template. Before performing another stack
238
+ # update, you must update the stack or resources to be consistent with
239
+ # each other. If you don't, subsequent stack updates might fail, and
240
+ # the stack will become unrecoverable.
241
+ #
242
+ # Specify the minimum number of resources required to successfully roll
243
+ # back your stack. For example, a failed resource update might cause
244
+ # dependent resources to fail. In this case, it might not be necessary
245
+ # to skip the dependent resources.
246
+ #
247
+ # To specify resources in a nested stack, use the following format:
248
+ # `NestedStackName.ResourceLogicalID`. You can specify a nested stack
249
+ # resource (the logical ID of an `AWS::CloudFormation::Stack` resource)
250
+ # only if it's in one of the following states: `DELETE_IN_PROGRESS`,
251
+ # `DELETE_COMPLETE`, or `DELETE_FAILED`.
252
+ #
253
+ #
254
+ #
255
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-update-rollback-failed
256
+ #
257
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
258
+ #
259
+ # @example Request syntax with placeholder values
260
+ #
261
+ # resp = client.continue_update_rollback({
262
+ # stack_name: "StackNameOrId", # required
263
+ # role_arn: "RoleARN",
264
+ # resources_to_skip: ["ResourceToSkip"],
265
+ # })
266
+ #
267
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ContinueUpdateRollback AWS API Documentation
268
+ #
269
+ # @overload continue_update_rollback(params = {})
270
+ # @param [Hash] params ({})
271
+ def continue_update_rollback(params = {}, options = {})
272
+ req = build_request(:continue_update_rollback, params)
273
+ req.send_request(options)
274
+ end
439
275
 
440
- # Creates a stack as specified in the template. After the call completes
441
- # successfully, the stack creation starts. You can check the status of
442
- # the stack via the DescribeStacks API.
443
- # @option params [required, String] :stack_name
444
- # The name that is associated with the stack. The name must be unique in
445
- # the region in which you are creating the stack.
446
- #
447
- # <note markdown="1"> A stack name can contain only alphanumeric characters (case sensitive)
448
- # and hyphens. It must start with an alphabetic character and cannot be
449
- # longer than 128 characters.
450
- #
451
- # </note>
452
- # @option params [String] :template_body
453
- # Structure containing the template body with a minimum length of 1 byte
454
- # and a maximum length of 51,200 bytes. For more information, go to
455
- # [Template Anatomy][1] in the AWS CloudFormation User Guide.
456
- #
457
- # Conditional: You must specify either the `TemplateBody` or the
458
- # `TemplateURL` parameter, but not both.
459
- #
460
- #
461
- #
462
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
463
- # @option params [String] :template_url
464
- # Location of file containing the template body. The URL must point to a
465
- # template (max size: 460,800 bytes) that is located in an Amazon S3
466
- # bucket. For more information, go to the [Template Anatomy][1] in the
467
- # AWS CloudFormation User Guide.
468
- #
469
- # Conditional: You must specify either the `TemplateBody` or the
470
- # `TemplateURL` parameter, but not both.
471
- #
472
- #
473
- #
474
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
475
- # @option params [Array<Types::Parameter>] :parameters
476
- # A list of `Parameter` structures that specify input parameters for the
477
- # stack. For more information, see the [Parameter][1] data type.
478
- #
479
- #
480
- #
481
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_Parameter.html
482
- # @option params [Boolean] :disable_rollback
483
- # Set to `true` to disable rollback of the stack if stack creation
484
- # failed. You can specify either `DisableRollback` or `OnFailure`, but
485
- # not both.
486
- #
487
- # Default: `false`
488
- # @option params [Integer] :timeout_in_minutes
489
- # The amount of time that can pass before the stack status becomes
490
- # CREATE\_FAILED; if `DisableRollback` is not set or is set to `false`,
491
- # the stack will be rolled back.
492
- # @option params [Array<String>] :notification_arns
493
- # The Simple Notification Service (SNS) topic ARNs to publish stack
494
- # related events. You can find your SNS topic ARNs using the [SNS
495
- # console][1] or your Command Line Interface (CLI).
496
- #
497
- #
498
- #
499
- # [1]: https://console.aws.amazon.com/sns
500
- # @option params [Array<String>] :capabilities
501
- # A list of values that you must specify before AWS CloudFormation can
502
- # create certain stacks. Some stack templates might include resources
503
- # that can affect permissions in your AWS account, for example, by
504
- # creating new AWS Identity and Access Management (IAM) users. For those
505
- # stacks, you must explicitly acknowledge their capabilities by
506
- # specifying this parameter.
507
- #
508
- # The only valid values are `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`.
509
- # The following resources require you to specify this parameter: [
510
- # AWS::IAM::AccessKey][1], [ AWS::IAM::Group][2], [
511
- # AWS::IAM::InstanceProfile][3], [ AWS::IAM::Policy][4], [
512
- # AWS::IAM::Role][5], [ AWS::IAM::User][6], and [
513
- # AWS::IAM::UserToGroupAddition][7]. If your stack template contains
514
- # these resources, we recommend that you review all permissions
515
- # associated with them and edit their permissions if necessary.
516
- #
517
- # If you have IAM resources, you can specify either capability. If you
518
- # have IAM resources with custom names, you must specify
519
- # `CAPABILITY_NAMED_IAM`. If you don't specify this parameter, this
520
- # action returns an `InsufficientCapabilities` error.
521
- #
522
- # For more information, see [Acknowledging IAM Resources in AWS
523
- # CloudFormation Templates][8].
524
- #
525
- #
526
- #
527
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html
528
- # [2]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html
529
- # [3]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html
530
- # [4]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html
531
- # [5]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html
532
- # [6]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html
533
- # [7]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html
534
- # [8]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities
535
- # @option params [Array<String>] :resource_types
536
- # The template resource types that you have permissions to work with for
537
- # this create stack action, such as `AWS::EC2::Instance`, `AWS::EC2::*`,
538
- # or `Custom::MyCustomInstance`. Use the following syntax to describe
539
- # template resource types: `AWS::*` (for all AWS resource), `Custom::*`
540
- # (for all custom resources), `Custom::logical_ID ` (for a specific
541
- # custom resource), `AWS::service_name::*` (for all resources of a
542
- # particular AWS service), and `AWS::service_name::resource_logical_ID `
543
- # (for a specific AWS resource).
544
- #
545
- # If the list of resource types doesn't include a resource that you're
546
- # creating, the stack creation fails. By default, AWS CloudFormation
547
- # grants permissions to all resource types. AWS Identity and Access
548
- # Management (IAM) uses this parameter for AWS CloudFormation-specific
549
- # condition keys in IAM policies. For more information, see [Controlling
550
- # Access with AWS Identity and Access Management][1].
551
- #
552
- #
553
- #
554
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html
555
- # @option params [String] :role_arn
556
- # The Amazon Resource Name (ARN) of an AWS Identity and Access
557
- # Management (IAM) role that AWS CloudFormation assumes to create the
558
- # stack. AWS CloudFormation uses the role's credentials to make calls
559
- # on your behalf. AWS CloudFormation always uses this role for all
560
- # future operations on the stack. As long as users have permission to
561
- # operate on the stack, AWS CloudFormation uses this role even if the
562
- # users don't have permission to pass it. Ensure that the role grants
563
- # least privilege.
564
- #
565
- # If you don't specify a value, AWS CloudFormation uses the role that
566
- # was previously associated with the stack. If no role is available, AWS
567
- # CloudFormation uses a temporary session that is generated from your
568
- # user credentials.
569
- # @option params [String] :on_failure
570
- # Determines what action will be taken if stack creation fails. This
571
- # must be one of: DO\_NOTHING, ROLLBACK, or DELETE. You can specify
572
- # either `OnFailure` or `DisableRollback`, but not both.
573
- #
574
- # Default: `ROLLBACK`
575
- # @option params [String] :stack_policy_body
576
- # Structure containing the stack policy body. For more information, go
577
- # to [ Prevent Updates to Stack Resources][1] in the *AWS CloudFormation
578
- # User Guide*. You can specify either the `StackPolicyBody` or the
579
- # `StackPolicyURL` parameter, but not both.
580
- #
581
- #
582
- #
583
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html
584
- # @option params [String] :stack_policy_url
585
- # Location of a file containing the stack policy. The URL must point to
586
- # a policy (maximum size: 16 KB) located in an S3 bucket in the same
587
- # region as the stack. You can specify either the `StackPolicyBody` or
588
- # the `StackPolicyURL` parameter, but not both.
589
- # @option params [Array<Types::Tag>] :tags
590
- # Key-value pairs to associate with this stack. AWS CloudFormation also
591
- # propagates these tags to the resources created in the stack. A maximum
592
- # number of 10 tags can be specified.
593
- # @return [Types::CreateStackOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
594
- #
595
- # * {Types::CreateStackOutput#stack_id #StackId} => String
596
- #
597
- # @example Request syntax with placeholder values
598
- # resp = client.create_stack({
599
- # stack_name: "StackName", # required
600
- # template_body: "TemplateBody",
601
- # template_url: "TemplateURL",
602
- # parameters: [
603
- # {
604
- # parameter_key: "ParameterKey",
605
- # parameter_value: "ParameterValue",
606
- # use_previous_value: false,
607
- # },
608
- # ],
609
- # disable_rollback: false,
610
- # timeout_in_minutes: 1,
611
- # notification_arns: ["NotificationARN"],
612
- # capabilities: ["CAPABILITY_IAM"], # accepts CAPABILITY_IAM, CAPABILITY_NAMED_IAM
613
- # resource_types: ["ResourceType"],
614
- # role_arn: "RoleARN",
615
- # on_failure: "DO_NOTHING", # accepts DO_NOTHING, ROLLBACK, DELETE
616
- # stack_policy_body: "StackPolicyBody",
617
- # stack_policy_url: "StackPolicyURL",
618
- # tags: [
619
- # {
620
- # key: "TagKey",
621
- # value: "TagValue",
622
- # },
623
- # ],
624
- # })
625
- #
626
- # @example Response structure
627
- # resp.stack_id #=> String
628
- # @overload create_stack(params = {})
629
- # @param [Hash] params ({})
630
- def create_stack(params = {}, options = {})
631
- req = build_request(:create_stack, params)
632
- req.send_request(options)
633
- end
276
+ # Creates a list of changes for a stack. AWS CloudFormation generates
277
+ # the change set by comparing the template's information with the
278
+ # information that you submit. A change set can help you understand
279
+ # which resources AWS CloudFormation will change, and how it will change
280
+ # them, before you update your stack. Change sets allow you to check
281
+ # before making a change to avoid deleting or replacing critical
282
+ # resources.
283
+ #
284
+ # AWS CloudFormation doesn't make any changes to the stack when you
285
+ # create a change set. To make the specified changes, you must execute
286
+ # the change set by using the ExecuteChangeSet action.
287
+ #
288
+ # After the call successfully completes, AWS CloudFormation starts
289
+ # creating the change set. To check the status of the change set, use
290
+ # the DescribeChangeSet action.
291
+ #
292
+ # @option params [required, String] :stack_name
293
+ # The name or the unique ID of the stack for which you are creating a
294
+ # change set. AWS CloudFormation generates the change set by comparing
295
+ # this stack's information with the information that you submit, such
296
+ # as a modified template or different parameter input values.
297
+ #
298
+ # @option params [String] :template_body
299
+ # A structure that contains the body of the revised template, with a
300
+ # minimum length of 1 byte and a maximum length of 51,200 bytes. AWS
301
+ # CloudFormation generates the change set by comparing this template
302
+ # with the template of the stack that you specified.
303
+ #
304
+ # Conditional: You must specify only `TemplateBody` or `TemplateURL`.
305
+ #
306
+ # @option params [String] :template_url
307
+ # The location of the file that contains the revised template. The URL
308
+ # must point to a template (max size: 460,800 bytes) that is located in
309
+ # an S3 bucket. AWS CloudFormation generates the change set by comparing
310
+ # this template with the stack that you specified.
311
+ #
312
+ # Conditional: You must specify only `TemplateBody` or `TemplateURL`.
313
+ #
314
+ # @option params [Boolean] :use_previous_template
315
+ # Whether to reuse the template that is associated with the stack to
316
+ # create the change set.
317
+ #
318
+ # @option params [Array<Types::Parameter>] :parameters
319
+ # A list of `Parameter` structures that specify input parameters for the
320
+ # change set. For more information, see the [Parameter][1] data type.
321
+ #
322
+ #
323
+ #
324
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_Parameter.html
325
+ #
326
+ # @option params [Array<String>] :capabilities
327
+ # A list of values that you must specify before AWS CloudFormation can
328
+ # update certain stacks. Some stack templates might include resources
329
+ # that can affect permissions in your AWS account, for example, by
330
+ # creating new AWS Identity and Access Management (IAM) users. For those
331
+ # stacks, you must explicitly acknowledge their capabilities by
332
+ # specifying this parameter.
333
+ #
334
+ # The only valid values are `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`.
335
+ # The following resources require you to specify this parameter: [
336
+ # AWS::IAM::AccessKey][1], [ AWS::IAM::Group][2], [
337
+ # AWS::IAM::InstanceProfile][3], [ AWS::IAM::Policy][4], [
338
+ # AWS::IAM::Role][5], [ AWS::IAM::User][6], and [
339
+ # AWS::IAM::UserToGroupAddition][7]. If your stack template contains
340
+ # these resources, we recommend that you review all permissions
341
+ # associated with them and edit their permissions if necessary.
342
+ #
343
+ # If you have IAM resources, you can specify either capability. If you
344
+ # have IAM resources with custom names, you must specify
345
+ # `CAPABILITY_NAMED_IAM`. If you don't specify this parameter, this
346
+ # action returns an `InsufficientCapabilities` error.
347
+ #
348
+ # For more information, see [Acknowledging IAM Resources in AWS
349
+ # CloudFormation Templates][8].
350
+ #
351
+ #
352
+ #
353
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html
354
+ # [2]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html
355
+ # [3]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html
356
+ # [4]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html
357
+ # [5]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html
358
+ # [6]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html
359
+ # [7]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html
360
+ # [8]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities
361
+ #
362
+ # @option params [Array<String>] :resource_types
363
+ # The template resource types that you have permissions to work with if
364
+ # you execute this change set, such as `AWS::EC2::Instance`,
365
+ # `AWS::EC2::*`, or `Custom::MyCustomInstance`.
366
+ #
367
+ # If the list of resource types doesn't include a resource type that
368
+ # you're updating, the stack update fails. By default, AWS
369
+ # CloudFormation grants permissions to all resource types. AWS Identity
370
+ # and Access Management (IAM) uses this parameter for condition keys in
371
+ # IAM policies for AWS CloudFormation. For more information, see
372
+ # [Controlling Access with AWS Identity and Access Management][1] in the
373
+ # AWS CloudFormation User Guide.
374
+ #
375
+ #
376
+ #
377
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html
378
+ #
379
+ # @option params [String] :role_arn
380
+ # The Amazon Resource Name (ARN) of an AWS Identity and Access
381
+ # Management (IAM) role that AWS CloudFormation assumes when executing
382
+ # the change set. AWS CloudFormation uses the role's credentials to
383
+ # make calls on your behalf. AWS CloudFormation uses this role for all
384
+ # future operations on the stack. As long as users have permission to
385
+ # operate on the stack, AWS CloudFormation uses this role even if the
386
+ # users don't have permission to pass it. Ensure that the role grants
387
+ # least privilege.
388
+ #
389
+ # If you don't specify a value, AWS CloudFormation uses the role that
390
+ # was previously associated with the stack. If no role is available, AWS
391
+ # CloudFormation uses a temporary session that is generated from your
392
+ # user credentials.
393
+ #
394
+ # @option params [Array<String>] :notification_arns
395
+ # The Amazon Resource Names (ARNs) of Amazon Simple Notification Service
396
+ # (Amazon SNS) topics that AWS CloudFormation associates with the stack.
397
+ # To remove all associated notification topics, specify an empty list.
398
+ #
399
+ # @option params [Array<Types::Tag>] :tags
400
+ # Key-value pairs to associate with this stack. AWS CloudFormation also
401
+ # propagates these tags to resources in the stack. You can specify a
402
+ # maximum of 10 tags.
403
+ #
404
+ # @option params [required, String] :change_set_name
405
+ # The name of the change set. The name must be unique among all change
406
+ # sets that are associated with the specified stack.
407
+ #
408
+ # A change set name can contain only alphanumeric, case sensitive
409
+ # characters and hyphens. It must start with an alphabetic character and
410
+ # cannot exceed 128 characters.
411
+ #
412
+ # @option params [String] :client_token
413
+ # A unique identifier for this `CreateChangeSet` request. Specify this
414
+ # token if you plan to retry requests so that AWS CloudFormation knows
415
+ # that you're not attempting to create another change set with the same
416
+ # name. You might retry `CreateChangeSet` requests to ensure that AWS
417
+ # CloudFormation successfully received them.
418
+ #
419
+ # @option params [String] :description
420
+ # A description to help you identify this change set.
421
+ #
422
+ # @option params [String] :change_set_type
423
+ # The type of change set operation. To create a change set for a new
424
+ # stack, specify `CREATE`. To create a change set for an existing stack,
425
+ # specify `UPDATE`.
426
+ #
427
+ # If you create a change set for a new stack, AWS Cloudformation creates
428
+ # a stack with a unique stack ID, but no template or resources. The
429
+ # stack will be in the [ `REVIEW_IN_PROGRESS` ][1] state until you
430
+ # execute the change set.
431
+ #
432
+ # By default, AWS CloudFormation specifies `UPDATE`. You can't use the
433
+ # `UPDATE` type to create a change set for a new stack or the `CREATE`
434
+ # type to create a change set for an existing stack.
435
+ #
436
+ #
437
+ #
438
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-describing-stacks.html#d0e11995
439
+ #
440
+ # @return [Types::CreateChangeSetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
441
+ #
442
+ # * {Types::CreateChangeSetOutput#id #id} => String
443
+ # * {Types::CreateChangeSetOutput#stack_id #stack_id} => String
444
+ #
445
+ # @example Request syntax with placeholder values
446
+ #
447
+ # resp = client.create_change_set({
448
+ # stack_name: "StackNameOrId", # required
449
+ # template_body: "TemplateBody",
450
+ # template_url: "TemplateURL",
451
+ # use_previous_template: false,
452
+ # parameters: [
453
+ # {
454
+ # parameter_key: "ParameterKey",
455
+ # parameter_value: "ParameterValue",
456
+ # use_previous_value: false,
457
+ # },
458
+ # ],
459
+ # capabilities: ["CAPABILITY_IAM"], # accepts CAPABILITY_IAM, CAPABILITY_NAMED_IAM
460
+ # resource_types: ["ResourceType"],
461
+ # role_arn: "RoleARN",
462
+ # notification_arns: ["NotificationARN"],
463
+ # tags: [
464
+ # {
465
+ # key: "TagKey",
466
+ # value: "TagValue",
467
+ # },
468
+ # ],
469
+ # change_set_name: "ChangeSetName", # required
470
+ # client_token: "ClientToken",
471
+ # description: "Description",
472
+ # change_set_type: "CREATE", # accepts CREATE, UPDATE
473
+ # })
474
+ #
475
+ # @example Response structure
476
+ #
477
+ # resp.id #=> String
478
+ # resp.stack_id #=> String
479
+ #
480
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet AWS API Documentation
481
+ #
482
+ # @overload create_change_set(params = {})
483
+ # @param [Hash] params ({})
484
+ def create_change_set(params = {}, options = {})
485
+ req = build_request(:create_change_set, params)
486
+ req.send_request(options)
487
+ end
634
488
 
635
- # Deletes the specified change set. Deleting change sets ensures that no
636
- # one executes the wrong change set.
637
- #
638
- # If the call successfully completes, AWS CloudFormation successfully
639
- # deleted the change set.
640
- # @option params [required, String] :change_set_name
641
- # The name or Amazon Resource Name (ARN) of the change set that you want
642
- # to delete.
643
- # @option params [String] :stack_name
644
- # If you specified the name of a change set to delete, specify the stack
645
- # name or ID (ARN) that is associated with it.
646
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
647
- #
648
- # @example Request syntax with placeholder values
649
- # resp = client.delete_change_set({
650
- # change_set_name: "ChangeSetNameOrId", # required
651
- # stack_name: "StackNameOrId",
652
- # })
653
- # @overload delete_change_set(params = {})
654
- # @param [Hash] params ({})
655
- def delete_change_set(params = {}, options = {})
656
- req = build_request(:delete_change_set, params)
657
- req.send_request(options)
658
- end
489
+ # Creates a stack as specified in the template. After the call completes
490
+ # successfully, the stack creation starts. You can check the status of
491
+ # the stack via the DescribeStacks API.
492
+ #
493
+ # @option params [required, String] :stack_name
494
+ # The name that is associated with the stack. The name must be unique in
495
+ # the region in which you are creating the stack.
496
+ #
497
+ # <note markdown="1"> A stack name can contain only alphanumeric characters (case sensitive)
498
+ # and hyphens. It must start with an alphabetic character and cannot be
499
+ # longer than 128 characters.
500
+ #
501
+ # </note>
502
+ #
503
+ # @option params [String] :template_body
504
+ # Structure containing the template body with a minimum length of 1 byte
505
+ # and a maximum length of 51,200 bytes. For more information, go to
506
+ # [Template Anatomy][1] in the AWS CloudFormation User Guide.
507
+ #
508
+ # Conditional: You must specify either the `TemplateBody` or the
509
+ # `TemplateURL` parameter, but not both.
510
+ #
511
+ #
512
+ #
513
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
514
+ #
515
+ # @option params [String] :template_url
516
+ # Location of file containing the template body. The URL must point to a
517
+ # template (max size: 460,800 bytes) that is located in an Amazon S3
518
+ # bucket. For more information, go to the [Template Anatomy][1] in the
519
+ # AWS CloudFormation User Guide.
520
+ #
521
+ # Conditional: You must specify either the `TemplateBody` or the
522
+ # `TemplateURL` parameter, but not both.
523
+ #
524
+ #
525
+ #
526
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
527
+ #
528
+ # @option params [Array<Types::Parameter>] :parameters
529
+ # A list of `Parameter` structures that specify input parameters for the
530
+ # stack. For more information, see the [Parameter][1] data type.
531
+ #
532
+ #
533
+ #
534
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_Parameter.html
535
+ #
536
+ # @option params [Boolean] :disable_rollback
537
+ # Set to `true` to disable rollback of the stack if stack creation
538
+ # failed. You can specify either `DisableRollback` or `OnFailure`, but
539
+ # not both.
540
+ #
541
+ # Default: `false`
542
+ #
543
+ # @option params [Integer] :timeout_in_minutes
544
+ # The amount of time that can pass before the stack status becomes
545
+ # CREATE\_FAILED; if `DisableRollback` is not set or is set to `false`,
546
+ # the stack will be rolled back.
547
+ #
548
+ # @option params [Array<String>] :notification_arns
549
+ # The Simple Notification Service (SNS) topic ARNs to publish stack
550
+ # related events. You can find your SNS topic ARNs using the [SNS
551
+ # console][1] or your Command Line Interface (CLI).
552
+ #
553
+ #
554
+ #
555
+ # [1]: https://console.aws.amazon.com/sns
556
+ #
557
+ # @option params [Array<String>] :capabilities
558
+ # A list of values that you must specify before AWS CloudFormation can
559
+ # create certain stacks. Some stack templates might include resources
560
+ # that can affect permissions in your AWS account, for example, by
561
+ # creating new AWS Identity and Access Management (IAM) users. For those
562
+ # stacks, you must explicitly acknowledge their capabilities by
563
+ # specifying this parameter.
564
+ #
565
+ # The only valid values are `CAPABILITY_IAM` and `CAPABILITY_NAMED_IAM`.
566
+ # The following resources require you to specify this parameter: [
567
+ # AWS::IAM::AccessKey][1], [ AWS::IAM::Group][2], [
568
+ # AWS::IAM::InstanceProfile][3], [ AWS::IAM::Policy][4], [
569
+ # AWS::IAM::Role][5], [ AWS::IAM::User][6], and [
570
+ # AWS::IAM::UserToGroupAddition][7]. If your stack template contains
571
+ # these resources, we recommend that you review all permissions
572
+ # associated with them and edit their permissions if necessary.
573
+ #
574
+ # If you have IAM resources, you can specify either capability. If you
575
+ # have IAM resources with custom names, you must specify
576
+ # `CAPABILITY_NAMED_IAM`. If you don't specify this parameter, this
577
+ # action returns an `InsufficientCapabilities` error.
578
+ #
579
+ # For more information, see [Acknowledging IAM Resources in AWS
580
+ # CloudFormation Templates][8].
581
+ #
582
+ #
583
+ #
584
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html
585
+ # [2]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html
586
+ # [3]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html
587
+ # [4]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html
588
+ # [5]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html
589
+ # [6]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html
590
+ # [7]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html
591
+ # [8]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities
592
+ #
593
+ # @option params [Array<String>] :resource_types
594
+ # The template resource types that you have permissions to work with for
595
+ # this create stack action, such as `AWS::EC2::Instance`, `AWS::EC2::*`,
596
+ # or `Custom::MyCustomInstance`. Use the following syntax to describe
597
+ # template resource types: `AWS::*` (for all AWS resource), `Custom::*`
598
+ # (for all custom resources), `Custom::logical_ID ` (for a specific
599
+ # custom resource), `AWS::service_name::*` (for all resources of a
600
+ # particular AWS service), and `AWS::service_name::resource_logical_ID `
601
+ # (for a specific AWS resource).
602
+ #
603
+ # If the list of resource types doesn't include a resource that you're
604
+ # creating, the stack creation fails. By default, AWS CloudFormation
605
+ # grants permissions to all resource types. AWS Identity and Access
606
+ # Management (IAM) uses this parameter for AWS CloudFormation-specific
607
+ # condition keys in IAM policies. For more information, see [Controlling
608
+ # Access with AWS Identity and Access Management][1].
609
+ #
610
+ #
611
+ #
612
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html
613
+ #
614
+ # @option params [String] :role_arn
615
+ # The Amazon Resource Name (ARN) of an AWS Identity and Access
616
+ # Management (IAM) role that AWS CloudFormation assumes to create the
617
+ # stack. AWS CloudFormation uses the role's credentials to make calls
618
+ # on your behalf. AWS CloudFormation always uses this role for all
619
+ # future operations on the stack. As long as users have permission to
620
+ # operate on the stack, AWS CloudFormation uses this role even if the
621
+ # users don't have permission to pass it. Ensure that the role grants
622
+ # least privilege.
623
+ #
624
+ # If you don't specify a value, AWS CloudFormation uses the role that
625
+ # was previously associated with the stack. If no role is available, AWS
626
+ # CloudFormation uses a temporary session that is generated from your
627
+ # user credentials.
628
+ #
629
+ # @option params [String] :on_failure
630
+ # Determines what action will be taken if stack creation fails. This
631
+ # must be one of: DO\_NOTHING, ROLLBACK, or DELETE. You can specify
632
+ # either `OnFailure` or `DisableRollback`, but not both.
633
+ #
634
+ # Default: `ROLLBACK`
635
+ #
636
+ # @option params [String] :stack_policy_body
637
+ # Structure containing the stack policy body. For more information, go
638
+ # to [ Prevent Updates to Stack Resources][1] in the *AWS CloudFormation
639
+ # User Guide*. You can specify either the `StackPolicyBody` or the
640
+ # `StackPolicyURL` parameter, but not both.
641
+ #
642
+ #
643
+ #
644
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html
645
+ #
646
+ # @option params [String] :stack_policy_url
647
+ # Location of a file containing the stack policy. The URL must point to
648
+ # a policy (maximum size: 16 KB) located in an S3 bucket in the same
649
+ # region as the stack. You can specify either the `StackPolicyBody` or
650
+ # the `StackPolicyURL` parameter, but not both.
651
+ #
652
+ # @option params [Array<Types::Tag>] :tags
653
+ # Key-value pairs to associate with this stack. AWS CloudFormation also
654
+ # propagates these tags to the resources created in the stack. A maximum
655
+ # number of 10 tags can be specified.
656
+ #
657
+ # @return [Types::CreateStackOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
658
+ #
659
+ # * {Types::CreateStackOutput#stack_id #stack_id} => String
660
+ #
661
+ # @example Request syntax with placeholder values
662
+ #
663
+ # resp = client.create_stack({
664
+ # stack_name: "StackName", # required
665
+ # template_body: "TemplateBody",
666
+ # template_url: "TemplateURL",
667
+ # parameters: [
668
+ # {
669
+ # parameter_key: "ParameterKey",
670
+ # parameter_value: "ParameterValue",
671
+ # use_previous_value: false,
672
+ # },
673
+ # ],
674
+ # disable_rollback: false,
675
+ # timeout_in_minutes: 1,
676
+ # notification_arns: ["NotificationARN"],
677
+ # capabilities: ["CAPABILITY_IAM"], # accepts CAPABILITY_IAM, CAPABILITY_NAMED_IAM
678
+ # resource_types: ["ResourceType"],
679
+ # role_arn: "RoleARN",
680
+ # on_failure: "DO_NOTHING", # accepts DO_NOTHING, ROLLBACK, DELETE
681
+ # stack_policy_body: "StackPolicyBody",
682
+ # stack_policy_url: "StackPolicyURL",
683
+ # tags: [
684
+ # {
685
+ # key: "TagKey",
686
+ # value: "TagValue",
687
+ # },
688
+ # ],
689
+ # })
690
+ #
691
+ # @example Response structure
692
+ #
693
+ # resp.stack_id #=> String
694
+ #
695
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateStack AWS API Documentation
696
+ #
697
+ # @overload create_stack(params = {})
698
+ # @param [Hash] params ({})
699
+ def create_stack(params = {}, options = {})
700
+ req = build_request(:create_stack, params)
701
+ req.send_request(options)
702
+ end
659
703
 
660
- # Deletes a specified stack. Once the call completes successfully, stack
661
- # deletion starts. Deleted stacks do not show up in the DescribeStacks
662
- # API if the deletion has been completed successfully.
663
- # @option params [required, String] :stack_name
664
- # The name or the unique stack ID that is associated with the stack.
665
- # @option params [Array<String>] :retain_resources
666
- # For stacks in the `DELETE_FAILED` state, a list of resource logical
667
- # IDs that are associated with the resources you want to retain. During
668
- # deletion, AWS CloudFormation deletes the stack but does not delete the
669
- # retained resources.
670
- #
671
- # Retaining resources is useful when you cannot delete a resource, such
672
- # as a non-empty S3 bucket, but you want to delete the stack.
673
- # @option params [String] :role_arn
674
- # The Amazon Resource Name (ARN) of an AWS Identity and Access
675
- # Management (IAM) role that AWS CloudFormation assumes to delete the
676
- # stack. AWS CloudFormation uses the role's credentials to make calls
677
- # on your behalf.
678
- #
679
- # If you don't specify a value, AWS CloudFormation uses the role that
680
- # was previously associated with the stack. If no role is available, AWS
681
- # CloudFormation uses a temporary session that is generated from your
682
- # user credentials.
683
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
684
- #
685
- # @example Request syntax with placeholder values
686
- # resp = client.delete_stack({
687
- # stack_name: "StackName", # required
688
- # retain_resources: ["LogicalResourceId"],
689
- # role_arn: "RoleARN",
690
- # })
691
- # @overload delete_stack(params = {})
692
- # @param [Hash] params ({})
693
- def delete_stack(params = {}, options = {})
694
- req = build_request(:delete_stack, params)
695
- req.send_request(options)
696
- end
704
+ # Deletes the specified change set. Deleting change sets ensures that no
705
+ # one executes the wrong change set.
706
+ #
707
+ # If the call successfully completes, AWS CloudFormation successfully
708
+ # deleted the change set.
709
+ #
710
+ # @option params [required, String] :change_set_name
711
+ # The name or Amazon Resource Name (ARN) of the change set that you want
712
+ # to delete.
713
+ #
714
+ # @option params [String] :stack_name
715
+ # If you specified the name of a change set to delete, specify the stack
716
+ # name or ID (ARN) that is associated with it.
717
+ #
718
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
719
+ #
720
+ # @example Request syntax with placeholder values
721
+ #
722
+ # resp = client.delete_change_set({
723
+ # change_set_name: "ChangeSetNameOrId", # required
724
+ # stack_name: "StackNameOrId",
725
+ # })
726
+ #
727
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DeleteChangeSet AWS API Documentation
728
+ #
729
+ # @overload delete_change_set(params = {})
730
+ # @param [Hash] params ({})
731
+ def delete_change_set(params = {}, options = {})
732
+ req = build_request(:delete_change_set, params)
733
+ req.send_request(options)
734
+ end
697
735
 
698
- # Retrieves your account's AWS CloudFormation limits, such as the
699
- # maximum number of stacks that you can create in your account.
700
- # @option params [String] :next_token
701
- # A string that identifies the next page of limits that you want to
702
- # retrieve.
703
- # @return [Types::DescribeAccountLimitsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
704
- #
705
- # * {Types::DescribeAccountLimitsOutput#account_limits #AccountLimits} => Array&lt;Types::AccountLimit&gt;
706
- # * {Types::DescribeAccountLimitsOutput#next_token #NextToken} => String
707
- #
708
- # @example Request syntax with placeholder values
709
- # resp = client.describe_account_limits({
710
- # next_token: "NextToken",
711
- # })
712
- #
713
- # @example Response structure
714
- # resp.account_limits #=> Array
715
- # resp.account_limits[0].name #=> String
716
- # resp.account_limits[0].value #=> Integer
717
- # resp.next_token #=> String
718
- # @overload describe_account_limits(params = {})
719
- # @param [Hash] params ({})
720
- def describe_account_limits(params = {}, options = {})
721
- req = build_request(:describe_account_limits, params)
722
- req.send_request(options)
723
- end
736
+ # Deletes a specified stack. Once the call completes successfully, stack
737
+ # deletion starts. Deleted stacks do not show up in the DescribeStacks
738
+ # API if the deletion has been completed successfully.
739
+ #
740
+ # @option params [required, String] :stack_name
741
+ # The name or the unique stack ID that is associated with the stack.
742
+ #
743
+ # @option params [Array<String>] :retain_resources
744
+ # For stacks in the `DELETE_FAILED` state, a list of resource logical
745
+ # IDs that are associated with the resources you want to retain. During
746
+ # deletion, AWS CloudFormation deletes the stack but does not delete the
747
+ # retained resources.
748
+ #
749
+ # Retaining resources is useful when you cannot delete a resource, such
750
+ # as a non-empty S3 bucket, but you want to delete the stack.
751
+ #
752
+ # @option params [String] :role_arn
753
+ # The Amazon Resource Name (ARN) of an AWS Identity and Access
754
+ # Management (IAM) role that AWS CloudFormation assumes to delete the
755
+ # stack. AWS CloudFormation uses the role's credentials to make calls
756
+ # on your behalf.
757
+ #
758
+ # If you don't specify a value, AWS CloudFormation uses the role that
759
+ # was previously associated with the stack. If no role is available, AWS
760
+ # CloudFormation uses a temporary session that is generated from your
761
+ # user credentials.
762
+ #
763
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
764
+ #
765
+ # @example Request syntax with placeholder values
766
+ #
767
+ # resp = client.delete_stack({
768
+ # stack_name: "StackName", # required
769
+ # retain_resources: ["LogicalResourceId"],
770
+ # role_arn: "RoleARN",
771
+ # })
772
+ #
773
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DeleteStack AWS API Documentation
774
+ #
775
+ # @overload delete_stack(params = {})
776
+ # @param [Hash] params ({})
777
+ def delete_stack(params = {}, options = {})
778
+ req = build_request(:delete_stack, params)
779
+ req.send_request(options)
780
+ end
724
781
 
725
- # Returns the inputs for the change set and a list of changes that AWS
726
- # CloudFormation will make if you execute the change set. For more
727
- # information, see [Updating Stacks Using Change Sets][1] in the AWS
728
- # CloudFormation User Guide.
729
- #
730
- #
731
- #
732
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets.html
733
- # @option params [required, String] :change_set_name
734
- # The name or Amazon Resource Name (ARN) of the change set that you want
735
- # to describe.
736
- # @option params [String] :stack_name
737
- # If you specified the name of a change set, specify the stack name or
738
- # ID (ARN) of the change set you want to describe.
739
- # @option params [String] :next_token
740
- # A string (provided by the DescribeChangeSet response output) that
741
- # identifies the next page of information that you want to retrieve.
742
- # @return [Types::DescribeChangeSetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
743
- #
744
- # * {Types::DescribeChangeSetOutput#change_set_name #ChangeSetName} => String
745
- # * {Types::DescribeChangeSetOutput#change_set_id #ChangeSetId} => String
746
- # * {Types::DescribeChangeSetOutput#stack_id #StackId} => String
747
- # * {Types::DescribeChangeSetOutput#stack_name #StackName} => String
748
- # * {Types::DescribeChangeSetOutput#description #Description} => String
749
- # * {Types::DescribeChangeSetOutput#parameters #Parameters} => Array&lt;Types::Parameter&gt;
750
- # * {Types::DescribeChangeSetOutput#creation_time #CreationTime} => Time
751
- # * {Types::DescribeChangeSetOutput#execution_status #ExecutionStatus} => String
752
- # * {Types::DescribeChangeSetOutput#status #Status} => String
753
- # * {Types::DescribeChangeSetOutput#status_reason #StatusReason} => String
754
- # * {Types::DescribeChangeSetOutput#notification_arns #NotificationARNs} => Array&lt;String&gt;
755
- # * {Types::DescribeChangeSetOutput#capabilities #Capabilities} => Array&lt;String&gt;
756
- # * {Types::DescribeChangeSetOutput#tags #Tags} => Array&lt;Types::Tag&gt;
757
- # * {Types::DescribeChangeSetOutput#changes #Changes} => Array&lt;Types::Change&gt;
758
- # * {Types::DescribeChangeSetOutput#next_token #NextToken} => String
759
- #
760
- # @example Request syntax with placeholder values
761
- # resp = client.describe_change_set({
762
- # change_set_name: "ChangeSetNameOrId", # required
763
- # stack_name: "StackNameOrId",
764
- # next_token: "NextToken",
765
- # })
766
- #
767
- # @example Response structure
768
- # resp.change_set_name #=> String
769
- # resp.change_set_id #=> String
770
- # resp.stack_id #=> String
771
- # resp.stack_name #=> String
772
- # resp.description #=> String
773
- # resp.parameters #=> Array
774
- # resp.parameters[0].parameter_key #=> String
775
- # resp.parameters[0].parameter_value #=> String
776
- # resp.parameters[0].use_previous_value #=> Boolean
777
- # resp.creation_time #=> Time
778
- # resp.execution_status #=> String, one of "UNAVAILABLE", "AVAILABLE", "EXECUTE_IN_PROGRESS", "EXECUTE_COMPLETE", "EXECUTE_FAILED", "OBSOLETE"
779
- # resp.status #=> String, one of "CREATE_PENDING", "CREATE_IN_PROGRESS", "CREATE_COMPLETE", "DELETE_COMPLETE", "FAILED"
780
- # resp.status_reason #=> String
781
- # resp.notification_arns #=> Array
782
- # resp.notification_arns[0] #=> String
783
- # resp.capabilities #=> Array
784
- # resp.capabilities[0] #=> String, one of "CAPABILITY_IAM", "CAPABILITY_NAMED_IAM"
785
- # resp.tags #=> Array
786
- # resp.tags[0].key #=> String
787
- # resp.tags[0].value #=> String
788
- # resp.changes #=> Array
789
- # resp.changes[0].type #=> String, one of "Resource"
790
- # resp.changes[0].resource_change.action #=> String, one of "Add", "Modify", "Remove"
791
- # resp.changes[0].resource_change.logical_resource_id #=> String
792
- # resp.changes[0].resource_change.physical_resource_id #=> String
793
- # resp.changes[0].resource_change.resource_type #=> String
794
- # resp.changes[0].resource_change.replacement #=> String, one of "True", "False", "Conditional"
795
- # resp.changes[0].resource_change.scope #=> Array
796
- # resp.changes[0].resource_change.scope[0] #=> String, one of "Properties", "Metadata", "CreationPolicy", "UpdatePolicy", "DeletionPolicy", "Tags"
797
- # resp.changes[0].resource_change.details #=> Array
798
- # resp.changes[0].resource_change.details[0].target.attribute #=> String, one of "Properties", "Metadata", "CreationPolicy", "UpdatePolicy", "DeletionPolicy", "Tags"
799
- # resp.changes[0].resource_change.details[0].target.name #=> String
800
- # resp.changes[0].resource_change.details[0].target.requires_recreation #=> String, one of "Never", "Conditionally", "Always"
801
- # resp.changes[0].resource_change.details[0].evaluation #=> String, one of "Static", "Dynamic"
802
- # resp.changes[0].resource_change.details[0].change_source #=> String, one of "ResourceReference", "ParameterReference", "ResourceAttribute", "DirectModification", "Automatic"
803
- # resp.changes[0].resource_change.details[0].causing_entity #=> String
804
- # resp.next_token #=> String
805
- # @overload describe_change_set(params = {})
806
- # @param [Hash] params ({})
807
- def describe_change_set(params = {}, options = {})
808
- req = build_request(:describe_change_set, params)
809
- req.send_request(options)
810
- end
782
+ # Retrieves your account's AWS CloudFormation limits, such as the
783
+ # maximum number of stacks that you can create in your account.
784
+ #
785
+ # @option params [String] :next_token
786
+ # A string that identifies the next page of limits that you want to
787
+ # retrieve.
788
+ #
789
+ # @return [Types::DescribeAccountLimitsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
790
+ #
791
+ # * {Types::DescribeAccountLimitsOutput#account_limits #account_limits} => Array&lt;Types::AccountLimit&gt;
792
+ # * {Types::DescribeAccountLimitsOutput#next_token #next_token} => String
793
+ #
794
+ # @example Request syntax with placeholder values
795
+ #
796
+ # resp = client.describe_account_limits({
797
+ # next_token: "NextToken",
798
+ # })
799
+ #
800
+ # @example Response structure
801
+ #
802
+ # resp.account_limits #=> Array
803
+ # resp.account_limits[0].name #=> String
804
+ # resp.account_limits[0].value #=> Integer
805
+ # resp.next_token #=> String
806
+ #
807
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeAccountLimits AWS API Documentation
808
+ #
809
+ # @overload describe_account_limits(params = {})
810
+ # @param [Hash] params ({})
811
+ def describe_account_limits(params = {}, options = {})
812
+ req = build_request(:describe_account_limits, params)
813
+ req.send_request(options)
814
+ end
811
815
 
812
- # Returns all stack related events for a specified stack in reverse
813
- # chronological order. For more information about a stack's event
814
- # history, go to [Stacks][1] in the AWS CloudFormation User Guide.
815
- #
816
- # <note markdown="1"> You can list events for stacks that have failed to create or have been
817
- # deleted by specifying the unique stack identifier (stack ID).
818
- #
819
- # </note>
820
- #
821
- #
822
- #
823
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/concept-stack.html
824
- # @option params [String] :stack_name
825
- # The name or the unique stack ID that is associated with the stack,
826
- # which are not always interchangeable:
827
- #
828
- # * Running stacks: You can specify either the stack's name or its
829
- # unique stack ID.
830
- #
831
- # * Deleted stacks: You must specify the unique stack ID.
832
- #
833
- # Default: There is no default value.
834
- # @option params [String] :next_token
835
- # A string that identifies the next page of events that you want to
836
- # retrieve.
837
- # @return [Types::DescribeStackEventsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
838
- #
839
- # * {Types::DescribeStackEventsOutput#stack_events #StackEvents} => Array&lt;Types::StackEvent&gt;
840
- # * {Types::DescribeStackEventsOutput#next_token #NextToken} => String
841
- #
842
- # @example Request syntax with placeholder values
843
- # resp = client.describe_stack_events({
844
- # stack_name: "StackName",
845
- # next_token: "NextToken",
846
- # })
847
- #
848
- # @example Response structure
849
- # resp.stack_events #=> Array
850
- # resp.stack_events[0].stack_id #=> String
851
- # resp.stack_events[0].event_id #=> String
852
- # resp.stack_events[0].stack_name #=> String
853
- # resp.stack_events[0].logical_resource_id #=> String
854
- # resp.stack_events[0].physical_resource_id #=> String
855
- # resp.stack_events[0].resource_type #=> String
856
- # resp.stack_events[0].timestamp #=> Time
857
- # resp.stack_events[0].resource_status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATE_COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "DELETE_SKIPPED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "UPDATE_COMPLETE"
858
- # resp.stack_events[0].resource_status_reason #=> String
859
- # resp.stack_events[0].resource_properties #=> String
860
- # resp.next_token #=> String
861
- # @overload describe_stack_events(params = {})
862
- # @param [Hash] params ({})
863
- def describe_stack_events(params = {}, options = {})
864
- req = build_request(:describe_stack_events, params)
865
- req.send_request(options)
866
- end
816
+ # Returns the inputs for the change set and a list of changes that AWS
817
+ # CloudFormation will make if you execute the change set. For more
818
+ # information, see [Updating Stacks Using Change Sets][1] in the AWS
819
+ # CloudFormation User Guide.
820
+ #
821
+ #
822
+ #
823
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets.html
824
+ #
825
+ # @option params [required, String] :change_set_name
826
+ # The name or Amazon Resource Name (ARN) of the change set that you want
827
+ # to describe.
828
+ #
829
+ # @option params [String] :stack_name
830
+ # If you specified the name of a change set, specify the stack name or
831
+ # ID (ARN) of the change set you want to describe.
832
+ #
833
+ # @option params [String] :next_token
834
+ # A string (provided by the DescribeChangeSet response output) that
835
+ # identifies the next page of information that you want to retrieve.
836
+ #
837
+ # @return [Types::DescribeChangeSetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
838
+ #
839
+ # * {Types::DescribeChangeSetOutput#change_set_name #change_set_name} => String
840
+ # * {Types::DescribeChangeSetOutput#change_set_id #change_set_id} => String
841
+ # * {Types::DescribeChangeSetOutput#stack_id #stack_id} => String
842
+ # * {Types::DescribeChangeSetOutput#stack_name #stack_name} => String
843
+ # * {Types::DescribeChangeSetOutput#description #description} => String
844
+ # * {Types::DescribeChangeSetOutput#parameters #parameters} => Array&lt;Types::Parameter&gt;
845
+ # * {Types::DescribeChangeSetOutput#creation_time #creation_time} => Time
846
+ # * {Types::DescribeChangeSetOutput#execution_status #execution_status} => String
847
+ # * {Types::DescribeChangeSetOutput#status #status} => String
848
+ # * {Types::DescribeChangeSetOutput#status_reason #status_reason} => String
849
+ # * {Types::DescribeChangeSetOutput#notification_arns #notification_arns} => Array&lt;String&gt;
850
+ # * {Types::DescribeChangeSetOutput#capabilities #capabilities} => Array&lt;String&gt;
851
+ # * {Types::DescribeChangeSetOutput#tags #tags} => Array&lt;Types::Tag&gt;
852
+ # * {Types::DescribeChangeSetOutput#changes #changes} => Array&lt;Types::Change&gt;
853
+ # * {Types::DescribeChangeSetOutput#next_token #next_token} => String
854
+ #
855
+ # @example Request syntax with placeholder values
856
+ #
857
+ # resp = client.describe_change_set({
858
+ # change_set_name: "ChangeSetNameOrId", # required
859
+ # stack_name: "StackNameOrId",
860
+ # next_token: "NextToken",
861
+ # })
862
+ #
863
+ # @example Response structure
864
+ #
865
+ # resp.change_set_name #=> String
866
+ # resp.change_set_id #=> String
867
+ # resp.stack_id #=> String
868
+ # resp.stack_name #=> String
869
+ # resp.description #=> String
870
+ # resp.parameters #=> Array
871
+ # resp.parameters[0].parameter_key #=> String
872
+ # resp.parameters[0].parameter_value #=> String
873
+ # resp.parameters[0].use_previous_value #=> Boolean
874
+ # resp.creation_time #=> Time
875
+ # resp.execution_status #=> String, one of "UNAVAILABLE", "AVAILABLE", "EXECUTE_IN_PROGRESS", "EXECUTE_COMPLETE", "EXECUTE_FAILED", "OBSOLETE"
876
+ # resp.status #=> String, one of "CREATE_PENDING", "CREATE_IN_PROGRESS", "CREATE_COMPLETE", "DELETE_COMPLETE", "FAILED"
877
+ # resp.status_reason #=> String
878
+ # resp.notification_arns #=> Array
879
+ # resp.notification_arns[0] #=> String
880
+ # resp.capabilities #=> Array
881
+ # resp.capabilities[0] #=> String, one of "CAPABILITY_IAM", "CAPABILITY_NAMED_IAM"
882
+ # resp.tags #=> Array
883
+ # resp.tags[0].key #=> String
884
+ # resp.tags[0].value #=> String
885
+ # resp.changes #=> Array
886
+ # resp.changes[0].type #=> String, one of "Resource"
887
+ # resp.changes[0].resource_change.action #=> String, one of "Add", "Modify", "Remove"
888
+ # resp.changes[0].resource_change.logical_resource_id #=> String
889
+ # resp.changes[0].resource_change.physical_resource_id #=> String
890
+ # resp.changes[0].resource_change.resource_type #=> String
891
+ # resp.changes[0].resource_change.replacement #=> String, one of "True", "False", "Conditional"
892
+ # resp.changes[0].resource_change.scope #=> Array
893
+ # resp.changes[0].resource_change.scope[0] #=> String, one of "Properties", "Metadata", "CreationPolicy", "UpdatePolicy", "DeletionPolicy", "Tags"
894
+ # resp.changes[0].resource_change.details #=> Array
895
+ # resp.changes[0].resource_change.details[0].target.attribute #=> String, one of "Properties", "Metadata", "CreationPolicy", "UpdatePolicy", "DeletionPolicy", "Tags"
896
+ # resp.changes[0].resource_change.details[0].target.name #=> String
897
+ # resp.changes[0].resource_change.details[0].target.requires_recreation #=> String, one of "Never", "Conditionally", "Always"
898
+ # resp.changes[0].resource_change.details[0].evaluation #=> String, one of "Static", "Dynamic"
899
+ # resp.changes[0].resource_change.details[0].change_source #=> String, one of "ResourceReference", "ParameterReference", "ResourceAttribute", "DirectModification", "Automatic"
900
+ # resp.changes[0].resource_change.details[0].causing_entity #=> String
901
+ # resp.next_token #=> String
902
+ #
903
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeChangeSet AWS API Documentation
904
+ #
905
+ # @overload describe_change_set(params = {})
906
+ # @param [Hash] params ({})
907
+ def describe_change_set(params = {}, options = {})
908
+ req = build_request(:describe_change_set, params)
909
+ req.send_request(options)
910
+ end
867
911
 
868
- # Returns a description of the specified resource in the specified
869
- # stack.
870
- #
871
- # For deleted stacks, DescribeStackResource returns resource information
872
- # for up to 90 days after the stack has been deleted.
873
- # @option params [required, String] :stack_name
874
- # The name or the unique stack ID that is associated with the stack,
875
- # which are not always interchangeable:
876
- #
877
- # * Running stacks: You can specify either the stack's name or its
878
- # unique stack ID.
879
- #
880
- # * Deleted stacks: You must specify the unique stack ID.
881
- #
882
- # Default: There is no default value.
883
- # @option params [required, String] :logical_resource_id
884
- # The logical name of the resource as specified in the template.
885
- #
886
- # Default: There is no default value.
887
- # @return [Types::DescribeStackResourceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
888
- #
889
- # * {Types::DescribeStackResourceOutput#stack_resource_detail #StackResourceDetail} => Types::StackResourceDetail
890
- #
891
- # @example Request syntax with placeholder values
892
- # resp = client.describe_stack_resource({
893
- # stack_name: "StackName", # required
894
- # logical_resource_id: "LogicalResourceId", # required
895
- # })
896
- #
897
- # @example Response structure
898
- # resp.stack_resource_detail.stack_name #=> String
899
- # resp.stack_resource_detail.stack_id #=> String
900
- # resp.stack_resource_detail.logical_resource_id #=> String
901
- # resp.stack_resource_detail.physical_resource_id #=> String
902
- # resp.stack_resource_detail.resource_type #=> String
903
- # resp.stack_resource_detail.last_updated_timestamp #=> Time
904
- # resp.stack_resource_detail.resource_status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATE_COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "DELETE_SKIPPED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "UPDATE_COMPLETE"
905
- # resp.stack_resource_detail.resource_status_reason #=> String
906
- # resp.stack_resource_detail.description #=> String
907
- # resp.stack_resource_detail.metadata #=> String
908
- # @overload describe_stack_resource(params = {})
909
- # @param [Hash] params ({})
910
- def describe_stack_resource(params = {}, options = {})
911
- req = build_request(:describe_stack_resource, params)
912
- req.send_request(options)
913
- end
912
+ # Returns all stack related events for a specified stack in reverse
913
+ # chronological order. For more information about a stack's event
914
+ # history, go to [Stacks][1] in the AWS CloudFormation User Guide.
915
+ #
916
+ # <note markdown="1"> You can list events for stacks that have failed to create or have been
917
+ # deleted by specifying the unique stack identifier (stack ID).
918
+ #
919
+ # </note>
920
+ #
921
+ #
922
+ #
923
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/concept-stack.html
924
+ #
925
+ # @option params [String] :stack_name
926
+ # The name or the unique stack ID that is associated with the stack,
927
+ # which are not always interchangeable:
928
+ #
929
+ # * Running stacks: You can specify either the stack's name or its
930
+ # unique stack ID.
931
+ #
932
+ # * Deleted stacks: You must specify the unique stack ID.
933
+ #
934
+ # Default: There is no default value.
935
+ #
936
+ # @option params [String] :next_token
937
+ # A string that identifies the next page of events that you want to
938
+ # retrieve.
939
+ #
940
+ # @return [Types::DescribeStackEventsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
941
+ #
942
+ # * {Types::DescribeStackEventsOutput#stack_events #stack_events} => Array&lt;Types::StackEvent&gt;
943
+ # * {Types::DescribeStackEventsOutput#next_token #next_token} => String
944
+ #
945
+ # @example Request syntax with placeholder values
946
+ #
947
+ # resp = client.describe_stack_events({
948
+ # stack_name: "StackName",
949
+ # next_token: "NextToken",
950
+ # })
951
+ #
952
+ # @example Response structure
953
+ #
954
+ # resp.stack_events #=> Array
955
+ # resp.stack_events[0].stack_id #=> String
956
+ # resp.stack_events[0].event_id #=> String
957
+ # resp.stack_events[0].stack_name #=> String
958
+ # resp.stack_events[0].logical_resource_id #=> String
959
+ # resp.stack_events[0].physical_resource_id #=> String
960
+ # resp.stack_events[0].resource_type #=> String
961
+ # resp.stack_events[0].timestamp #=> Time
962
+ # resp.stack_events[0].resource_status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATE_COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "DELETE_SKIPPED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "UPDATE_COMPLETE"
963
+ # resp.stack_events[0].resource_status_reason #=> String
964
+ # resp.stack_events[0].resource_properties #=> String
965
+ # resp.next_token #=> String
966
+ #
967
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackEvents AWS API Documentation
968
+ #
969
+ # @overload describe_stack_events(params = {})
970
+ # @param [Hash] params ({})
971
+ def describe_stack_events(params = {}, options = {})
972
+ req = build_request(:describe_stack_events, params)
973
+ req.send_request(options)
974
+ end
914
975
 
915
- # Returns AWS resource descriptions for running and deleted stacks. If
916
- # `StackName` is specified, all the associated resources that are part
917
- # of the stack are returned. If `PhysicalResourceId` is specified, the
918
- # associated resources of the stack that the resource belongs to are
919
- # returned.
920
- #
921
- # <note markdown="1"> Only the first 100 resources will be returned. If your stack has more
922
- # resources than this, you should use `ListStackResources` instead.
923
- #
924
- # </note>
925
- #
926
- # For deleted stacks, `DescribeStackResources` returns resource
927
- # information for up to 90 days after the stack has been deleted.
928
- #
929
- # You must specify either `StackName` or `PhysicalResourceId`, but not
930
- # both. In addition, you can specify `LogicalResourceId` to filter the
931
- # returned result. For more information about resources, the
932
- # `LogicalResourceId` and `PhysicalResourceId`, go to the [AWS
933
- # CloudFormation User Guide][1].
934
- #
935
- # <note markdown="1"> A `ValidationError` is returned if you specify both `StackName` and
936
- # `PhysicalResourceId` in the same request.
937
- #
938
- # </note>
939
- #
940
- #
941
- #
942
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/
943
- # @option params [String] :stack_name
944
- # The name or the unique stack ID that is associated with the stack,
945
- # which are not always interchangeable:
946
- #
947
- # * Running stacks: You can specify either the stack's name or its
948
- # unique stack ID.
949
- #
950
- # * Deleted stacks: You must specify the unique stack ID.
951
- #
952
- # Default: There is no default value.
953
- #
954
- # Required: Conditional. If you do not specify `StackName`, you must
955
- # specify `PhysicalResourceId`.
956
- # @option params [String] :logical_resource_id
957
- # The logical name of the resource as specified in the template.
958
- #
959
- # Default: There is no default value.
960
- # @option params [String] :physical_resource_id
961
- # The name or unique identifier that corresponds to a physical instance
962
- # ID of a resource supported by AWS CloudFormation.
963
- #
964
- # For example, for an Amazon Elastic Compute Cloud (EC2) instance,
965
- # `PhysicalResourceId` corresponds to the `InstanceId`. You can pass the
966
- # EC2 `InstanceId` to `DescribeStackResources` to find which stack the
967
- # instance belongs to and what other resources are part of the stack.
968
- #
969
- # Required: Conditional. If you do not specify `PhysicalResourceId`, you
970
- # must specify `StackName`.
971
- #
972
- # Default: There is no default value.
973
- # @return [Types::DescribeStackResourcesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
974
- #
975
- # * {Types::DescribeStackResourcesOutput#stack_resources #StackResources} => Array&lt;Types::StackResource&gt;
976
- #
977
- # @example Request syntax with placeholder values
978
- # resp = client.describe_stack_resources({
979
- # stack_name: "StackName",
980
- # logical_resource_id: "LogicalResourceId",
981
- # physical_resource_id: "PhysicalResourceId",
982
- # })
983
- #
984
- # @example Response structure
985
- # resp.stack_resources #=> Array
986
- # resp.stack_resources[0].stack_name #=> String
987
- # resp.stack_resources[0].stack_id #=> String
988
- # resp.stack_resources[0].logical_resource_id #=> String
989
- # resp.stack_resources[0].physical_resource_id #=> String
990
- # resp.stack_resources[0].resource_type #=> String
991
- # resp.stack_resources[0].timestamp #=> Time
992
- # resp.stack_resources[0].resource_status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATE_COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "DELETE_SKIPPED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "UPDATE_COMPLETE"
993
- # resp.stack_resources[0].resource_status_reason #=> String
994
- # resp.stack_resources[0].description #=> String
995
- # @overload describe_stack_resources(params = {})
996
- # @param [Hash] params ({})
997
- def describe_stack_resources(params = {}, options = {})
998
- req = build_request(:describe_stack_resources, params)
999
- req.send_request(options)
1000
- end
976
+ # Returns a description of the specified resource in the specified
977
+ # stack.
978
+ #
979
+ # For deleted stacks, DescribeStackResource returns resource information
980
+ # for up to 90 days after the stack has been deleted.
981
+ #
982
+ # @option params [required, String] :stack_name
983
+ # The name or the unique stack ID that is associated with the stack,
984
+ # which are not always interchangeable:
985
+ #
986
+ # * Running stacks: You can specify either the stack's name or its
987
+ # unique stack ID.
988
+ #
989
+ # * Deleted stacks: You must specify the unique stack ID.
990
+ #
991
+ # Default: There is no default value.
992
+ #
993
+ # @option params [required, String] :logical_resource_id
994
+ # The logical name of the resource as specified in the template.
995
+ #
996
+ # Default: There is no default value.
997
+ #
998
+ # @return [Types::DescribeStackResourceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
999
+ #
1000
+ # * {Types::DescribeStackResourceOutput#stack_resource_detail #stack_resource_detail} => Types::StackResourceDetail
1001
+ #
1002
+ # @example Request syntax with placeholder values
1003
+ #
1004
+ # resp = client.describe_stack_resource({
1005
+ # stack_name: "StackName", # required
1006
+ # logical_resource_id: "LogicalResourceId", # required
1007
+ # })
1008
+ #
1009
+ # @example Response structure
1010
+ #
1011
+ # resp.stack_resource_detail.stack_name #=> String
1012
+ # resp.stack_resource_detail.stack_id #=> String
1013
+ # resp.stack_resource_detail.logical_resource_id #=> String
1014
+ # resp.stack_resource_detail.physical_resource_id #=> String
1015
+ # resp.stack_resource_detail.resource_type #=> String
1016
+ # resp.stack_resource_detail.last_updated_timestamp #=> Time
1017
+ # resp.stack_resource_detail.resource_status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATE_COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "DELETE_SKIPPED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "UPDATE_COMPLETE"
1018
+ # resp.stack_resource_detail.resource_status_reason #=> String
1019
+ # resp.stack_resource_detail.description #=> String
1020
+ # resp.stack_resource_detail.metadata #=> String
1021
+ #
1022
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackResource AWS API Documentation
1023
+ #
1024
+ # @overload describe_stack_resource(params = {})
1025
+ # @param [Hash] params ({})
1026
+ def describe_stack_resource(params = {}, options = {})
1027
+ req = build_request(:describe_stack_resource, params)
1028
+ req.send_request(options)
1029
+ end
1001
1030
 
1002
- # Returns the description for the specified stack; if no stack name was
1003
- # specified, then it returns the description for all the stacks created.
1004
- #
1005
- # <note markdown="1"> If the stack does not exist, an `AmazonCloudFormationException` is
1006
- # returned.
1007
- #
1008
- # </note>
1009
- # @option params [String] :stack_name
1010
- # The name or the unique stack ID that is associated with the stack,
1011
- # which are not always interchangeable:
1012
- #
1013
- # * Running stacks: You can specify either the stack's name or its
1014
- # unique stack ID.
1015
- #
1016
- # * Deleted stacks: You must specify the unique stack ID.
1017
- #
1018
- # Default: There is no default value.
1019
- # @option params [String] :next_token
1020
- # A string that identifies the next page of stacks that you want to
1021
- # retrieve.
1022
- # @return [Types::DescribeStacksOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1023
- #
1024
- # * {Types::DescribeStacksOutput#stacks #Stacks} => Array&lt;Types::Stack&gt;
1025
- # * {Types::DescribeStacksOutput#next_token #NextToken} => String
1026
- #
1027
- # @example Request syntax with placeholder values
1028
- # resp = client.describe_stacks({
1029
- # stack_name: "StackName",
1030
- # next_token: "NextToken",
1031
- # })
1032
- #
1033
- # @example Response structure
1034
- # resp.stacks #=> Array
1035
- # resp.stacks[0].stack_id #=> String
1036
- # resp.stacks[0].stack_name #=> String
1037
- # resp.stacks[0].change_set_id #=> String
1038
- # resp.stacks[0].description #=> String
1039
- # resp.stacks[0].parameters #=> Array
1040
- # resp.stacks[0].parameters[0].parameter_key #=> String
1041
- # resp.stacks[0].parameters[0].parameter_value #=> String
1042
- # resp.stacks[0].parameters[0].use_previous_value #=> Boolean
1043
- # resp.stacks[0].creation_time #=> Time
1044
- # resp.stacks[0].last_updated_time #=> Time
1045
- # resp.stacks[0].stack_status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATE_COMPLETE", "ROLLBACK_IN_PROGRESS", "ROLLBACK_FAILED", "ROLLBACK_COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "UPDATE_IN_PROGRESS", "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS", "UPDATE_COMPLETE", "UPDATE_ROLLBACK_IN_PROGRESS", "UPDATE_ROLLBACK_FAILED", "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS", "UPDATE_ROLLBACK_COMPLETE", "REVIEW_IN_PROGRESS"
1046
- # resp.stacks[0].stack_status_reason #=> String
1047
- # resp.stacks[0].disable_rollback #=> Boolean
1048
- # resp.stacks[0].notification_arns #=> Array
1049
- # resp.stacks[0].notification_arns[0] #=> String
1050
- # resp.stacks[0].timeout_in_minutes #=> Integer
1051
- # resp.stacks[0].capabilities #=> Array
1052
- # resp.stacks[0].capabilities[0] #=> String, one of "CAPABILITY_IAM", "CAPABILITY_NAMED_IAM"
1053
- # resp.stacks[0].outputs #=> Array
1054
- # resp.stacks[0].outputs[0].output_key #=> String
1055
- # resp.stacks[0].outputs[0].output_value #=> String
1056
- # resp.stacks[0].outputs[0].description #=> String
1057
- # resp.stacks[0].role_arn #=> String
1058
- # resp.stacks[0].tags #=> Array
1059
- # resp.stacks[0].tags[0].key #=> String
1060
- # resp.stacks[0].tags[0].value #=> String
1061
- # resp.next_token #=> String
1062
- # @overload describe_stacks(params = {})
1063
- # @param [Hash] params ({})
1064
- def describe_stacks(params = {}, options = {})
1065
- req = build_request(:describe_stacks, params)
1066
- req.send_request(options)
1067
- end
1031
+ # Returns AWS resource descriptions for running and deleted stacks. If
1032
+ # `StackName` is specified, all the associated resources that are part
1033
+ # of the stack are returned. If `PhysicalResourceId` is specified, the
1034
+ # associated resources of the stack that the resource belongs to are
1035
+ # returned.
1036
+ #
1037
+ # <note markdown="1"> Only the first 100 resources will be returned. If your stack has more
1038
+ # resources than this, you should use `ListStackResources` instead.
1039
+ #
1040
+ # </note>
1041
+ #
1042
+ # For deleted stacks, `DescribeStackResources` returns resource
1043
+ # information for up to 90 days after the stack has been deleted.
1044
+ #
1045
+ # You must specify either `StackName` or `PhysicalResourceId`, but not
1046
+ # both. In addition, you can specify `LogicalResourceId` to filter the
1047
+ # returned result. For more information about resources, the
1048
+ # `LogicalResourceId` and `PhysicalResourceId`, go to the [AWS
1049
+ # CloudFormation User Guide][1].
1050
+ #
1051
+ # <note markdown="1"> A `ValidationError` is returned if you specify both `StackName` and
1052
+ # `PhysicalResourceId` in the same request.
1053
+ #
1054
+ # </note>
1055
+ #
1056
+ #
1057
+ #
1058
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/
1059
+ #
1060
+ # @option params [String] :stack_name
1061
+ # The name or the unique stack ID that is associated with the stack,
1062
+ # which are not always interchangeable:
1063
+ #
1064
+ # * Running stacks: You can specify either the stack's name or its
1065
+ # unique stack ID.
1066
+ #
1067
+ # * Deleted stacks: You must specify the unique stack ID.
1068
+ #
1069
+ # Default: There is no default value.
1070
+ #
1071
+ # Required: Conditional. If you do not specify `StackName`, you must
1072
+ # specify `PhysicalResourceId`.
1073
+ #
1074
+ # @option params [String] :logical_resource_id
1075
+ # The logical name of the resource as specified in the template.
1076
+ #
1077
+ # Default: There is no default value.
1078
+ #
1079
+ # @option params [String] :physical_resource_id
1080
+ # The name or unique identifier that corresponds to a physical instance
1081
+ # ID of a resource supported by AWS CloudFormation.
1082
+ #
1083
+ # For example, for an Amazon Elastic Compute Cloud (EC2) instance,
1084
+ # `PhysicalResourceId` corresponds to the `InstanceId`. You can pass the
1085
+ # EC2 `InstanceId` to `DescribeStackResources` to find which stack the
1086
+ # instance belongs to and what other resources are part of the stack.
1087
+ #
1088
+ # Required: Conditional. If you do not specify `PhysicalResourceId`, you
1089
+ # must specify `StackName`.
1090
+ #
1091
+ # Default: There is no default value.
1092
+ #
1093
+ # @return [Types::DescribeStackResourcesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1094
+ #
1095
+ # * {Types::DescribeStackResourcesOutput#stack_resources #stack_resources} => Array&lt;Types::StackResource&gt;
1096
+ #
1097
+ # @example Request syntax with placeholder values
1098
+ #
1099
+ # resp = client.describe_stack_resources({
1100
+ # stack_name: "StackName",
1101
+ # logical_resource_id: "LogicalResourceId",
1102
+ # physical_resource_id: "PhysicalResourceId",
1103
+ # })
1104
+ #
1105
+ # @example Response structure
1106
+ #
1107
+ # resp.stack_resources #=> Array
1108
+ # resp.stack_resources[0].stack_name #=> String
1109
+ # resp.stack_resources[0].stack_id #=> String
1110
+ # resp.stack_resources[0].logical_resource_id #=> String
1111
+ # resp.stack_resources[0].physical_resource_id #=> String
1112
+ # resp.stack_resources[0].resource_type #=> String
1113
+ # resp.stack_resources[0].timestamp #=> Time
1114
+ # resp.stack_resources[0].resource_status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "CREATE_COMPLETE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "DELETE_SKIPPED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED", "UPDATE_COMPLETE"
1115
+ # resp.stack_resources[0].resource_status_reason #=> String
1116
+ # resp.stack_resources[0].description #=> String
1117
+ #
1118
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackResources AWS API Documentation
1119
+ #
1120
+ # @overload describe_stack_resources(params = {})
1121
+ # @param [Hash] params ({})
1122
+ def describe_stack_resources(params = {}, options = {})
1123
+ req = build_request(:describe_stack_resources, params)
1124
+ req.send_request(options)
1125
+ end
1068
1126
 
1069
- # Returns the estimated monthly cost of a template. The return value is
1070
- # an AWS Simple Monthly Calculator URL with a query string that
1071
- # describes the resources required to run the template.
1072
- # @option params [String] :template_body
1073
- # Structure containing the template body with a minimum length of 1 byte
1074
- # and a maximum length of 51,200 bytes. (For more information, go to
1075
- # [Template Anatomy][1] in the AWS CloudFormation User Guide.)
1076
- #
1077
- # Conditional: You must pass `TemplateBody` or `TemplateURL`. If both
1078
- # are passed, only `TemplateBody` is used.
1079
- #
1080
- #
1081
- #
1082
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
1083
- # @option params [String] :template_url
1084
- # Location of file containing the template body. The URL must point to a
1085
- # template that is located in an Amazon S3 bucket. For more information,
1086
- # go to [Template Anatomy][1] in the AWS CloudFormation User Guide.
1087
- #
1088
- # Conditional: You must pass `TemplateURL` or `TemplateBody`. If both
1089
- # are passed, only `TemplateBody` is used.
1090
- #
1091
- #
1092
- #
1093
- # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
1094
- # @option params [Array<Types::Parameter>] :parameters
1095
- # A list of `Parameter` structures that specify input parameters.
1096
- # @return [Types::EstimateTemplateCostOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1097
- #
1098
- # * {Types::EstimateTemplateCostOutput#url #Url} => String
1099
- #
1100
- # @example Request syntax with placeholder values
1101
- # resp = client.estimate_template_cost({
1102
- # template_body: "TemplateBody",
1103
- # template_url: "TemplateURL",
1104
- # parameters: [
1105
- # {
1106
- # parameter_key: "ParameterKey",
1107
- # parameter_value: "ParameterValue",
1108
- # use_previous_value: false,
1109
- # },
1110
- # ],
1111
- # })
1112
- #
1113
- # @example Response structure
1114
- # resp.url #=> String
1115
- # @overload estimate_template_cost(params = {})
1116
- # @param [Hash] params ({})
1117
- def estimate_template_cost(params = {}, options = {})
1118
- req = build_request(:estimate_template_cost, params)
1119
- req.send_request(options)
1120
- end
1127
+ # Returns the description for the specified stack; if no stack name was
1128
+ # specified, then it returns the description for all the stacks created.
1129
+ #
1130
+ # <note markdown="1"> If the stack does not exist, an `AmazonCloudFormationException` is
1131
+ # returned.
1132
+ #
1133
+ # </note>
1134
+ #
1135
+ # @option params [String] :stack_name
1136
+ # The name or the unique stack ID that is associated with the stack,
1137
+ # which are not always interchangeable:
1138
+ #
1139
+ # * Running stacks: You can specify either the stack's name or its
1140
+ # unique stack ID.
1141
+ #
1142
+ # * Deleted stacks: You must specify the unique stack ID.
1143
+ #
1144
+ # Default: There is no default value.
1145
+ #
1146
+ # @option params [String] :next_token
1147
+ # A string that identifies the next page of stacks that you want to
1148
+ # retrieve.
1149
+ #
1150
+ # @return [Types::DescribeStacksOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1151
+ #
1152
+ # * {Types::DescribeStacksOutput#stacks #stacks} => Array&lt;Types::Stack&gt;
1153
+ # * {Types::DescribeStacksOutput#next_token #next_token} => String
1154