aws-sdk-cloudformation 1.0.0.rc9 → 1.0.0.rc10

Sign up to get free protection for your applications and to get access to all the features.
@@ -93,9 +93,19 @@ module Aws::CloudFormation
93
93
 
94
94
  # The token passed to the operation that generated this event.
95
95
  #
96
- # For example, if you execute a `CreateStack` operation with the token
96
+ # All events triggered by a given stack operation are assigned the same
97
+ # client request token, which you can use to track operations. For
98
+ # example, if you execute a `CreateStack` operation with the token
97
99
  # `token1`, then all the `StackEvents` generated by that operation will
98
100
  # have `ClientRequestToken` set as `token1`.
101
+ #
102
+ # In the console, stack operations display the client request token on
103
+ # the Events tab. Stack operations that are initiated from the console
104
+ # use the token format *Console-StackOperation-ID*, which helps you
105
+ # easily identify the stack operation . For example, if you create a
106
+ # stack using the console, each stack event would be assigned the same
107
+ # token in the following format:
108
+ # `Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002`.
99
109
  # @return [String]
100
110
  def client_request_token
101
111
  data.client_request_token
@@ -45,8 +45,8 @@ module Aws::CloudFormation
45
45
  # stack_policy_url: "StackPolicyURL",
46
46
  # tags: [
47
47
  # {
48
- # key: "TagKey",
49
- # value: "TagValue",
48
+ # key: "TagKey", # required
49
+ # value: "TagValue", # required
50
50
  # },
51
51
  # ],
52
52
  # client_request_token: "ClientRequestToken",
@@ -197,13 +197,27 @@ module Aws::CloudFormation
197
197
  # @option options [Array<Types::Tag>] :tags
198
198
  # Key-value pairs to associate with this stack. AWS CloudFormation also
199
199
  # propagates these tags to the resources created in the stack. A maximum
200
- # number of 10 tags can be specified.
200
+ # number of 50 tags can be specified.
201
201
  # @option options [String] :client_request_token
202
202
  # A unique identifier for this `CreateStack` request. Specify this token
203
203
  # if you plan to retry requests so that AWS CloudFormation knows that
204
204
  # you're not attempting to create a stack with the same name. You might
205
205
  # retry `CreateStack` requests to ensure that AWS CloudFormation
206
206
  # successfully received them.
207
+ #
208
+ # All events triggered by a given stack operation are assigned the same
209
+ # client request token, which you can use to track operations. For
210
+ # example, if you execute a `CreateStack` operation with the token
211
+ # `token1`, then all the `StackEvents` generated by that operation will
212
+ # have `ClientRequestToken` set as `token1`.
213
+ #
214
+ # In the console, stack operations display the client request token on
215
+ # the Events tab. Stack operations that are initiated from the console
216
+ # use the token format *Console-StackOperation-ID*, which helps you
217
+ # easily identify the stack operation . For example, if you create a
218
+ # stack using the console, each stack event would be assigned the same
219
+ # token in the following format:
220
+ # `Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002`.
207
221
  # @return [Stack]
208
222
  def create_stack(options = {})
209
223
  resp = @client.create_stack(options)
@@ -239,8 +239,8 @@ module Aws::CloudFormation
239
239
  # stack_policy_url: "StackPolicyURL",
240
240
  # tags: [
241
241
  # {
242
- # key: "TagKey",
243
- # value: "TagValue",
242
+ # key: "TagKey", # required
243
+ # value: "TagValue", # required
244
244
  # },
245
245
  # ],
246
246
  # client_request_token: "ClientRequestToken",
@@ -382,13 +382,27 @@ module Aws::CloudFormation
382
382
  # @option options [Array<Types::Tag>] :tags
383
383
  # Key-value pairs to associate with this stack. AWS CloudFormation also
384
384
  # propagates these tags to the resources created in the stack. A maximum
385
- # number of 10 tags can be specified.
385
+ # number of 50 tags can be specified.
386
386
  # @option options [String] :client_request_token
387
387
  # A unique identifier for this `CreateStack` request. Specify this token
388
388
  # if you plan to retry requests so that AWS CloudFormation knows that
389
389
  # you're not attempting to create a stack with the same name. You might
390
390
  # retry `CreateStack` requests to ensure that AWS CloudFormation
391
391
  # successfully received them.
392
+ #
393
+ # All events triggered by a given stack operation are assigned the same
394
+ # client request token, which you can use to track operations. For
395
+ # example, if you execute a `CreateStack` operation with the token
396
+ # `token1`, then all the `StackEvents` generated by that operation will
397
+ # have `ClientRequestToken` set as `token1`.
398
+ #
399
+ # In the console, stack operations display the client request token on
400
+ # the Events tab. Stack operations that are initiated from the console
401
+ # use the token format *Console-StackOperation-ID*, which helps you
402
+ # easily identify the stack operation . For example, if you create a
403
+ # stack using the console, each stack event would be assigned the same
404
+ # token in the following format:
405
+ # `Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002`.
392
406
  # @return [Types::CreateStackOutput]
393
407
  def create(options = {})
394
408
  options = options.merge(stack_name: @name)
@@ -428,6 +442,20 @@ module Aws::CloudFormation
428
442
  # you're not attempting to delete a stack with the same name. You might
429
443
  # retry `DeleteStack` requests to ensure that AWS CloudFormation
430
444
  # successfully received them.
445
+ #
446
+ # All events triggered by a given stack operation are assigned the same
447
+ # client request token, which you can use to track operations. For
448
+ # example, if you execute a `CreateStack` operation with the token
449
+ # `token1`, then all the `StackEvents` generated by that operation will
450
+ # have `ClientRequestToken` set as `token1`.
451
+ #
452
+ # In the console, stack operations display the client request token on
453
+ # the Events tab. Stack operations that are initiated from the console
454
+ # use the token format *Console-StackOperation-ID*, which helps you
455
+ # easily identify the stack operation . For example, if you create a
456
+ # stack using the console, each stack event would be assigned the same
457
+ # token in the following format:
458
+ # `Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002`.
431
459
  # @return [EmptyStructure]
432
460
  def delete(options = {})
433
461
  options = options.merge(stack_name: @name)
@@ -458,8 +486,8 @@ module Aws::CloudFormation
458
486
  # notification_arns: ["NotificationARN"],
459
487
  # tags: [
460
488
  # {
461
- # key: "TagKey",
462
- # value: "TagValue",
489
+ # key: "TagKey", # required
490
+ # value: "TagValue", # required
463
491
  # },
464
492
  # ],
465
493
  # client_request_token: "ClientRequestToken",
@@ -612,7 +640,7 @@ module Aws::CloudFormation
612
640
  # @option options [Array<Types::Tag>] :tags
613
641
  # Key-value pairs to associate with this stack. AWS CloudFormation also
614
642
  # propagates these tags to supported resources in the stack. You can
615
- # specify a maximum number of 10 tags.
643
+ # specify a maximum number of 50 tags.
616
644
  #
617
645
  # If you don't specify this parameter, AWS CloudFormation doesn't
618
646
  # modify the stack's tags. If you specify an empty value, AWS
@@ -623,6 +651,20 @@ module Aws::CloudFormation
623
651
  # you're not attempting to update a stack with the same name. You might
624
652
  # retry `UpdateStack` requests to ensure that AWS CloudFormation
625
653
  # successfully received them.
654
+ #
655
+ # All events triggered by a given stack operation are assigned the same
656
+ # client request token, which you can use to track operations. For
657
+ # example, if you execute a `CreateStack` operation with the token
658
+ # `token1`, then all the `StackEvents` generated by that operation will
659
+ # have `ClientRequestToken` set as `token1`.
660
+ #
661
+ # In the console, stack operations display the client request token on
662
+ # the Events tab. Stack operations that are initiated from the console
663
+ # use the token format *Console-StackOperation-ID*, which helps you
664
+ # easily identify the stack operation . For example, if you create a
665
+ # stack using the console, each stack event would be assigned the same
666
+ # token in the following format:
667
+ # `Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002`.
626
668
  # @return [Types::UpdateStackOutput]
627
669
  def update(options = {})
628
670
  options = options.merge(stack_name: @name)
@@ -8,6 +8,48 @@
8
8
  module Aws::CloudFormation
9
9
  module Types
10
10
 
11
+ # Structure that contains the results of the account gate function AWS
12
+ # CloudFormation StackSets invokes, if present, before proceeding with
13
+ # stack set operations in an account.
14
+ #
15
+ # Account gating enables you to specify a Lamdba function for an account
16
+ # that encapsulates any requirements that must be met before AWS
17
+ # CloudFormation StackSets proceeds with stack set operations in that
18
+ # account. CloudFormation invokes the function each time stack set
19
+ # operations are initiated for that account, and only proceeds if the
20
+ # function returns a success code.
21
+ #
22
+ # @!attribute [rw] status
23
+ # The status of the account gate function.
24
+ #
25
+ # * `SUCCEEDED`\: The account gate function has determined that the
26
+ # account passes any requirements for stack set operations to occur.
27
+ # AWS CloudFormation proceeds with stack operations in the account.
28
+ #
29
+ # * `FAILED`\: The account gate function has determined that the
30
+ # account does not meet the requirements for stack set operations to
31
+ # occur. AWS CloudFormation cancels the stack set operations in that
32
+ # account, and the stack set operation status is set to FAILED.
33
+ #
34
+ # * `SKIPPED`\: An account gate function has not been specified for
35
+ # the account, or the AWSCloudFormationStackSetExecutionRole of the
36
+ # stack set adminstration account lacks permissions to invoke the
37
+ # function. AWS CloudFormation proceeds with stack set operations in
38
+ # the account.
39
+ # @return [String]
40
+ #
41
+ # @!attribute [rw] status_reason
42
+ # The reason for the account gate status assigned to this account.
43
+ # @return [String]
44
+ #
45
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/AccountGateResult AWS API Documentation
46
+ #
47
+ class AccountGateResult < Struct.new(
48
+ :status,
49
+ :status_reason)
50
+ include Aws::Structure
51
+ end
52
+
11
53
  # The AccountLimit data type.
12
54
  #
13
55
  # @!attribute [rw] name
@@ -185,7 +227,7 @@ module Aws::CloudFormation
185
227
  # only resources that are in the `UPDATE_FAILED` state because a
186
228
  # rollback failed. You can't specify resources that are in the
187
229
  # `UPDATE_FAILED` state for other reasons, for example, because an
188
- # update was canceled. To check why a resource update failed, use the
230
+ # update was cancelled. To check why a resource update failed, use the
189
231
  # DescribeStackResources action, and view the resource status reason.
190
232
  #
191
233
  # Specify this property to skip rolling back resources that AWS
@@ -205,15 +247,24 @@ module Aws::CloudFormation
205
247
  # cause dependent resources to fail. In this case, it might not be
206
248
  # necessary to skip the dependent resources.
207
249
  #
208
- # To specify resources in a nested stack, use the following format:
209
- # `NestedStackName.ResourceLogicalID`. If the `ResourceLogicalID` is a
210
- # stack resource (`Type: AWS::CloudFormation::Stack`), it must be in
211
- # one of the following states: `DELETE_IN_PROGRESS`,
212
- # `DELETE_COMPLETE`, or `DELETE_FAILED`.
250
+ # To skip resources that are part of nested stacks, use the following
251
+ # format: `NestedStackName.ResourceLogicalID`. If you want to specify
252
+ # the logical ID of a stack resource (`Type:
253
+ # AWS::CloudFormation::Stack`) in the `ResourcesToSkip` list, then its
254
+ # corresponding embedded stack must be in one of the following states:
255
+ # `DELETE_IN_PROGRESS`, `DELETE_COMPLETE`, or `DELETE_FAILED`.
256
+ #
257
+ # <note markdown="1"> Don't confuse a child stack's name with its corresponding logical
258
+ # ID defined in the parent stack. For an example of a continue update
259
+ # rollback operation with nested stacks, see [Using ResourcesToSkip to
260
+ # recover a nested stacks hierarchy][2].
261
+ #
262
+ # </note>
213
263
  #
214
264
  #
215
265
  #
216
266
  # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-update-rollback-failed
267
+ # [2]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-continueupdaterollback.html#nested-stacks
217
268
  # @return [Array<String>]
218
269
  #
219
270
  # @!attribute [rw] client_request_token
@@ -264,8 +315,8 @@ module Aws::CloudFormation
264
315
  # notification_arns: ["NotificationARN"],
265
316
  # tags: [
266
317
  # {
267
- # key: "TagKey",
268
- # value: "TagValue",
318
+ # key: "TagKey", # required
319
+ # value: "TagValue", # required
269
320
  # },
270
321
  # ],
271
322
  # change_set_name: "ChangeSetName", # required
@@ -396,7 +447,7 @@ module Aws::CloudFormation
396
447
  # @!attribute [rw] tags
397
448
  # Key-value pairs to associate with this stack. AWS CloudFormation
398
449
  # also propagates these tags to resources in the stack. You can
399
- # specify a maximum of 10 tags.
450
+ # specify a maximum of 50 tags.
400
451
  # @return [Array<Types::Tag>]
401
452
  #
402
453
  # @!attribute [rw] change_set_name
@@ -504,8 +555,8 @@ module Aws::CloudFormation
504
555
  # stack_policy_url: "StackPolicyURL",
505
556
  # tags: [
506
557
  # {
507
- # key: "TagKey",
508
- # value: "TagValue",
558
+ # key: "TagKey", # required
559
+ # value: "TagValue", # required
509
560
  # },
510
561
  # ],
511
562
  # client_request_token: "ClientRequestToken",
@@ -685,7 +736,7 @@ module Aws::CloudFormation
685
736
  # @!attribute [rw] tags
686
737
  # Key-value pairs to associate with this stack. AWS CloudFormation
687
738
  # also propagates these tags to the resources created in the stack. A
688
- # maximum number of 10 tags can be specified.
739
+ # maximum number of 50 tags can be specified.
689
740
  # @return [Array<Types::Tag>]
690
741
  #
691
742
  # @!attribute [rw] client_request_token
@@ -694,6 +745,20 @@ module Aws::CloudFormation
694
745
  # that you're not attempting to create a stack with the same name.
695
746
  # You might retry `CreateStack` requests to ensure that AWS
696
747
  # CloudFormation successfully received them.
748
+ #
749
+ # All events triggered by a given stack operation are assigned the
750
+ # same client request token, which you can use to track operations.
751
+ # For example, if you execute a `CreateStack` operation with the token
752
+ # `token1`, then all the `StackEvents` generated by that operation
753
+ # will have `ClientRequestToken` set as `token1`.
754
+ #
755
+ # In the console, stack operations display the client request token on
756
+ # the Events tab. Stack operations that are initiated from the console
757
+ # use the token format *Console-StackOperation-ID*, which helps you
758
+ # easily identify the stack operation . For example, if you create a
759
+ # stack using the console, each stack event would be assigned the same
760
+ # token in the following format:
761
+ # `Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002`.
697
762
  # @return [String]
698
763
  #
699
764
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateStackInput AWS API Documentation
@@ -717,6 +782,84 @@ module Aws::CloudFormation
717
782
  include Aws::Structure
718
783
  end
719
784
 
785
+ # @note When making an API call, you may pass CreateStackInstancesInput
786
+ # data as a hash:
787
+ #
788
+ # {
789
+ # stack_set_name: "StackSetName", # required
790
+ # accounts: ["Account"], # required
791
+ # regions: ["Region"], # required
792
+ # operation_preferences: {
793
+ # region_order: ["Region"],
794
+ # failure_tolerance_count: 1,
795
+ # failure_tolerance_percentage: 1,
796
+ # max_concurrent_count: 1,
797
+ # max_concurrent_percentage: 1,
798
+ # },
799
+ # operation_id: "ClientRequestToken",
800
+ # }
801
+ #
802
+ # @!attribute [rw] stack_set_name
803
+ # The name or unique ID of the stack set that you want to create stack
804
+ # instances from.
805
+ # @return [String]
806
+ #
807
+ # @!attribute [rw] accounts
808
+ # The names of one or more AWS accounts that you want to create stack
809
+ # instances in the specified region(s) for.
810
+ # @return [Array<String>]
811
+ #
812
+ # @!attribute [rw] regions
813
+ # The names of one or more regions where you want to create stack
814
+ # instances using the specified AWS account(s).
815
+ # @return [Array<String>]
816
+ #
817
+ # @!attribute [rw] operation_preferences
818
+ # Preferences for how AWS CloudFormation performs this stack set
819
+ # operation.
820
+ # @return [Types::StackSetOperationPreferences]
821
+ #
822
+ # @!attribute [rw] operation_id
823
+ # The unique identifier for this stack set operation.
824
+ #
825
+ # The operation ID also functions as an idempotency token, to ensure
826
+ # that AWS CloudFormation performs the stack set operation only once,
827
+ # even if you retry the request multiple times. You might retry stack
828
+ # set operation requests to ensure that AWS CloudFormation
829
+ # successfully received them.
830
+ #
831
+ # If you don't specify an operation ID, the SDK generates one
832
+ # automatically.
833
+ #
834
+ # Repeating this stack set operation with a new operation ID retries
835
+ # all stack instances whose status is `OUTDATED`.
836
+ #
837
+ # **A suitable default value is auto-generated.** You should normally
838
+ # not need to pass this option.
839
+ # @return [String]
840
+ #
841
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateStackInstancesInput AWS API Documentation
842
+ #
843
+ class CreateStackInstancesInput < Struct.new(
844
+ :stack_set_name,
845
+ :accounts,
846
+ :regions,
847
+ :operation_preferences,
848
+ :operation_id)
849
+ include Aws::Structure
850
+ end
851
+
852
+ # @!attribute [rw] operation_id
853
+ # The unique identifier for this stack set operation.
854
+ # @return [String]
855
+ #
856
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateStackInstancesOutput AWS API Documentation
857
+ #
858
+ class CreateStackInstancesOutput < Struct.new(
859
+ :operation_id)
860
+ include Aws::Structure
861
+ end
862
+
720
863
  # The output for a CreateStack action.
721
864
  #
722
865
  # @!attribute [rw] stack_id
@@ -730,6 +873,174 @@ module Aws::CloudFormation
730
873
  include Aws::Structure
731
874
  end
732
875
 
876
+ # @note When making an API call, you may pass CreateStackSetInput
877
+ # data as a hash:
878
+ #
879
+ # {
880
+ # stack_set_name: "StackSetName", # required
881
+ # description: "Description",
882
+ # template_body: "TemplateBody",
883
+ # template_url: "TemplateURL",
884
+ # parameters: [
885
+ # {
886
+ # parameter_key: "ParameterKey",
887
+ # parameter_value: "ParameterValue",
888
+ # use_previous_value: false,
889
+ # },
890
+ # ],
891
+ # capabilities: ["CAPABILITY_IAM"], # accepts CAPABILITY_IAM, CAPABILITY_NAMED_IAM
892
+ # tags: [
893
+ # {
894
+ # key: "TagKey", # required
895
+ # value: "TagValue", # required
896
+ # },
897
+ # ],
898
+ # client_request_token: "ClientRequestToken",
899
+ # }
900
+ #
901
+ # @!attribute [rw] stack_set_name
902
+ # The name to associate with the stack set. The name must be unique in
903
+ # the region where you create your stack set.
904
+ #
905
+ # <note markdown="1"> A stack name can contain only alphanumeric characters
906
+ # (case-sensitive) and hyphens. It must start with an alphabetic
907
+ # character and can't be longer than 128 characters.
908
+ #
909
+ # </note>
910
+ # @return [String]
911
+ #
912
+ # @!attribute [rw] description
913
+ # A description of the stack set. You can use the description to
914
+ # identify the stack set's purpose or other important information.
915
+ # @return [String]
916
+ #
917
+ # @!attribute [rw] template_body
918
+ # The structure that contains the template body, with a minimum length
919
+ # of 1 byte and a maximum length of 51,200 bytes. For more
920
+ # information, see [Template Anatomy][1] in the AWS CloudFormation
921
+ # User Guide.
922
+ #
923
+ # Conditional: You must specify either the TemplateBody or the
924
+ # TemplateURL parameter, but not both.
925
+ #
926
+ #
927
+ #
928
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
929
+ # @return [String]
930
+ #
931
+ # @!attribute [rw] template_url
932
+ # The location of the file that contains the template body. The URL
933
+ # must point to a template (maximum size: 460,800 bytes) that's
934
+ # located in an Amazon S3 bucket. For more information, see [Template
935
+ # Anatomy][1] in the AWS CloudFormation User Guide.
936
+ #
937
+ # Conditional: You must specify either the TemplateBody or the
938
+ # TemplateURL parameter, but not both.
939
+ #
940
+ #
941
+ #
942
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
943
+ # @return [String]
944
+ #
945
+ # @!attribute [rw] parameters
946
+ # The input parameters for the stack set template.
947
+ # @return [Array<Types::Parameter>]
948
+ #
949
+ # @!attribute [rw] capabilities
950
+ # A list of values that you must specify before AWS CloudFormation can
951
+ # create certain stack sets. Some stack set templates might include
952
+ # resources that can affect permissions in your AWS account—for
953
+ # example, by creating new AWS Identity and Access Management (IAM)
954
+ # users. For those stack sets, you must explicitly acknowledge their
955
+ # capabilities by specifying this parameter.
956
+ #
957
+ # The only valid values are CAPABILITY\_IAM and
958
+ # CAPABILITY\_NAMED\_IAM. The following resources require you to
959
+ # specify this parameter:
960
+ #
961
+ # * AWS::IAM::AccessKey
962
+ #
963
+ # * AWS::IAM::Group
964
+ #
965
+ # * AWS::IAM::InstanceProfile
966
+ #
967
+ # * AWS::IAM::Policy
968
+ #
969
+ # * AWS::IAM::Role
970
+ #
971
+ # * AWS::IAM::User
972
+ #
973
+ # * AWS::IAM::UserToGroupAddition
974
+ #
975
+ # If your stack template contains these resources, we recommend that
976
+ # you review all permissions that are associated with them and edit
977
+ # their permissions if necessary.
978
+ #
979
+ # If you have IAM resources, you can specify either capability. If you
980
+ # have IAM resources with custom names, you must specify
981
+ # CAPABILITY\_NAMED\_IAM. If you don't specify this parameter, this
982
+ # action returns an `InsufficientCapabilities` error.
983
+ #
984
+ # For more information, see [Acknowledging IAM Resources in AWS
985
+ # CloudFormation Templates.][1]
986
+ #
987
+ #
988
+ #
989
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities
990
+ # @return [Array<String>]
991
+ #
992
+ # @!attribute [rw] tags
993
+ # The key-value pairs to associate with this stack set and the stacks
994
+ # created from it. AWS CloudFormation also propagates these tags to
995
+ # supported resources that are created in the stacks. A maximum number
996
+ # of 50 tags can be specified.
997
+ #
998
+ # If you specify tags as part of a `CreateStackSet` action, AWS
999
+ # CloudFormation checks to see if you have the required IAM permission
1000
+ # to tag resources. If you don't, the entire `CreateStackSet` action
1001
+ # fails with an `access denied` error, and the stack set is not
1002
+ # created.
1003
+ # @return [Array<Types::Tag>]
1004
+ #
1005
+ # @!attribute [rw] client_request_token
1006
+ # A unique identifier for this `CreateStackSet` request. Specify this
1007
+ # token if you plan to retry requests so that AWS CloudFormation knows
1008
+ # that you're not attempting to create another stack set with the
1009
+ # same name. You might retry `CreateStackSet` requests to ensure that
1010
+ # AWS CloudFormation successfully received them.
1011
+ #
1012
+ # If you don't specify an operation ID, the SDK generates one
1013
+ # automatically.
1014
+ #
1015
+ # **A suitable default value is auto-generated.** You should normally
1016
+ # not need to pass this option.
1017
+ # @return [String]
1018
+ #
1019
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateStackSetInput AWS API Documentation
1020
+ #
1021
+ class CreateStackSetInput < Struct.new(
1022
+ :stack_set_name,
1023
+ :description,
1024
+ :template_body,
1025
+ :template_url,
1026
+ :parameters,
1027
+ :capabilities,
1028
+ :tags,
1029
+ :client_request_token)
1030
+ include Aws::Structure
1031
+ end
1032
+
1033
+ # @!attribute [rw] stack_set_id
1034
+ # The ID of the stack set that you're creating.
1035
+ # @return [String]
1036
+ #
1037
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateStackSetOutput AWS API Documentation
1038
+ #
1039
+ class CreateStackSetOutput < Struct.new(
1040
+ :stack_set_id)
1041
+ include Aws::Structure
1042
+ end
1043
+
733
1044
  # The input for the DeleteChangeSet action.
734
1045
  #
735
1046
  # @note When making an API call, you may pass DeleteChangeSetInput
@@ -808,6 +1119,20 @@ module Aws::CloudFormation
808
1119
  # that you're not attempting to delete a stack with the same name.
809
1120
  # You might retry `DeleteStack` requests to ensure that AWS
810
1121
  # CloudFormation successfully received them.
1122
+ #
1123
+ # All events triggered by a given stack operation are assigned the
1124
+ # same client request token, which you can use to track operations.
1125
+ # For example, if you execute a `CreateStack` operation with the token
1126
+ # `token1`, then all the `StackEvents` generated by that operation
1127
+ # will have `ClientRequestToken` set as `token1`.
1128
+ #
1129
+ # In the console, stack operations display the client request token on
1130
+ # the Events tab. Stack operations that are initiated from the console
1131
+ # use the token format *Console-StackOperation-ID*, which helps you
1132
+ # easily identify the stack operation . For example, if you create a
1133
+ # stack using the console, each stack event would be assigned the same
1134
+ # token in the following format:
1135
+ # `Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002`.
811
1136
  # @return [String]
812
1137
  #
813
1138
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DeleteStackInput AWS API Documentation
@@ -820,6 +1145,114 @@ module Aws::CloudFormation
820
1145
  include Aws::Structure
821
1146
  end
822
1147
 
1148
+ # @note When making an API call, you may pass DeleteStackInstancesInput
1149
+ # data as a hash:
1150
+ #
1151
+ # {
1152
+ # stack_set_name: "StackSetName", # required
1153
+ # accounts: ["Account"], # required
1154
+ # regions: ["Region"], # required
1155
+ # operation_preferences: {
1156
+ # region_order: ["Region"],
1157
+ # failure_tolerance_count: 1,
1158
+ # failure_tolerance_percentage: 1,
1159
+ # max_concurrent_count: 1,
1160
+ # max_concurrent_percentage: 1,
1161
+ # },
1162
+ # retain_stacks: false, # required
1163
+ # operation_id: "ClientRequestToken",
1164
+ # }
1165
+ #
1166
+ # @!attribute [rw] stack_set_name
1167
+ # The name or unique ID of the stack set that you want to delete stack
1168
+ # instances for.
1169
+ # @return [String]
1170
+ #
1171
+ # @!attribute [rw] accounts
1172
+ # The names of the AWS accounts that you want to delete stack
1173
+ # instances for.
1174
+ # @return [Array<String>]
1175
+ #
1176
+ # @!attribute [rw] regions
1177
+ # The regions where you want to delete stack set instances.
1178
+ # @return [Array<String>]
1179
+ #
1180
+ # @!attribute [rw] operation_preferences
1181
+ # Preferences for how AWS CloudFormation performs this stack set
1182
+ # operation.
1183
+ # @return [Types::StackSetOperationPreferences]
1184
+ #
1185
+ # @!attribute [rw] retain_stacks
1186
+ # Removes the stack instances from the specified stack set, but
1187
+ # doesn't delete the stacks. You can't reassociate a retained stack
1188
+ # or add an existing, saved stack to a new stack set.
1189
+ # @return [Boolean]
1190
+ #
1191
+ # @!attribute [rw] operation_id
1192
+ # The unique identifier for this stack set operation.
1193
+ #
1194
+ # If you don't specify an operation ID, the SDK generates one
1195
+ # automatically.
1196
+ #
1197
+ # The operation ID also functions as an idempotency token, to ensure
1198
+ # that AWS CloudFormation performs the stack set operation only once,
1199
+ # even if you retry the request multiple times. You can retry stack
1200
+ # set operation requests to ensure that AWS CloudFormation
1201
+ # successfully received them.
1202
+ #
1203
+ # Repeating this stack set operation with a new operation ID retries
1204
+ # all stack instances whose status is `OUTDATED`.
1205
+ #
1206
+ # **A suitable default value is auto-generated.** You should normally
1207
+ # not need to pass this option.
1208
+ # @return [String]
1209
+ #
1210
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DeleteStackInstancesInput AWS API Documentation
1211
+ #
1212
+ class DeleteStackInstancesInput < Struct.new(
1213
+ :stack_set_name,
1214
+ :accounts,
1215
+ :regions,
1216
+ :operation_preferences,
1217
+ :retain_stacks,
1218
+ :operation_id)
1219
+ include Aws::Structure
1220
+ end
1221
+
1222
+ # @!attribute [rw] operation_id
1223
+ # The unique identifier for this stack set operation.
1224
+ # @return [String]
1225
+ #
1226
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DeleteStackInstancesOutput AWS API Documentation
1227
+ #
1228
+ class DeleteStackInstancesOutput < Struct.new(
1229
+ :operation_id)
1230
+ include Aws::Structure
1231
+ end
1232
+
1233
+ # @note When making an API call, you may pass DeleteStackSetInput
1234
+ # data as a hash:
1235
+ #
1236
+ # {
1237
+ # stack_set_name: "StackSetName", # required
1238
+ # }
1239
+ #
1240
+ # @!attribute [rw] stack_set_name
1241
+ # The name or unique ID of the stack set that you're deleting. You
1242
+ # can obtain this value by running ListStackSets.
1243
+ # @return [String]
1244
+ #
1245
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DeleteStackSetInput AWS API Documentation
1246
+ #
1247
+ class DeleteStackSetInput < Struct.new(
1248
+ :stack_set_name)
1249
+ include Aws::Structure
1250
+ end
1251
+
1252
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DeleteStackSetOutput AWS API Documentation
1253
+ #
1254
+ class DeleteStackSetOutput < Aws::EmptyStructure; end
1255
+
823
1256
  # The input for the DescribeAccountLimits action.
824
1257
  #
825
1258
  # @note When making an API call, you may pass DescribeAccountLimitsInput
@@ -1054,6 +1487,49 @@ module Aws::CloudFormation
1054
1487
  include Aws::Structure
1055
1488
  end
1056
1489
 
1490
+ # @note When making an API call, you may pass DescribeStackInstanceInput
1491
+ # data as a hash:
1492
+ #
1493
+ # {
1494
+ # stack_set_name: "StackSetName", # required
1495
+ # stack_instance_account: "Account", # required
1496
+ # stack_instance_region: "Region", # required
1497
+ # }
1498
+ #
1499
+ # @!attribute [rw] stack_set_name
1500
+ # The name or the unique stack ID of the stack set that you want to
1501
+ # get stack instance information for.
1502
+ # @return [String]
1503
+ #
1504
+ # @!attribute [rw] stack_instance_account
1505
+ # The ID of an AWS account that's associated with this stack
1506
+ # instance.
1507
+ # @return [String]
1508
+ #
1509
+ # @!attribute [rw] stack_instance_region
1510
+ # The name of a region that's associated with this stack instance.
1511
+ # @return [String]
1512
+ #
1513
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackInstanceInput AWS API Documentation
1514
+ #
1515
+ class DescribeStackInstanceInput < Struct.new(
1516
+ :stack_set_name,
1517
+ :stack_instance_account,
1518
+ :stack_instance_region)
1519
+ include Aws::Structure
1520
+ end
1521
+
1522
+ # @!attribute [rw] stack_instance
1523
+ # The stack instance that matches the specified request parameters.
1524
+ # @return [Types::StackInstance]
1525
+ #
1526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackInstanceOutput AWS API Documentation
1527
+ #
1528
+ class DescribeStackInstanceOutput < Struct.new(
1529
+ :stack_instance)
1530
+ include Aws::Structure
1531
+ end
1532
+
1057
1533
  # The input for DescribeStackResource action.
1058
1534
  #
1059
1535
  # @note When making an API call, you may pass DescribeStackResourceInput
@@ -1174,6 +1650,71 @@ module Aws::CloudFormation
1174
1650
  include Aws::Structure
1175
1651
  end
1176
1652
 
1653
+ # @note When making an API call, you may pass DescribeStackSetInput
1654
+ # data as a hash:
1655
+ #
1656
+ # {
1657
+ # stack_set_name: "StackSetName", # required
1658
+ # }
1659
+ #
1660
+ # @!attribute [rw] stack_set_name
1661
+ # The name or unique ID of the stack set whose description you want.
1662
+ # @return [String]
1663
+ #
1664
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackSetInput AWS API Documentation
1665
+ #
1666
+ class DescribeStackSetInput < Struct.new(
1667
+ :stack_set_name)
1668
+ include Aws::Structure
1669
+ end
1670
+
1671
+ # @note When making an API call, you may pass DescribeStackSetOperationInput
1672
+ # data as a hash:
1673
+ #
1674
+ # {
1675
+ # stack_set_name: "StackSetName", # required
1676
+ # operation_id: "ClientRequestToken", # required
1677
+ # }
1678
+ #
1679
+ # @!attribute [rw] stack_set_name
1680
+ # The name or the unique stack ID of the stack set for the stack
1681
+ # operation.
1682
+ # @return [String]
1683
+ #
1684
+ # @!attribute [rw] operation_id
1685
+ # The unique ID of the stack set operation.
1686
+ # @return [String]
1687
+ #
1688
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackSetOperationInput AWS API Documentation
1689
+ #
1690
+ class DescribeStackSetOperationInput < Struct.new(
1691
+ :stack_set_name,
1692
+ :operation_id)
1693
+ include Aws::Structure
1694
+ end
1695
+
1696
+ # @!attribute [rw] stack_set_operation
1697
+ # The specified stack set operation.
1698
+ # @return [Types::StackSetOperation]
1699
+ #
1700
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackSetOperationOutput AWS API Documentation
1701
+ #
1702
+ class DescribeStackSetOperationOutput < Struct.new(
1703
+ :stack_set_operation)
1704
+ include Aws::Structure
1705
+ end
1706
+
1707
+ # @!attribute [rw] stack_set
1708
+ # The specified stack set.
1709
+ # @return [Types::StackSet]
1710
+ #
1711
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackSetOutput AWS API Documentation
1712
+ #
1713
+ class DescribeStackSetOutput < Struct.new(
1714
+ :stack_set)
1715
+ include Aws::Structure
1716
+ end
1717
+
1177
1718
  # The input for DescribeStacks action.
1178
1719
  #
1179
1720
  # @note When making an API call, you may pass DescribeStacksInput
@@ -1502,6 +2043,7 @@ module Aws::CloudFormation
1502
2043
  # template_body: "TemplateBody",
1503
2044
  # template_url: "TemplateURL",
1504
2045
  # stack_name: "StackNameOrId",
2046
+ # stack_set_name: "StackSetNameOrId",
1505
2047
  # }
1506
2048
  #
1507
2049
  # @!attribute [rw] template_body
@@ -1542,12 +2084,18 @@ module Aws::CloudFormation
1542
2084
  # `StackName`, `TemplateBody`, or `TemplateURL`.
1543
2085
  # @return [String]
1544
2086
  #
2087
+ # @!attribute [rw] stack_set_name
2088
+ # The name or unique ID of the stack set from which the stack was
2089
+ # created.
2090
+ # @return [String]
2091
+ #
1545
2092
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/GetTemplateSummaryInput AWS API Documentation
1546
2093
  #
1547
2094
  class GetTemplateSummaryInput < Struct.new(
1548
2095
  :template_body,
1549
2096
  :template_url,
1550
- :stack_name)
2097
+ :stack_name,
2098
+ :stack_set_name)
1551
2099
  include Aws::Structure
1552
2100
  end
1553
2101
 
@@ -1748,6 +2296,79 @@ module Aws::CloudFormation
1748
2296
  include Aws::Structure
1749
2297
  end
1750
2298
 
2299
+ # @note When making an API call, you may pass ListStackInstancesInput
2300
+ # data as a hash:
2301
+ #
2302
+ # {
2303
+ # stack_set_name: "StackSetName", # required
2304
+ # next_token: "NextToken",
2305
+ # max_results: 1,
2306
+ # stack_instance_account: "Account",
2307
+ # stack_instance_region: "Region",
2308
+ # }
2309
+ #
2310
+ # @!attribute [rw] stack_set_name
2311
+ # The name or unique ID of the stack set that you want to list stack
2312
+ # instances for.
2313
+ # @return [String]
2314
+ #
2315
+ # @!attribute [rw] next_token
2316
+ # If the previous request didn't return all of the remaining results,
2317
+ # the response's `NextToken` parameter value is set to a token. To
2318
+ # retrieve the next set of results, call `ListStackInstances` again
2319
+ # and assign that token to the request object's `NextToken`
2320
+ # parameter. If there are no remaining results, the previous response
2321
+ # object's `NextToken` parameter is set to `null`.
2322
+ # @return [String]
2323
+ #
2324
+ # @!attribute [rw] max_results
2325
+ # The maximum number of results to be returned with a single call. If
2326
+ # the number of available results exceeds this maximum, the response
2327
+ # includes a `NextToken` value that you can assign to the `NextToken`
2328
+ # request parameter to get the next set of results.
2329
+ # @return [Integer]
2330
+ #
2331
+ # @!attribute [rw] stack_instance_account
2332
+ # The name of the AWS account that you want to list stack instances
2333
+ # for.
2334
+ # @return [String]
2335
+ #
2336
+ # @!attribute [rw] stack_instance_region
2337
+ # The name of the region where you want to list stack instances.
2338
+ # @return [String]
2339
+ #
2340
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackInstancesInput AWS API Documentation
2341
+ #
2342
+ class ListStackInstancesInput < Struct.new(
2343
+ :stack_set_name,
2344
+ :next_token,
2345
+ :max_results,
2346
+ :stack_instance_account,
2347
+ :stack_instance_region)
2348
+ include Aws::Structure
2349
+ end
2350
+
2351
+ # @!attribute [rw] summaries
2352
+ # A list of `StackInstanceSummary` structures that contain information
2353
+ # about the specified stack instances.
2354
+ # @return [Array<Types::StackInstanceSummary>]
2355
+ #
2356
+ # @!attribute [rw] next_token
2357
+ # If the request doesn't return all of the remaining results,
2358
+ # `NextToken` is set to a token. To retrieve the next set of results,
2359
+ # call `ListStackInstances` again and assign that token to the request
2360
+ # object's `NextToken` parameter. If the request returns all results,
2361
+ # `NextToken` is set to `null`.
2362
+ # @return [String]
2363
+ #
2364
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackInstancesOutput AWS API Documentation
2365
+ #
2366
+ class ListStackInstancesOutput < Struct.new(
2367
+ :summaries,
2368
+ :next_token)
2369
+ include Aws::Structure
2370
+ end
2371
+
1751
2372
  # The input for the ListStackResource action.
1752
2373
  #
1753
2374
  # @note When making an API call, you may pass ListStackResourcesInput
@@ -1803,6 +2424,195 @@ module Aws::CloudFormation
1803
2424
  include Aws::Structure
1804
2425
  end
1805
2426
 
2427
+ # @note When making an API call, you may pass ListStackSetOperationResultsInput
2428
+ # data as a hash:
2429
+ #
2430
+ # {
2431
+ # stack_set_name: "StackSetName", # required
2432
+ # operation_id: "ClientRequestToken", # required
2433
+ # next_token: "NextToken",
2434
+ # max_results: 1,
2435
+ # }
2436
+ #
2437
+ # @!attribute [rw] stack_set_name
2438
+ # The name or unique ID of the stack set that you want to get
2439
+ # operation results for.
2440
+ # @return [String]
2441
+ #
2442
+ # @!attribute [rw] operation_id
2443
+ # The ID of the stack set operation.
2444
+ # @return [String]
2445
+ #
2446
+ # @!attribute [rw] next_token
2447
+ # If the previous request didn't return all of the remaining results,
2448
+ # the response object's `NextToken` parameter value is set to a
2449
+ # token. To retrieve the next set of results, call
2450
+ # `ListStackSetOperationResults` again and assign that token to the
2451
+ # request object's `NextToken` parameter. If there are no remaining
2452
+ # results, the previous response object's `NextToken` parameter is
2453
+ # set to `null`.
2454
+ # @return [String]
2455
+ #
2456
+ # @!attribute [rw] max_results
2457
+ # The maximum number of results to be returned with a single call. If
2458
+ # the number of available results exceeds this maximum, the response
2459
+ # includes a `NextToken` value that you can assign to the `NextToken`
2460
+ # request parameter to get the next set of results.
2461
+ # @return [Integer]
2462
+ #
2463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackSetOperationResultsInput AWS API Documentation
2464
+ #
2465
+ class ListStackSetOperationResultsInput < Struct.new(
2466
+ :stack_set_name,
2467
+ :operation_id,
2468
+ :next_token,
2469
+ :max_results)
2470
+ include Aws::Structure
2471
+ end
2472
+
2473
+ # @!attribute [rw] summaries
2474
+ # A list of `StackSetOperationResultSummary` structures that contain
2475
+ # information about the specified operation results, for accounts and
2476
+ # regions that are included in the operation.
2477
+ # @return [Array<Types::StackSetOperationResultSummary>]
2478
+ #
2479
+ # @!attribute [rw] next_token
2480
+ # If the request doesn't return all results, `NextToken` is set to a
2481
+ # token. To retrieve the next set of results, call
2482
+ # `ListOperationResults` again and assign that token to the request
2483
+ # object's `NextToken` parameter. If there are no remaining results,
2484
+ # `NextToken` is set to `null`.
2485
+ # @return [String]
2486
+ #
2487
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackSetOperationResultsOutput AWS API Documentation
2488
+ #
2489
+ class ListStackSetOperationResultsOutput < Struct.new(
2490
+ :summaries,
2491
+ :next_token)
2492
+ include Aws::Structure
2493
+ end
2494
+
2495
+ # @note When making an API call, you may pass ListStackSetOperationsInput
2496
+ # data as a hash:
2497
+ #
2498
+ # {
2499
+ # stack_set_name: "StackSetName", # required
2500
+ # next_token: "NextToken",
2501
+ # max_results: 1,
2502
+ # }
2503
+ #
2504
+ # @!attribute [rw] stack_set_name
2505
+ # The name or unique ID of the stack set that you want to get
2506
+ # operation summaries for.
2507
+ # @return [String]
2508
+ #
2509
+ # @!attribute [rw] next_token
2510
+ # If the previous paginated request didn't return all of the
2511
+ # remaining results, the response object's `NextToken` parameter
2512
+ # value is set to a token. To retrieve the next set of results, call
2513
+ # `ListStackSetOperations` again and assign that token to the request
2514
+ # object's `NextToken` parameter. If there are no remaining results,
2515
+ # the previous response object's `NextToken` parameter is set to
2516
+ # `null`.
2517
+ # @return [String]
2518
+ #
2519
+ # @!attribute [rw] max_results
2520
+ # The maximum number of results to be returned with a single call. If
2521
+ # the number of available results exceeds this maximum, the response
2522
+ # includes a `NextToken` value that you can assign to the `NextToken`
2523
+ # request parameter to get the next set of results.
2524
+ # @return [Integer]
2525
+ #
2526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackSetOperationsInput AWS API Documentation
2527
+ #
2528
+ class ListStackSetOperationsInput < Struct.new(
2529
+ :stack_set_name,
2530
+ :next_token,
2531
+ :max_results)
2532
+ include Aws::Structure
2533
+ end
2534
+
2535
+ # @!attribute [rw] summaries
2536
+ # A list of `StackSetOperationSummary` structures that contain summary
2537
+ # information about operations for the specified stack set.
2538
+ # @return [Array<Types::StackSetOperationSummary>]
2539
+ #
2540
+ # @!attribute [rw] next_token
2541
+ # If the request doesn't return all results, `NextToken` is set to a
2542
+ # token. To retrieve the next set of results, call
2543
+ # `ListOperationResults` again and assign that token to the request
2544
+ # object's `NextToken` parameter. If there are no remaining results,
2545
+ # `NextToken` is set to `null`.
2546
+ # @return [String]
2547
+ #
2548
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackSetOperationsOutput AWS API Documentation
2549
+ #
2550
+ class ListStackSetOperationsOutput < Struct.new(
2551
+ :summaries,
2552
+ :next_token)
2553
+ include Aws::Structure
2554
+ end
2555
+
2556
+ # @note When making an API call, you may pass ListStackSetsInput
2557
+ # data as a hash:
2558
+ #
2559
+ # {
2560
+ # next_token: "NextToken",
2561
+ # max_results: 1,
2562
+ # status: "ACTIVE", # accepts ACTIVE, DELETED
2563
+ # }
2564
+ #
2565
+ # @!attribute [rw] next_token
2566
+ # If the previous paginated request didn't return all of the
2567
+ # remaining results, the response object's `NextToken` parameter
2568
+ # value is set to a token. To retrieve the next set of results, call
2569
+ # `ListStackSets` again and assign that token to the request object's
2570
+ # `NextToken` parameter. If there are no remaining results, the
2571
+ # previous response object's `NextToken` parameter is set to `null`.
2572
+ # @return [String]
2573
+ #
2574
+ # @!attribute [rw] max_results
2575
+ # The maximum number of results to be returned with a single call. If
2576
+ # the number of available results exceeds this maximum, the response
2577
+ # includes a `NextToken` value that you can assign to the `NextToken`
2578
+ # request parameter to get the next set of results.
2579
+ # @return [Integer]
2580
+ #
2581
+ # @!attribute [rw] status
2582
+ # The status of the stack sets that you want to get summary
2583
+ # information about.
2584
+ # @return [String]
2585
+ #
2586
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackSetsInput AWS API Documentation
2587
+ #
2588
+ class ListStackSetsInput < Struct.new(
2589
+ :next_token,
2590
+ :max_results,
2591
+ :status)
2592
+ include Aws::Structure
2593
+ end
2594
+
2595
+ # @!attribute [rw] summaries
2596
+ # A list of `StackSetSummary` structures that contain information
2597
+ # about the user's stack sets.
2598
+ # @return [Array<Types::StackSetSummary>]
2599
+ #
2600
+ # @!attribute [rw] next_token
2601
+ # If the request doesn't return all of the remaining results,
2602
+ # `NextToken` is set to a token. To retrieve the next set of results,
2603
+ # call `ListStackInstances` again and assign that token to the request
2604
+ # object's `NextToken` parameter. If the request returns all results,
2605
+ # `NextToken` is set to `null`.
2606
+ # @return [String]
2607
+ #
2608
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListStackSetsOutput AWS API Documentation
2609
+ #
2610
+ class ListStackSetsOutput < Struct.new(
2611
+ :summaries,
2612
+ :next_token)
2613
+ include Aws::Structure
2614
+ end
2615
+
1806
2616
  # The input for ListStacks action.
1807
2617
  #
1808
2618
  # @note When making an API call, you may pass ListStacksInput
@@ -1868,12 +2678,17 @@ module Aws::CloudFormation
1868
2678
  # User defined description associated with the output.
1869
2679
  # @return [String]
1870
2680
  #
2681
+ # @!attribute [rw] export_name
2682
+ # The name of the export associated with the output.
2683
+ # @return [String]
2684
+ #
1871
2685
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/Output AWS API Documentation
1872
2686
  #
1873
2687
  class Output < Struct.new(
1874
2688
  :output_key,
1875
2689
  :output_value,
1876
- :description)
2690
+ :description,
2691
+ :export_name)
1877
2692
  include Aws::Structure
1878
2693
  end
1879
2694
 
@@ -2385,9 +3200,19 @@ module Aws::CloudFormation
2385
3200
  # @!attribute [rw] client_request_token
2386
3201
  # The token passed to the operation that generated this event.
2387
3202
  #
3203
+ # All events triggered by a given stack operation are assigned the
3204
+ # same client request token, which you can use to track operations.
2388
3205
  # For example, if you execute a `CreateStack` operation with the token
2389
3206
  # `token1`, then all the `StackEvents` generated by that operation
2390
3207
  # will have `ClientRequestToken` set as `token1`.
3208
+ #
3209
+ # In the console, stack operations display the client request token on
3210
+ # the Events tab. Stack operations that are initiated from the console
3211
+ # use the token format *Console-StackOperation-ID*, which helps you
3212
+ # easily identify the stack operation . For example, if you create a
3213
+ # stack using the console, each stack event would be assigned the same
3214
+ # token in the following format:
3215
+ # `Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002`.
2391
3216
  # @return [String]
2392
3217
  #
2393
3218
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackEvent AWS API Documentation
@@ -2407,6 +3232,134 @@ module Aws::CloudFormation
2407
3232
  include Aws::Structure
2408
3233
  end
2409
3234
 
3235
+ # An AWS CloudFormation stack, in a specific account and region, that's
3236
+ # part of a stack set operation. A stack instance is a reference to an
3237
+ # attempted or actual stack in a given account within a given region. A
3238
+ # stack instance can exist without a stack—for example, if the stack
3239
+ # couldn't be created for some reason. A stack instance is associated
3240
+ # with only one stack set. Each stack instance contains the ID of its
3241
+ # associated stack set, as well as the ID of the actual stack and the
3242
+ # stack status.
3243
+ #
3244
+ # @!attribute [rw] stack_set_id
3245
+ # The name or unique ID of the stack set that the stack instance is
3246
+ # associated with.
3247
+ # @return [String]
3248
+ #
3249
+ # @!attribute [rw] region
3250
+ # The name of the AWS region that the stack instance is associated
3251
+ # with.
3252
+ # @return [String]
3253
+ #
3254
+ # @!attribute [rw] account
3255
+ # The name of the AWS account that the stack instance is associated
3256
+ # with.
3257
+ # @return [String]
3258
+ #
3259
+ # @!attribute [rw] stack_id
3260
+ # The ID of the stack instance.
3261
+ # @return [String]
3262
+ #
3263
+ # @!attribute [rw] status
3264
+ # The status of the stack instance, in terms of its synchronization
3265
+ # with its associated stack set.
3266
+ #
3267
+ # * `INOPERABLE`\: A `DeleteStackInstances` operation has failed and
3268
+ # left the stack in an unstable state. Stacks in this state are
3269
+ # excluded from further `UpdateStackSet` and `DeleteStackInstances`
3270
+ # operations. You might need to clean up the stack manually.
3271
+ #
3272
+ # * `OUTDATED`\: The stack isn't currently up to date with the stack
3273
+ # set because:
3274
+ #
3275
+ # * The associated stack failed during a `CreateStackSet` or
3276
+ # `UpdateStackSet` operation.
3277
+ #
3278
+ # * The stack was part of a `CreateStackSet` or `UpdateStackSet`
3279
+ # operation that failed or was stopped before the stack was
3280
+ # created or updated.
3281
+ #
3282
+ # * `CURRENT`\: The stack is currently up to date with the stack set.
3283
+ # @return [String]
3284
+ #
3285
+ # @!attribute [rw] status_reason
3286
+ # The explanation for the specific status code that is assigned to
3287
+ # this stack instance.
3288
+ # @return [String]
3289
+ #
3290
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackInstance AWS API Documentation
3291
+ #
3292
+ class StackInstance < Struct.new(
3293
+ :stack_set_id,
3294
+ :region,
3295
+ :account,
3296
+ :stack_id,
3297
+ :status,
3298
+ :status_reason)
3299
+ include Aws::Structure
3300
+ end
3301
+
3302
+ # The structure that contains summary information about a stack
3303
+ # instance.
3304
+ #
3305
+ # @!attribute [rw] stack_set_id
3306
+ # The name or unique ID of the stack set that the stack instance is
3307
+ # associated with.
3308
+ # @return [String]
3309
+ #
3310
+ # @!attribute [rw] region
3311
+ # The name of the AWS region that the stack instance is associated
3312
+ # with.
3313
+ # @return [String]
3314
+ #
3315
+ # @!attribute [rw] account
3316
+ # The name of the AWS account that the stack instance is associated
3317
+ # with.
3318
+ # @return [String]
3319
+ #
3320
+ # @!attribute [rw] stack_id
3321
+ # The ID of the stack instance.
3322
+ # @return [String]
3323
+ #
3324
+ # @!attribute [rw] status
3325
+ # The status of the stack instance, in terms of its synchronization
3326
+ # with its associated stack set.
3327
+ #
3328
+ # * `INOPERABLE`\: A `DeleteStackInstances` operation has failed and
3329
+ # left the stack in an unstable state. Stacks in this state are
3330
+ # excluded from further `UpdateStackSet` and `DeleteStackInstances`
3331
+ # operations. You might need to clean up the stack manually.
3332
+ #
3333
+ # * `OUTDATED`\: The stack isn't currently up to date with the stack
3334
+ # set because:
3335
+ #
3336
+ # * The associated stack failed during a `CreateStackSet` or
3337
+ # `UpdateStackSet` operation.
3338
+ #
3339
+ # * The stack was part of a `CreateStackSet` or `UpdateStackSet`
3340
+ # operation that failed or was stopped before the stack was
3341
+ # created or updated.
3342
+ #
3343
+ # * `CURRENT`\: The stack is currently up to date with the stack set.
3344
+ # @return [String]
3345
+ #
3346
+ # @!attribute [rw] status_reason
3347
+ # The explanation for the specific status code assigned to this stack
3348
+ # instance.
3349
+ # @return [String]
3350
+ #
3351
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackInstanceSummary AWS API Documentation
3352
+ #
3353
+ class StackInstanceSummary < Struct.new(
3354
+ :stack_set_id,
3355
+ :region,
3356
+ :account,
3357
+ :stack_id,
3358
+ :status,
3359
+ :status_reason)
3360
+ include Aws::Structure
3361
+ end
3362
+
2410
3363
  # The StackResource data type.
2411
3364
  #
2412
3365
  # @!attribute [rw] stack_name
@@ -2580,6 +3533,385 @@ module Aws::CloudFormation
2580
3533
  include Aws::Structure
2581
3534
  end
2582
3535
 
3536
+ # A structure that contains information about a stack set. A stack set
3537
+ # enables you to provision stacks into AWS accounts and across regions
3538
+ # by using a single CloudFormation template. In the stack set, you
3539
+ # specify the template to use, as well as any parameters and
3540
+ # capabilities that the template requires.
3541
+ #
3542
+ # @!attribute [rw] stack_set_name
3543
+ # The name that's associated with the stack set.
3544
+ # @return [String]
3545
+ #
3546
+ # @!attribute [rw] stack_set_id
3547
+ # The ID of the stack set.
3548
+ # @return [String]
3549
+ #
3550
+ # @!attribute [rw] description
3551
+ # A description of the stack set that you specify when the stack set
3552
+ # is created or updated.
3553
+ # @return [String]
3554
+ #
3555
+ # @!attribute [rw] status
3556
+ # The status of the stack set.
3557
+ # @return [String]
3558
+ #
3559
+ # @!attribute [rw] template_body
3560
+ # The structure that contains the body of the template that was used
3561
+ # to create or update the stack set.
3562
+ # @return [String]
3563
+ #
3564
+ # @!attribute [rw] parameters
3565
+ # A list of input parameters for a stack set.
3566
+ # @return [Array<Types::Parameter>]
3567
+ #
3568
+ # @!attribute [rw] capabilities
3569
+ # The capabilities that are allowed in the stack set. Some stack set
3570
+ # templates might include resources that can affect permissions in
3571
+ # your AWS account—for example, by creating new AWS Identity and
3572
+ # Access Management (IAM) users. For more information, see
3573
+ # [Acknowledging IAM Resources in AWS CloudFormation Templates.][1]
3574
+ #
3575
+ #
3576
+ #
3577
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities
3578
+ # @return [Array<String>]
3579
+ #
3580
+ # @!attribute [rw] tags
3581
+ # A list of tags that specify information about the stack set. A
3582
+ # maximum number of 50 tags can be specified.
3583
+ # @return [Array<Types::Tag>]
3584
+ #
3585
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackSet AWS API Documentation
3586
+ #
3587
+ class StackSet < Struct.new(
3588
+ :stack_set_name,
3589
+ :stack_set_id,
3590
+ :description,
3591
+ :status,
3592
+ :template_body,
3593
+ :parameters,
3594
+ :capabilities,
3595
+ :tags)
3596
+ include Aws::Structure
3597
+ end
3598
+
3599
+ # The structure that contains information about a stack set operation.
3600
+ #
3601
+ # @!attribute [rw] operation_id
3602
+ # The unique ID of a stack set operation.
3603
+ # @return [String]
3604
+ #
3605
+ # @!attribute [rw] stack_set_id
3606
+ # The ID of the stack set.
3607
+ # @return [String]
3608
+ #
3609
+ # @!attribute [rw] action
3610
+ # The type of stack set operation: `CREATE`, `UPDATE`, or `DELETE`.
3611
+ # Create and delete operations affect only the specified stack set
3612
+ # instances that are associated with the specified stack set. Update
3613
+ # operations affect both the stack set itself, as well as *all*
3614
+ # associated stack set instances.
3615
+ # @return [String]
3616
+ #
3617
+ # @!attribute [rw] status
3618
+ # The status of the operation.
3619
+ #
3620
+ # * `FAILED`\: The operation exceeded the specified failure tolerance.
3621
+ # The failure tolerance value that you've set for an operation is
3622
+ # applied for each region during stack create and update operations.
3623
+ # If the number of failed stacks within a region exceeds the failure
3624
+ # tolerance, the status of the operation in the region is set to
3625
+ # `FAILED`. This in turn sets the status of the operation as a whole
3626
+ # to `FAILED`, and AWS CloudFormation cancels the operation in any
3627
+ # remaining regions.
3628
+ #
3629
+ # * `RUNNING`\: The operation is currently being performed.
3630
+ #
3631
+ # * `STOPPED`\: The user has cancelled the operation.
3632
+ #
3633
+ # * `STOPPING`\: The operation is in the process of stopping, at user
3634
+ # request.
3635
+ #
3636
+ # * `SUCCEEDED`\: The operation completed creating or updating all the
3637
+ # specified stacks without exceeding the failure tolerance for the
3638
+ # operation.
3639
+ # @return [String]
3640
+ #
3641
+ # @!attribute [rw] operation_preferences
3642
+ # The preferences for how AWS CloudFormation performs this stack set
3643
+ # operation.
3644
+ # @return [Types::StackSetOperationPreferences]
3645
+ #
3646
+ # @!attribute [rw] retain_stacks
3647
+ # For stack set operations of action type `DELETE`, specifies whether
3648
+ # to remove the stack instances from the specified stack set, but
3649
+ # doesn't delete the stacks. You can't reassociate a retained stack,
3650
+ # or add an existing, saved stack to a new stack set.
3651
+ # @return [Boolean]
3652
+ #
3653
+ # @!attribute [rw] creation_timestamp
3654
+ # The time at which the operation was initiated. Note that the
3655
+ # creation times for the stack set operation might differ from the
3656
+ # creation time of the individual stacks themselves. This is because
3657
+ # AWS CloudFormation needs to perform preparatory work for the
3658
+ # operation, such as dispatching the work to the requested regions,
3659
+ # before actually creating the first stacks.
3660
+ # @return [Time]
3661
+ #
3662
+ # @!attribute [rw] end_timestamp
3663
+ # The time at which the stack set operation ended, across all accounts
3664
+ # and regions specified. Note that this doesn't necessarily mean that
3665
+ # the stack set operation was successful, or even attempted, in each
3666
+ # account or region.
3667
+ # @return [Time]
3668
+ #
3669
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackSetOperation AWS API Documentation
3670
+ #
3671
+ class StackSetOperation < Struct.new(
3672
+ :operation_id,
3673
+ :stack_set_id,
3674
+ :action,
3675
+ :status,
3676
+ :operation_preferences,
3677
+ :retain_stacks,
3678
+ :creation_timestamp,
3679
+ :end_timestamp)
3680
+ include Aws::Structure
3681
+ end
3682
+
3683
+ # The user-specified preferences for how AWS CloudFormation performs a
3684
+ # stack set operation.
3685
+ #
3686
+ # @note When making an API call, you may pass StackSetOperationPreferences
3687
+ # data as a hash:
3688
+ #
3689
+ # {
3690
+ # region_order: ["Region"],
3691
+ # failure_tolerance_count: 1,
3692
+ # failure_tolerance_percentage: 1,
3693
+ # max_concurrent_count: 1,
3694
+ # max_concurrent_percentage: 1,
3695
+ # }
3696
+ #
3697
+ # @!attribute [rw] region_order
3698
+ # The order of the regions in where you want to perform the stack
3699
+ # operation.
3700
+ # @return [Array<String>]
3701
+ #
3702
+ # @!attribute [rw] failure_tolerance_count
3703
+ # The number of accounts, per region, for which this operation can
3704
+ # fail before AWS CloudFormation stops the operation in that region.
3705
+ # If the operation is stopped in a region, AWS CloudFormation doesn't
3706
+ # attempt the operation in any subsequent regions.
3707
+ #
3708
+ # Conditional: You must specify either `FailureToleranceCount` or
3709
+ # `FailureTolerancePercentage` (but not both).
3710
+ # @return [Integer]
3711
+ #
3712
+ # @!attribute [rw] failure_tolerance_percentage
3713
+ # The percentage of accounts, per region, for which this stack
3714
+ # operation can fail before AWS CloudFormation stops the operation in
3715
+ # that region. If the operation is stopped in a region, AWS
3716
+ # CloudFormation doesn't attempt the operation in any subsequent
3717
+ # regions.
3718
+ #
3719
+ # When calculating the number of accounts based on the specified
3720
+ # percentage, AWS CloudFormation rounds *down* to the next whole
3721
+ # number.
3722
+ #
3723
+ # Conditional: You must specify either `FailureToleranceCount` or
3724
+ # `FailureTolerancePercentage`, but not both.
3725
+ # @return [Integer]
3726
+ #
3727
+ # @!attribute [rw] max_concurrent_count
3728
+ # The maximum number of accounts in which to perform this operation at
3729
+ # one time. This is dependent on the value of
3730
+ # `FailureToleranceCount`—`MaxConcurrentCount` is at most one more
3731
+ # than the `FailureToleranceCount` .
3732
+ #
3733
+ # Conditional: You must specify either `MaxConcurrentCount` or
3734
+ # `MaxConcurrentPercentage`, but not both.
3735
+ # @return [Integer]
3736
+ #
3737
+ # @!attribute [rw] max_concurrent_percentage
3738
+ # The maximum percentage of accounts in which to perform this
3739
+ # operation at one time.
3740
+ #
3741
+ # When calculating the number of accounts based on the specified
3742
+ # percentage, AWS CloudFormation rounds down to the next whole number.
3743
+ # This is true except in cases where rounding down would result is
3744
+ # zero. In this case, CloudFormation sets the number as one instead.
3745
+ #
3746
+ # Conditional: You must specify either `MaxConcurrentCount` or
3747
+ # `MaxConcurrentPercentage`, but not both.
3748
+ # @return [Integer]
3749
+ #
3750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackSetOperationPreferences AWS API Documentation
3751
+ #
3752
+ class StackSetOperationPreferences < Struct.new(
3753
+ :region_order,
3754
+ :failure_tolerance_count,
3755
+ :failure_tolerance_percentage,
3756
+ :max_concurrent_count,
3757
+ :max_concurrent_percentage)
3758
+ include Aws::Structure
3759
+ end
3760
+
3761
+ # The structure that contains information about a specified operation's
3762
+ # results for a given account in a given region.
3763
+ #
3764
+ # @!attribute [rw] account
3765
+ # The name of the AWS account for this operation result.
3766
+ # @return [String]
3767
+ #
3768
+ # @!attribute [rw] region
3769
+ # The name of the AWS region for this operation result.
3770
+ # @return [String]
3771
+ #
3772
+ # @!attribute [rw] status
3773
+ # The result status of the stack set operation for the given account
3774
+ # in the given region.
3775
+ #
3776
+ # * `CANCELLED`\: The operation in the specified account and region
3777
+ # has been cancelled. This is either because a user has stopped the
3778
+ # stack set operation, or because the failure tolerance of the stack
3779
+ # set operation has been exceeded.
3780
+ #
3781
+ # * `FAILED`\: The operation in the specified account and region
3782
+ # failed.
3783
+ #
3784
+ # If the stack set operation fails in enough accounts within a
3785
+ # region, the failure tolerance for the stack set operation as a
3786
+ # whole might be exceeded.
3787
+ #
3788
+ # * `RUNNING`\: The operation in the specified account and region is
3789
+ # currently in progress.
3790
+ #
3791
+ # * `PENDING`\: The operation in the specified account and region has
3792
+ # yet to start.
3793
+ #
3794
+ # * `SUCCEEDED`\: The operation in the specified account and region
3795
+ # completed successfully.
3796
+ # @return [String]
3797
+ #
3798
+ # @!attribute [rw] status_reason
3799
+ # The reason for the assigned result status.
3800
+ # @return [String]
3801
+ #
3802
+ # @!attribute [rw] account_gate_result
3803
+ # The results of the account gate function AWS CloudFormation invokes,
3804
+ # if present, before proceeding with stack set operations in an
3805
+ # account
3806
+ # @return [Types::AccountGateResult]
3807
+ #
3808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackSetOperationResultSummary AWS API Documentation
3809
+ #
3810
+ class StackSetOperationResultSummary < Struct.new(
3811
+ :account,
3812
+ :region,
3813
+ :status,
3814
+ :status_reason,
3815
+ :account_gate_result)
3816
+ include Aws::Structure
3817
+ end
3818
+
3819
+ # The structures that contain summary information about the specified
3820
+ # operation.
3821
+ #
3822
+ # @!attribute [rw] operation_id
3823
+ # The unique ID of the stack set operation.
3824
+ # @return [String]
3825
+ #
3826
+ # @!attribute [rw] action
3827
+ # The type of operation: `CREATE`, `UPDATE`, or `DELETE`. Create and
3828
+ # delete operations affect only the specified stack instances that are
3829
+ # associated with the specified stack set. Update operations affect
3830
+ # both the stack set itself as well as *all* associated stack set
3831
+ # instances.
3832
+ # @return [String]
3833
+ #
3834
+ # @!attribute [rw] status
3835
+ # The overall status of the operation.
3836
+ #
3837
+ # * `FAILED`\: The operation exceeded the specified failure tolerance.
3838
+ # The failure tolerance value that you've set for an operation is
3839
+ # applied for each region during stack create and update operations.
3840
+ # If the number of failed stacks within a region exceeds the failure
3841
+ # tolerance, the status of the operation in the region is set to
3842
+ # `FAILED`. This in turn sets the status of the operation as a whole
3843
+ # to `FAILED`, and AWS CloudFormation cancels the operation in any
3844
+ # remaining regions.
3845
+ #
3846
+ # * `RUNNING`\: The operation is currently being performed.
3847
+ #
3848
+ # * `STOPPED`\: The user has cancelled the operation.
3849
+ #
3850
+ # * `STOPPING`\: The operation is in the process of stopping, at user
3851
+ # request.
3852
+ #
3853
+ # * `SUCCEEDED`\: The operation completed creating or updating all the
3854
+ # specified stacks without exceeding the failure tolerance for the
3855
+ # operation.
3856
+ # @return [String]
3857
+ #
3858
+ # @!attribute [rw] creation_timestamp
3859
+ # The time at which the operation was initiated. Note that the
3860
+ # creation times for the stack set operation might differ from the
3861
+ # creation time of the individual stacks themselves. This is because
3862
+ # AWS CloudFormation needs to perform preparatory work for the
3863
+ # operation, such as dispatching the work to the requested regions,
3864
+ # before actually creating the first stacks.
3865
+ # @return [Time]
3866
+ #
3867
+ # @!attribute [rw] end_timestamp
3868
+ # The time at which the stack set operation ended, across all accounts
3869
+ # and regions specified. Note that this doesn't necessarily mean that
3870
+ # the stack set operation was successful, or even attempted, in each
3871
+ # account or region.
3872
+ # @return [Time]
3873
+ #
3874
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackSetOperationSummary AWS API Documentation
3875
+ #
3876
+ class StackSetOperationSummary < Struct.new(
3877
+ :operation_id,
3878
+ :action,
3879
+ :status,
3880
+ :creation_timestamp,
3881
+ :end_timestamp)
3882
+ include Aws::Structure
3883
+ end
3884
+
3885
+ # The structures that contain summary information about the specified
3886
+ # stack set.
3887
+ #
3888
+ # @!attribute [rw] stack_set_name
3889
+ # The name of the stack set.
3890
+ # @return [String]
3891
+ #
3892
+ # @!attribute [rw] stack_set_id
3893
+ # The ID of the stack set.
3894
+ # @return [String]
3895
+ #
3896
+ # @!attribute [rw] description
3897
+ # A description of the stack set that you specify when the stack set
3898
+ # is created or updated.
3899
+ # @return [String]
3900
+ #
3901
+ # @!attribute [rw] status
3902
+ # The status of the stack set.
3903
+ # @return [String]
3904
+ #
3905
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackSetSummary AWS API Documentation
3906
+ #
3907
+ class StackSetSummary < Struct.new(
3908
+ :stack_set_name,
3909
+ :stack_set_id,
3910
+ :description,
3911
+ :status)
3912
+ include Aws::Structure
3913
+ end
3914
+
2583
3915
  # The StackSummary Data Type
2584
3916
  #
2585
3917
  # @!attribute [rw] stack_id
@@ -2629,6 +3961,35 @@ module Aws::CloudFormation
2629
3961
  include Aws::Structure
2630
3962
  end
2631
3963
 
3964
+ # @note When making an API call, you may pass StopStackSetOperationInput
3965
+ # data as a hash:
3966
+ #
3967
+ # {
3968
+ # stack_set_name: "StackSetName", # required
3969
+ # operation_id: "ClientRequestToken", # required
3970
+ # }
3971
+ #
3972
+ # @!attribute [rw] stack_set_name
3973
+ # The name or unique ID of the stack set that you want to stop the
3974
+ # operation for.
3975
+ # @return [String]
3976
+ #
3977
+ # @!attribute [rw] operation_id
3978
+ # The ID of the stack operation.
3979
+ # @return [String]
3980
+ #
3981
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StopStackSetOperationInput AWS API Documentation
3982
+ #
3983
+ class StopStackSetOperationInput < Struct.new(
3984
+ :stack_set_name,
3985
+ :operation_id)
3986
+ include Aws::Structure
3987
+ end
3988
+
3989
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StopStackSetOperationOutput AWS API Documentation
3990
+ #
3991
+ class StopStackSetOperationOutput < Aws::EmptyStructure; end
3992
+
2632
3993
  # The Tag type enables you to specify a key-value pair that can be used
2633
3994
  # to store information about an AWS CloudFormation stack.
2634
3995
  #
@@ -2636,8 +3997,8 @@ module Aws::CloudFormation
2636
3997
  # data as a hash:
2637
3998
  #
2638
3999
  # {
2639
- # key: "TagKey",
2640
- # value: "TagValue",
4000
+ # key: "TagKey", # required
4001
+ # value: "TagValue", # required
2641
4002
  # }
2642
4003
  #
2643
4004
  # @!attribute [rw] key
@@ -2715,8 +4076,8 @@ module Aws::CloudFormation
2715
4076
  # notification_arns: ["NotificationARN"],
2716
4077
  # tags: [
2717
4078
  # {
2718
- # key: "TagKey",
2719
- # value: "TagValue",
4079
+ # key: "TagKey", # required
4080
+ # value: "TagValue", # required
2720
4081
  # },
2721
4082
  # ],
2722
4083
  # client_request_token: "ClientRequestToken",
@@ -2901,7 +4262,7 @@ module Aws::CloudFormation
2901
4262
  # @!attribute [rw] tags
2902
4263
  # Key-value pairs to associate with this stack. AWS CloudFormation
2903
4264
  # also propagates these tags to supported resources in the stack. You
2904
- # can specify a maximum number of 10 tags.
4265
+ # can specify a maximum number of 50 tags.
2905
4266
  #
2906
4267
  # If you don't specify this parameter, AWS CloudFormation doesn't
2907
4268
  # modify the stack's tags. If you specify an empty value, AWS
@@ -2914,6 +4275,20 @@ module Aws::CloudFormation
2914
4275
  # that you're not attempting to update a stack with the same name.
2915
4276
  # You might retry `UpdateStack` requests to ensure that AWS
2916
4277
  # CloudFormation successfully received them.
4278
+ #
4279
+ # All events triggered by a given stack operation are assigned the
4280
+ # same client request token, which you can use to track operations.
4281
+ # For example, if you execute a `CreateStack` operation with the token
4282
+ # `token1`, then all the `StackEvents` generated by that operation
4283
+ # will have `ClientRequestToken` set as `token1`.
4284
+ #
4285
+ # In the console, stack operations display the client request token on
4286
+ # the Events tab. Stack operations that are initiated from the console
4287
+ # use the token format *Console-StackOperation-ID*, which helps you
4288
+ # easily identify the stack operation . For example, if you create a
4289
+ # stack using the console, each stack event would be assigned the same
4290
+ # token in the following format:
4291
+ # `Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002`.
2917
4292
  # @return [String]
2918
4293
  #
2919
4294
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/UpdateStackInput AWS API Documentation
@@ -2950,6 +4325,219 @@ module Aws::CloudFormation
2950
4325
  include Aws::Structure
2951
4326
  end
2952
4327
 
4328
+ # @note When making an API call, you may pass UpdateStackSetInput
4329
+ # data as a hash:
4330
+ #
4331
+ # {
4332
+ # stack_set_name: "StackSetName", # required
4333
+ # description: "Description",
4334
+ # template_body: "TemplateBody",
4335
+ # template_url: "TemplateURL",
4336
+ # use_previous_template: false,
4337
+ # parameters: [
4338
+ # {
4339
+ # parameter_key: "ParameterKey",
4340
+ # parameter_value: "ParameterValue",
4341
+ # use_previous_value: false,
4342
+ # },
4343
+ # ],
4344
+ # capabilities: ["CAPABILITY_IAM"], # accepts CAPABILITY_IAM, CAPABILITY_NAMED_IAM
4345
+ # tags: [
4346
+ # {
4347
+ # key: "TagKey", # required
4348
+ # value: "TagValue", # required
4349
+ # },
4350
+ # ],
4351
+ # operation_preferences: {
4352
+ # region_order: ["Region"],
4353
+ # failure_tolerance_count: 1,
4354
+ # failure_tolerance_percentage: 1,
4355
+ # max_concurrent_count: 1,
4356
+ # max_concurrent_percentage: 1,
4357
+ # },
4358
+ # operation_id: "ClientRequestToken",
4359
+ # }
4360
+ #
4361
+ # @!attribute [rw] stack_set_name
4362
+ # The name or unique ID of the stack set that you want to update.
4363
+ # @return [String]
4364
+ #
4365
+ # @!attribute [rw] description
4366
+ # A brief description of updates that you are making.
4367
+ # @return [String]
4368
+ #
4369
+ # @!attribute [rw] template_body
4370
+ # The structure that contains the template body, with a minimum length
4371
+ # of 1 byte and a maximum length of 51,200 bytes. For more
4372
+ # information, see [Template Anatomy][1] in the AWS CloudFormation
4373
+ # User Guide.
4374
+ #
4375
+ # Conditional: You must specify only one of the following parameters:
4376
+ # `TemplateBody` or `TemplateURL`—or set `UsePreviousTemplate` to
4377
+ # true.
4378
+ #
4379
+ #
4380
+ #
4381
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
4382
+ # @return [String]
4383
+ #
4384
+ # @!attribute [rw] template_url
4385
+ # The location of the file that contains the template body. The URL
4386
+ # must point to a template (maximum size: 460,800 bytes) that is
4387
+ # located in an Amazon S3 bucket. For more information, see [Template
4388
+ # Anatomy][1] in the AWS CloudFormation User Guide.
4389
+ #
4390
+ # Conditional: You must specify only one of the following parameters:
4391
+ # `TemplateBody` or `TemplateURL`—or set `UsePreviousTemplate` to
4392
+ # true.
4393
+ #
4394
+ #
4395
+ #
4396
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html
4397
+ # @return [String]
4398
+ #
4399
+ # @!attribute [rw] use_previous_template
4400
+ # Use the existing template that's associated with the stack set that
4401
+ # you're updating.
4402
+ #
4403
+ # Conditional: You must specify only one of the following parameters:
4404
+ # `TemplateBody` or `TemplateURL`—or set `UsePreviousTemplate` to
4405
+ # true.
4406
+ # @return [Boolean]
4407
+ #
4408
+ # @!attribute [rw] parameters
4409
+ # A list of input parameters for the stack set template.
4410
+ # @return [Array<Types::Parameter>]
4411
+ #
4412
+ # @!attribute [rw] capabilities
4413
+ # A list of values that you must specify before AWS CloudFormation can
4414
+ # create certain stack sets. Some stack set templates might include
4415
+ # resources that can affect permissions in your AWS account—for
4416
+ # example, by creating new AWS Identity and Access Management (IAM)
4417
+ # users. For those stack sets, you must explicitly acknowledge their
4418
+ # capabilities by specifying this parameter.
4419
+ #
4420
+ # The only valid values are CAPABILITY\_IAM and
4421
+ # CAPABILITY\_NAMED\_IAM. The following resources require you to
4422
+ # specify this parameter:
4423
+ #
4424
+ # * AWS::IAM::AccessKey
4425
+ #
4426
+ # * AWS::IAM::Group
4427
+ #
4428
+ # * AWS::IAM::InstanceProfile
4429
+ #
4430
+ # * AWS::IAM::Policy
4431
+ #
4432
+ # * AWS::IAM::Role
4433
+ #
4434
+ # * AWS::IAM::User
4435
+ #
4436
+ # * AWS::IAM::UserToGroupAddition
4437
+ #
4438
+ # If your stack template contains these resources, we recommend that
4439
+ # you review all permissions that are associated with them and edit
4440
+ # their permissions if necessary.
4441
+ #
4442
+ # If you have IAM resources, you can specify either capability. If you
4443
+ # have IAM resources with custom names, you must specify
4444
+ # CAPABILITY\_NAMED\_IAM. If you don't specify this parameter, this
4445
+ # action returns an `InsufficientCapabilities` error.
4446
+ #
4447
+ # For more information, see [Acknowledging IAM Resources in AWS
4448
+ # CloudFormation Templates.][1]
4449
+ #
4450
+ #
4451
+ #
4452
+ # [1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities
4453
+ # @return [Array<String>]
4454
+ #
4455
+ # @!attribute [rw] tags
4456
+ # The key-value pairs to associate with this stack set and the stacks
4457
+ # created from it. AWS CloudFormation also propagates these tags to
4458
+ # supported resources that are created in the stacks. You can specify
4459
+ # a maximum number of 50 tags.
4460
+ #
4461
+ # If you specify tags for this parameter, those tags replace any list
4462
+ # of tags that are currently associated with this stack set. This
4463
+ # means:
4464
+ #
4465
+ # * If you don't specify this parameter, AWS CloudFormation doesn't
4466
+ # modify the stack's tags.
4467
+ #
4468
+ # * If you specify *any* tags using this parameter, you must specify
4469
+ # *all* the tags that you want associated with this stack set, even
4470
+ # tags you've specifed before (for example, when creating the stack
4471
+ # set or during a previous update of the stack set.). Any tags that
4472
+ # you don't include in the updated list of tags are removed from
4473
+ # the stack set, and therefore from the stacks and resources as
4474
+ # well.
4475
+ #
4476
+ # * If you specify an empty value, AWS CloudFormation removes all
4477
+ # currently associated tags.
4478
+ #
4479
+ # If you specify new tags as part of an `UpdateStackSet` action, AWS
4480
+ # CloudFormation checks to see if you have the required IAM permission
4481
+ # to tag resources. If you omit tags that are currently associated
4482
+ # with the stack set from the list of tags you specify, AWS
4483
+ # CloudFormation assumes that you want to remove those tags from the
4484
+ # stack set, and checks to see if you have permission to untag
4485
+ # resources. If you don't have the necessary permission(s), the
4486
+ # entire `UpdateStackSet` action fails with an `access denied` error,
4487
+ # and the stack set is not updated.
4488
+ # @return [Array<Types::Tag>]
4489
+ #
4490
+ # @!attribute [rw] operation_preferences
4491
+ # Preferences for how AWS CloudFormation performs this stack set
4492
+ # operation.
4493
+ # @return [Types::StackSetOperationPreferences]
4494
+ #
4495
+ # @!attribute [rw] operation_id
4496
+ # The unique ID for this stack set operation.
4497
+ #
4498
+ # The operation ID also functions as an idempotency token, to ensure
4499
+ # that AWS CloudFormation performs the stack set operation only once,
4500
+ # even if you retry the request multiple times. You might retry stack
4501
+ # set operation requests to ensure that AWS CloudFormation
4502
+ # successfully received them.
4503
+ #
4504
+ # If you don't specify an operation ID, AWS CloudFormation generates
4505
+ # one automatically.
4506
+ #
4507
+ # Repeating this stack set operation with a new operation ID retries
4508
+ # all stack instances whose status is `OUTDATED`.
4509
+ #
4510
+ # **A suitable default value is auto-generated.** You should normally
4511
+ # not need to pass this option.
4512
+ # @return [String]
4513
+ #
4514
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/UpdateStackSetInput AWS API Documentation
4515
+ #
4516
+ class UpdateStackSetInput < Struct.new(
4517
+ :stack_set_name,
4518
+ :description,
4519
+ :template_body,
4520
+ :template_url,
4521
+ :use_previous_template,
4522
+ :parameters,
4523
+ :capabilities,
4524
+ :tags,
4525
+ :operation_preferences,
4526
+ :operation_id)
4527
+ include Aws::Structure
4528
+ end
4529
+
4530
+ # @!attribute [rw] operation_id
4531
+ # The unique ID for this stack set operation.
4532
+ # @return [String]
4533
+ #
4534
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/UpdateStackSetOutput AWS API Documentation
4535
+ #
4536
+ class UpdateStackSetOutput < Struct.new(
4537
+ :operation_id)
4538
+ include Aws::Structure
4539
+ end
4540
+
2953
4541
  # The input for ValidateTemplate action.
2954
4542
  #
2955
4543
  # @note When making an API call, you may pass ValidateTemplateInput