aws-sdk-cloudformation 1.29.0 → 1.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,6 +22,8 @@ module Aws::CloudFormation
22
22
  AllowedValues = Shapes::ListShape.new(name: 'AllowedValues')
23
23
  AlreadyExistsException = Shapes::StructureShape.new(name: 'AlreadyExistsException')
24
24
  Arn = Shapes::StringShape.new(name: 'Arn')
25
+ AutoDeployment = Shapes::StructureShape.new(name: 'AutoDeployment')
26
+ AutoDeploymentNullable = Shapes::BooleanShape.new(name: 'AutoDeploymentNullable')
25
27
  BoxedInteger = Shapes::IntegerShape.new(name: 'BoxedInteger')
26
28
  BoxedMaxResults = Shapes::IntegerShape.new(name: 'BoxedMaxResults')
27
29
  CFNRegistryException = Shapes::StructureShape.new(name: 'CFNRegistryException')
@@ -66,6 +68,7 @@ module Aws::CloudFormation
66
68
  DeleteStackSetInput = Shapes::StructureShape.new(name: 'DeleteStackSetInput')
67
69
  DeleteStackSetOutput = Shapes::StructureShape.new(name: 'DeleteStackSetOutput')
68
70
  DeletionTime = Shapes::TimestampShape.new(name: 'DeletionTime')
71
+ DeploymentTargets = Shapes::StructureShape.new(name: 'DeploymentTargets')
69
72
  DeprecatedStatus = Shapes::StringShape.new(name: 'DeprecatedStatus')
70
73
  DeregisterTypeInput = Shapes::StructureShape.new(name: 'DeregisterTypeInput')
71
74
  DeregisterTypeOutput = Shapes::StructureShape.new(name: 'DeregisterTypeOutput')
@@ -186,6 +189,8 @@ module Aws::CloudFormation
186
189
  OperationStatus = Shapes::StringShape.new(name: 'OperationStatus')
187
190
  OperationStatusCheckFailedException = Shapes::StructureShape.new(name: 'OperationStatusCheckFailedException')
188
191
  OptionalSecureUrl = Shapes::StringShape.new(name: 'OptionalSecureUrl')
192
+ OrganizationalUnitId = Shapes::StringShape.new(name: 'OrganizationalUnitId')
193
+ OrganizationalUnitIdList = Shapes::ListShape.new(name: 'OrganizationalUnitIdList')
189
194
  Output = Shapes::StructureShape.new(name: 'Output')
190
195
  OutputKey = Shapes::StringShape.new(name: 'OutputKey')
191
196
  OutputValue = Shapes::StringShape.new(name: 'OutputValue')
@@ -198,6 +203,7 @@ module Aws::CloudFormation
198
203
  ParameterType = Shapes::StringShape.new(name: 'ParameterType')
199
204
  ParameterValue = Shapes::StringShape.new(name: 'ParameterValue')
200
205
  Parameters = Shapes::ListShape.new(name: 'Parameters')
206
+ PermissionModels = Shapes::StringShape.new(name: 'PermissionModels')
201
207
  PhysicalResourceId = Shapes::StringShape.new(name: 'PhysicalResourceId')
202
208
  PhysicalResourceIdContext = Shapes::ListShape.new(name: 'PhysicalResourceIdContext')
203
209
  PhysicalResourceIdContextKeyValuePair = Shapes::StructureShape.new(name: 'PhysicalResourceIdContextKeyValuePair')
@@ -249,6 +255,7 @@ module Aws::CloudFormation
249
255
  RetainResources = Shapes::ListShape.new(name: 'RetainResources')
250
256
  RetainStacks = Shapes::BooleanShape.new(name: 'RetainStacks')
251
257
  RetainStacksNullable = Shapes::BooleanShape.new(name: 'RetainStacksNullable')
258
+ RetainStacksOnAccountRemovalNullable = Shapes::BooleanShape.new(name: 'RetainStacksOnAccountRemovalNullable')
252
259
  RoleARN = Shapes::StringShape.new(name: 'RoleARN')
253
260
  RoleArn = Shapes::StringShape.new(name: 'RoleArn')
254
261
  RollbackConfiguration = Shapes::StructureShape.new(name: 'RollbackConfiguration')
@@ -382,6 +389,10 @@ module Aws::CloudFormation
382
389
 
383
390
  AllowedValues.member = Shapes::ShapeRef.new(shape: AllowedValue)
384
391
 
392
+ AutoDeployment.add_member(:enabled, Shapes::ShapeRef.new(shape: AutoDeploymentNullable, location_name: "Enabled"))
393
+ AutoDeployment.add_member(:retain_stacks_on_account_removal, Shapes::ShapeRef.new(shape: RetainStacksOnAccountRemovalNullable, location_name: "RetainStacksOnAccountRemoval"))
394
+ AutoDeployment.struct_class = Types::AutoDeployment
395
+
385
396
  CFNRegistryException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
386
397
  CFNRegistryException.struct_class = Types::CFNRegistryException
387
398
 
@@ -460,7 +471,8 @@ module Aws::CloudFormation
460
471
  CreateStackInput.struct_class = Types::CreateStackInput
461
472
 
462
473
  CreateStackInstancesInput.add_member(:stack_set_name, Shapes::ShapeRef.new(shape: StackSetName, required: true, location_name: "StackSetName"))
463
- CreateStackInstancesInput.add_member(:accounts, Shapes::ShapeRef.new(shape: AccountList, required: true, location_name: "Accounts"))
474
+ CreateStackInstancesInput.add_member(:accounts, Shapes::ShapeRef.new(shape: AccountList, location_name: "Accounts"))
475
+ CreateStackInstancesInput.add_member(:deployment_targets, Shapes::ShapeRef.new(shape: DeploymentTargets, location_name: "DeploymentTargets"))
464
476
  CreateStackInstancesInput.add_member(:regions, Shapes::ShapeRef.new(shape: RegionList, required: true, location_name: "Regions"))
465
477
  CreateStackInstancesInput.add_member(:parameter_overrides, Shapes::ShapeRef.new(shape: Parameters, location_name: "ParameterOverrides"))
466
478
  CreateStackInstancesInput.add_member(:operation_preferences, Shapes::ShapeRef.new(shape: StackSetOperationPreferences, location_name: "OperationPreferences"))
@@ -482,6 +494,8 @@ module Aws::CloudFormation
482
494
  CreateStackSetInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
483
495
  CreateStackSetInput.add_member(:administration_role_arn, Shapes::ShapeRef.new(shape: RoleARN, location_name: "AdministrationRoleARN"))
484
496
  CreateStackSetInput.add_member(:execution_role_name, Shapes::ShapeRef.new(shape: ExecutionRoleName, location_name: "ExecutionRoleName"))
497
+ CreateStackSetInput.add_member(:permission_model, Shapes::ShapeRef.new(shape: PermissionModels, location_name: "PermissionModel"))
498
+ CreateStackSetInput.add_member(:auto_deployment, Shapes::ShapeRef.new(shape: AutoDeployment, location_name: "AutoDeployment"))
485
499
  CreateStackSetInput.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "ClientRequestToken", metadata: {"idempotencyToken"=>true}))
486
500
  CreateStackSetInput.struct_class = Types::CreateStackSetInput
487
501
 
@@ -501,7 +515,8 @@ module Aws::CloudFormation
501
515
  DeleteStackInput.struct_class = Types::DeleteStackInput
502
516
 
503
517
  DeleteStackInstancesInput.add_member(:stack_set_name, Shapes::ShapeRef.new(shape: StackSetName, required: true, location_name: "StackSetName"))
504
- DeleteStackInstancesInput.add_member(:accounts, Shapes::ShapeRef.new(shape: AccountList, required: true, location_name: "Accounts"))
518
+ DeleteStackInstancesInput.add_member(:accounts, Shapes::ShapeRef.new(shape: AccountList, location_name: "Accounts"))
519
+ DeleteStackInstancesInput.add_member(:deployment_targets, Shapes::ShapeRef.new(shape: DeploymentTargets, location_name: "DeploymentTargets"))
505
520
  DeleteStackInstancesInput.add_member(:regions, Shapes::ShapeRef.new(shape: RegionList, required: true, location_name: "Regions"))
506
521
  DeleteStackInstancesInput.add_member(:operation_preferences, Shapes::ShapeRef.new(shape: StackSetOperationPreferences, location_name: "OperationPreferences"))
507
522
  DeleteStackInstancesInput.add_member(:retain_stacks, Shapes::ShapeRef.new(shape: RetainStacks, required: true, location_name: "RetainStacks"))
@@ -516,6 +531,10 @@ module Aws::CloudFormation
516
531
 
517
532
  DeleteStackSetOutput.struct_class = Types::DeleteStackSetOutput
518
533
 
534
+ DeploymentTargets.add_member(:accounts, Shapes::ShapeRef.new(shape: AccountList, location_name: "Accounts"))
535
+ DeploymentTargets.add_member(:organizational_unit_ids, Shapes::ShapeRef.new(shape: OrganizationalUnitIdList, location_name: "OrganizationalUnitIds"))
536
+ DeploymentTargets.struct_class = Types::DeploymentTargets
537
+
519
538
  DeregisterTypeInput.add_member(:arn, Shapes::ShapeRef.new(shape: PrivateTypeArn, location_name: "Arn"))
520
539
  DeregisterTypeInput.add_member(:type, Shapes::ShapeRef.new(shape: RegistryType, location_name: "Type"))
521
540
  DeregisterTypeInput.add_member(:type_name, Shapes::ShapeRef.new(shape: TypeName, location_name: "TypeName"))
@@ -859,6 +878,8 @@ module Aws::CloudFormation
859
878
 
860
879
  NotificationARNs.member = Shapes::ShapeRef.new(shape: NotificationARN)
861
880
 
881
+ OrganizationalUnitIdList.member = Shapes::ShapeRef.new(shape: OrganizationalUnitId)
882
+
862
883
  Output.add_member(:output_key, Shapes::ShapeRef.new(shape: OutputKey, location_name: "OutputKey"))
863
884
  Output.add_member(:output_value, Shapes::ShapeRef.new(shape: OutputValue, location_name: "OutputValue"))
864
885
  Output.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
@@ -1060,6 +1081,7 @@ module Aws::CloudFormation
1060
1081
  StackInstance.add_member(:parameter_overrides, Shapes::ShapeRef.new(shape: Parameters, location_name: "ParameterOverrides"))
1061
1082
  StackInstance.add_member(:status, Shapes::ShapeRef.new(shape: StackInstanceStatus, location_name: "Status"))
1062
1083
  StackInstance.add_member(:status_reason, Shapes::ShapeRef.new(shape: Reason, location_name: "StatusReason"))
1084
+ StackInstance.add_member(:organizational_unit_id, Shapes::ShapeRef.new(shape: OrganizationalUnitId, location_name: "OrganizationalUnitId"))
1063
1085
  StackInstance.add_member(:drift_status, Shapes::ShapeRef.new(shape: StackDriftStatus, location_name: "DriftStatus"))
1064
1086
  StackInstance.add_member(:last_drift_check_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastDriftCheckTimestamp"))
1065
1087
  StackInstance.struct_class = Types::StackInstance
@@ -1072,6 +1094,7 @@ module Aws::CloudFormation
1072
1094
  StackInstanceSummary.add_member(:stack_id, Shapes::ShapeRef.new(shape: StackId, location_name: "StackId"))
1073
1095
  StackInstanceSummary.add_member(:status, Shapes::ShapeRef.new(shape: StackInstanceStatus, location_name: "Status"))
1074
1096
  StackInstanceSummary.add_member(:status_reason, Shapes::ShapeRef.new(shape: Reason, location_name: "StatusReason"))
1097
+ StackInstanceSummary.add_member(:organizational_unit_id, Shapes::ShapeRef.new(shape: OrganizationalUnitId, location_name: "OrganizationalUnitId"))
1075
1098
  StackInstanceSummary.add_member(:drift_status, Shapes::ShapeRef.new(shape: StackDriftStatus, location_name: "DriftStatus"))
1076
1099
  StackInstanceSummary.add_member(:last_drift_check_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastDriftCheckTimestamp"))
1077
1100
  StackInstanceSummary.struct_class = Types::StackInstanceSummary
@@ -1150,6 +1173,9 @@ module Aws::CloudFormation
1150
1173
  StackSet.add_member(:administration_role_arn, Shapes::ShapeRef.new(shape: RoleARN, location_name: "AdministrationRoleARN"))
1151
1174
  StackSet.add_member(:execution_role_name, Shapes::ShapeRef.new(shape: ExecutionRoleName, location_name: "ExecutionRoleName"))
1152
1175
  StackSet.add_member(:stack_set_drift_detection_details, Shapes::ShapeRef.new(shape: StackSetDriftDetectionDetails, location_name: "StackSetDriftDetectionDetails"))
1176
+ StackSet.add_member(:auto_deployment, Shapes::ShapeRef.new(shape: AutoDeployment, location_name: "AutoDeployment"))
1177
+ StackSet.add_member(:permission_model, Shapes::ShapeRef.new(shape: PermissionModels, location_name: "PermissionModel"))
1178
+ StackSet.add_member(:organizational_unit_ids, Shapes::ShapeRef.new(shape: OrganizationalUnitIdList, location_name: "OrganizationalUnitIds"))
1153
1179
  StackSet.struct_class = Types::StackSet
1154
1180
 
1155
1181
  StackSetDriftDetectionDetails.add_member(:drift_status, Shapes::ShapeRef.new(shape: StackSetDriftStatus, location_name: "DriftStatus"))
@@ -1172,6 +1198,7 @@ module Aws::CloudFormation
1172
1198
  StackSetOperation.add_member(:execution_role_name, Shapes::ShapeRef.new(shape: ExecutionRoleName, location_name: "ExecutionRoleName"))
1173
1199
  StackSetOperation.add_member(:creation_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreationTimestamp"))
1174
1200
  StackSetOperation.add_member(:end_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "EndTimestamp"))
1201
+ StackSetOperation.add_member(:deployment_targets, Shapes::ShapeRef.new(shape: DeploymentTargets, location_name: "DeploymentTargets"))
1175
1202
  StackSetOperation.add_member(:stack_set_drift_detection_details, Shapes::ShapeRef.new(shape: StackSetDriftDetectionDetails, location_name: "StackSetDriftDetectionDetails"))
1176
1203
  StackSetOperation.struct_class = Types::StackSetOperation
1177
1204
 
@@ -1189,6 +1216,7 @@ module Aws::CloudFormation
1189
1216
  StackSetOperationResultSummary.add_member(:status, Shapes::ShapeRef.new(shape: StackSetOperationResultStatus, location_name: "Status"))
1190
1217
  StackSetOperationResultSummary.add_member(:status_reason, Shapes::ShapeRef.new(shape: Reason, location_name: "StatusReason"))
1191
1218
  StackSetOperationResultSummary.add_member(:account_gate_result, Shapes::ShapeRef.new(shape: AccountGateResult, location_name: "AccountGateResult"))
1219
+ StackSetOperationResultSummary.add_member(:organizational_unit_id, Shapes::ShapeRef.new(shape: OrganizationalUnitId, location_name: "OrganizationalUnitId"))
1192
1220
  StackSetOperationResultSummary.struct_class = Types::StackSetOperationResultSummary
1193
1221
 
1194
1222
  StackSetOperationSummaries.member = Shapes::ShapeRef.new(shape: StackSetOperationSummary)
@@ -1206,6 +1234,8 @@ module Aws::CloudFormation
1206
1234
  StackSetSummary.add_member(:stack_set_id, Shapes::ShapeRef.new(shape: StackSetId, location_name: "StackSetId"))
1207
1235
  StackSetSummary.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
1208
1236
  StackSetSummary.add_member(:status, Shapes::ShapeRef.new(shape: StackSetStatus, location_name: "Status"))
1237
+ StackSetSummary.add_member(:auto_deployment, Shapes::ShapeRef.new(shape: AutoDeployment, location_name: "AutoDeployment"))
1238
+ StackSetSummary.add_member(:permission_model, Shapes::ShapeRef.new(shape: PermissionModels, location_name: "PermissionModel"))
1209
1239
  StackSetSummary.add_member(:drift_status, Shapes::ShapeRef.new(shape: StackDriftStatus, location_name: "DriftStatus"))
1210
1240
  StackSetSummary.add_member(:last_drift_check_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastDriftCheckTimestamp"))
1211
1241
  StackSetSummary.struct_class = Types::StackSetSummary
@@ -1292,7 +1322,8 @@ module Aws::CloudFormation
1292
1322
  UpdateStackInput.struct_class = Types::UpdateStackInput
1293
1323
 
1294
1324
  UpdateStackInstancesInput.add_member(:stack_set_name, Shapes::ShapeRef.new(shape: StackSetNameOrId, required: true, location_name: "StackSetName"))
1295
- UpdateStackInstancesInput.add_member(:accounts, Shapes::ShapeRef.new(shape: AccountList, required: true, location_name: "Accounts"))
1325
+ UpdateStackInstancesInput.add_member(:accounts, Shapes::ShapeRef.new(shape: AccountList, location_name: "Accounts"))
1326
+ UpdateStackInstancesInput.add_member(:deployment_targets, Shapes::ShapeRef.new(shape: DeploymentTargets, location_name: "DeploymentTargets"))
1296
1327
  UpdateStackInstancesInput.add_member(:regions, Shapes::ShapeRef.new(shape: RegionList, required: true, location_name: "Regions"))
1297
1328
  UpdateStackInstancesInput.add_member(:parameter_overrides, Shapes::ShapeRef.new(shape: Parameters, location_name: "ParameterOverrides"))
1298
1329
  UpdateStackInstancesInput.add_member(:operation_preferences, Shapes::ShapeRef.new(shape: StackSetOperationPreferences, location_name: "OperationPreferences"))
@@ -1316,6 +1347,9 @@ module Aws::CloudFormation
1316
1347
  UpdateStackSetInput.add_member(:operation_preferences, Shapes::ShapeRef.new(shape: StackSetOperationPreferences, location_name: "OperationPreferences"))
1317
1348
  UpdateStackSetInput.add_member(:administration_role_arn, Shapes::ShapeRef.new(shape: RoleARN, location_name: "AdministrationRoleARN"))
1318
1349
  UpdateStackSetInput.add_member(:execution_role_name, Shapes::ShapeRef.new(shape: ExecutionRoleName, location_name: "ExecutionRoleName"))
1350
+ UpdateStackSetInput.add_member(:deployment_targets, Shapes::ShapeRef.new(shape: DeploymentTargets, location_name: "DeploymentTargets"))
1351
+ UpdateStackSetInput.add_member(:permission_model, Shapes::ShapeRef.new(shape: PermissionModels, location_name: "PermissionModel"))
1352
+ UpdateStackSetInput.add_member(:auto_deployment, Shapes::ShapeRef.new(shape: AutoDeployment, location_name: "AutoDeployment"))
1319
1353
  UpdateStackSetInput.add_member(:operation_id, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "OperationId", metadata: {"idempotencyToken"=>true}))
1320
1354
  UpdateStackSetInput.add_member(:accounts, Shapes::ShapeRef.new(shape: AccountList, location_name: "Accounts"))
1321
1355
  UpdateStackSetInput.add_member(:regions, Shapes::ShapeRef.new(shape: RegionList, location_name: "Regions"))
@@ -21,6 +21,7 @@ module Aws::CloudFormation
21
21
  @id = extract_id(args, options)
22
22
  @data = options.delete(:data)
23
23
  @client = options.delete(:client) || Client.new(options)
24
+ @waiter_block_warned = false
24
25
  end
25
26
 
26
27
  # @!group Read-Only Attributes
@@ -21,6 +21,7 @@ module Aws::CloudFormation
21
21
  @name = extract_name(args, options)
22
22
  @data = options.delete(:data)
23
23
  @client = options.delete(:client) || Client.new(options)
24
+ @waiter_block_warned = false
24
25
  end
25
26
 
26
27
  # @!group Read-Only Attributes
@@ -24,6 +24,7 @@ module Aws::CloudFormation
24
24
  @logical_id = extract_logical_id(args, options)
25
25
  @data = options.delete(:data)
26
26
  @client = options.delete(:client) || Client.new(options)
27
+ @waiter_block_warned = false
27
28
  end
28
29
 
29
30
  # @!group Read-Only Attributes
@@ -24,6 +24,7 @@ module Aws::CloudFormation
24
24
  @logical_id = extract_logical_id(args, options)
25
25
  @data = options.delete(:data)
26
26
  @client = options.delete(:client) || Client.new(options)
27
+ @waiter_block_warned = false
27
28
  end
28
29
 
29
30
  # @!group Read-Only Attributes
@@ -109,6 +109,40 @@ module Aws::CloudFormation
109
109
  include Aws::Structure
110
110
  end
111
111
 
112
+ # \[`Service-managed` permissions\] Describes whether StackSets
113
+ # automatically deploys to AWS Organizations accounts that are added to
114
+ # a target organization or organizational unit (OU).
115
+ #
116
+ # @note When making an API call, you may pass AutoDeployment
117
+ # data as a hash:
118
+ #
119
+ # {
120
+ # enabled: false,
121
+ # retain_stacks_on_account_removal: false,
122
+ # }
123
+ #
124
+ # @!attribute [rw] enabled
125
+ # If set to `true`, StackSets automatically deploys additional stack
126
+ # instances to AWS Organizations accounts that are added to a target
127
+ # organization or organizational unit (OU) in the specified Regions.
128
+ # If an account is removed from a target organization or OU, StackSets
129
+ # deletes stack instances from the account in the specified Regions.
130
+ # @return [Boolean]
131
+ #
132
+ # @!attribute [rw] retain_stacks_on_account_removal
133
+ # If set to `true`, stack resources are retained when an account is
134
+ # removed from a target organization or OU. If set to `false`, stack
135
+ # resources are deleted. Specify only if `Enabled` is set to `True`.
136
+ # @return [Boolean]
137
+ #
138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/AutoDeployment AWS API Documentation
139
+ #
140
+ class AutoDeployment < Struct.new(
141
+ :enabled,
142
+ :retain_stacks_on_account_removal)
143
+ include Aws::Structure
144
+ end
145
+
112
146
  # An error occurred during a CloudFormation registry operation.
113
147
  #
114
148
  # @!attribute [rw] message
@@ -1006,7 +1040,11 @@ module Aws::CloudFormation
1006
1040
  #
1007
1041
  # {
1008
1042
  # stack_set_name: "StackSetName", # required
1009
- # accounts: ["Account"], # required
1043
+ # accounts: ["Account"],
1044
+ # deployment_targets: {
1045
+ # accounts: ["Account"],
1046
+ # organizational_unit_ids: ["OrganizationalUnitId"],
1047
+ # },
1010
1048
  # regions: ["Region"], # required
1011
1049
  # parameter_overrides: [
1012
1050
  # {
@@ -1032,10 +1070,20 @@ module Aws::CloudFormation
1032
1070
  # @return [String]
1033
1071
  #
1034
1072
  # @!attribute [rw] accounts
1035
- # The names of one or more AWS accounts that you want to create stack
1036
- # instances in the specified region(s) for.
1073
+ # \[Self-managed permissions\] The names of one or more AWS accounts
1074
+ # that you want to create stack instances in the specified region(s)
1075
+ # for.
1076
+ #
1077
+ # You can specify `Accounts` or `DeploymentTargets`, but not both.
1037
1078
  # @return [Array<String>]
1038
1079
  #
1080
+ # @!attribute [rw] deployment_targets
1081
+ # \[`Service-managed` permissions\] The AWS Organizations accounts for
1082
+ # which to create stack instances in the specified Regions.
1083
+ #
1084
+ # You can specify `Accounts` or `DeploymentTargets`, but not both.
1085
+ # @return [Types::DeploymentTargets]
1086
+ #
1039
1087
  # @!attribute [rw] regions
1040
1088
  # The names of one or more regions where you want to create stack
1041
1089
  # instances using the specified AWS account(s).
@@ -1110,6 +1158,7 @@ module Aws::CloudFormation
1110
1158
  class CreateStackInstancesInput < Struct.new(
1111
1159
  :stack_set_name,
1112
1160
  :accounts,
1161
+ :deployment_targets,
1113
1162
  :regions,
1114
1163
  :parameter_overrides,
1115
1164
  :operation_preferences,
@@ -1166,6 +1215,11 @@ module Aws::CloudFormation
1166
1215
  # ],
1167
1216
  # administration_role_arn: "RoleARN",
1168
1217
  # execution_role_name: "ExecutionRoleName",
1218
+ # permission_model: "SERVICE_MANAGED", # accepts SERVICE_MANAGED, SELF_MANAGED
1219
+ # auto_deployment: {
1220
+ # enabled: false,
1221
+ # retain_stacks_on_account_removal: false,
1222
+ # },
1169
1223
  # client_request_token: "ClientRequestToken",
1170
1224
  # }
1171
1225
  #
@@ -1333,6 +1387,36 @@ module Aws::CloudFormation
1333
1387
  # their stack sets.
1334
1388
  # @return [String]
1335
1389
  #
1390
+ # @!attribute [rw] permission_model
1391
+ # Describes how the IAM roles required for stack set operations are
1392
+ # created. By default, `SELF-MANAGED` is specified.
1393
+ #
1394
+ # * With `self-managed` permissions, you must create the administrator
1395
+ # and execution roles required to deploy to target accounts. For
1396
+ # more information, see [Grant Self-Managed Stack Set
1397
+ # Permissions][1].
1398
+ #
1399
+ # * With `service-managed` permissions, StackSets automatically
1400
+ # creates the IAM roles required to deploy to accounts managed by
1401
+ # AWS Organizations. For more information, see [Grant
1402
+ # Service-Managed Stack Set Permissions][2].
1403
+ #
1404
+ #
1405
+ #
1406
+ # [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html
1407
+ # [2]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html
1408
+ # @return [String]
1409
+ #
1410
+ # @!attribute [rw] auto_deployment
1411
+ # Describes whether StackSets automatically deploys to AWS
1412
+ # Organizations accounts that are added to the target organization or
1413
+ # organizational unit (OU). Specify only if `PermissionModel` is
1414
+ # `SERVICE_MANAGED`.
1415
+ #
1416
+ # If you specify `AutoDeployment`, do not specify `DeploymentTargets`
1417
+ # or `Regions`.
1418
+ # @return [Types::AutoDeployment]
1419
+ #
1336
1420
  # @!attribute [rw] client_request_token
1337
1421
  # A unique identifier for this `CreateStackSet` request. Specify this
1338
1422
  # token if you plan to retry requests so that AWS CloudFormation knows
@@ -1359,6 +1443,8 @@ module Aws::CloudFormation
1359
1443
  :tags,
1360
1444
  :administration_role_arn,
1361
1445
  :execution_role_name,
1446
+ :permission_model,
1447
+ :auto_deployment,
1362
1448
  :client_request_token)
1363
1449
  include Aws::Structure
1364
1450
  end
@@ -1483,7 +1569,11 @@ module Aws::CloudFormation
1483
1569
  #
1484
1570
  # {
1485
1571
  # stack_set_name: "StackSetName", # required
1486
- # accounts: ["Account"], # required
1572
+ # accounts: ["Account"],
1573
+ # deployment_targets: {
1574
+ # accounts: ["Account"],
1575
+ # organizational_unit_ids: ["OrganizationalUnitId"],
1576
+ # },
1487
1577
  # regions: ["Region"], # required
1488
1578
  # operation_preferences: {
1489
1579
  # region_order: ["Region"],
@@ -1502,10 +1592,19 @@ module Aws::CloudFormation
1502
1592
  # @return [String]
1503
1593
  #
1504
1594
  # @!attribute [rw] accounts
1505
- # The names of the AWS accounts that you want to delete stack
1506
- # instances for.
1595
+ # \[Self-managed permissions\] The names of the AWS accounts that you
1596
+ # want to delete stack instances for.
1597
+ #
1598
+ # You can specify `Accounts` or `DeploymentTargets`, but not both.
1507
1599
  # @return [Array<String>]
1508
1600
  #
1601
+ # @!attribute [rw] deployment_targets
1602
+ # \[`Service-managed` permissions\] The AWS Organizations accounts
1603
+ # from which to delete stack instances.
1604
+ #
1605
+ # You can specify `Accounts` or `DeploymentTargets`, but not both.
1606
+ # @return [Types::DeploymentTargets]
1607
+ #
1509
1608
  # @!attribute [rw] regions
1510
1609
  # The regions where you want to delete stack set instances.
1511
1610
  # @return [Array<String>]
@@ -1551,6 +1650,7 @@ module Aws::CloudFormation
1551
1650
  class DeleteStackInstancesInput < Struct.new(
1552
1651
  :stack_set_name,
1553
1652
  :accounts,
1653
+ :deployment_targets,
1554
1654
  :regions,
1555
1655
  :operation_preferences,
1556
1656
  :retain_stacks,
@@ -1592,6 +1692,39 @@ module Aws::CloudFormation
1592
1692
  #
1593
1693
  class DeleteStackSetOutput < Aws::EmptyStructure; end
1594
1694
 
1695
+ # \[`Service-managed` permissions\] The AWS Organizations accounts to
1696
+ # which StackSets deploys.
1697
+ #
1698
+ # For update operations, you can specify either `Accounts` or
1699
+ # `OrganizationalUnitIds`. For create and delete operations, specify
1700
+ # `OrganizationalUnitIds`.
1701
+ #
1702
+ # @note When making an API call, you may pass DeploymentTargets
1703
+ # data as a hash:
1704
+ #
1705
+ # {
1706
+ # accounts: ["Account"],
1707
+ # organizational_unit_ids: ["OrganizationalUnitId"],
1708
+ # }
1709
+ #
1710
+ # @!attribute [rw] accounts
1711
+ # The names of one or more AWS accounts for which you want to deploy
1712
+ # stack set updates.
1713
+ # @return [Array<String>]
1714
+ #
1715
+ # @!attribute [rw] organizational_unit_ids
1716
+ # The organization root ID or organizational unit (OUs) IDs to which
1717
+ # StackSets deploys.
1718
+ # @return [Array<String>]
1719
+ #
1720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DeploymentTargets AWS API Documentation
1721
+ #
1722
+ class DeploymentTargets < Struct.new(
1723
+ :accounts,
1724
+ :organizational_unit_ids)
1725
+ include Aws::Structure
1726
+ end
1727
+
1595
1728
  # @note When making an API call, you may pass DeregisterTypeInput
1596
1729
  # data as a hash:
1597
1730
  #
@@ -1605,19 +1738,24 @@ module Aws::CloudFormation
1605
1738
  # @!attribute [rw] arn
1606
1739
  # The Amazon Resource Name (ARN) of the type.
1607
1740
  #
1608
- # Conditional: You must specify `TypeName` or `Arn`.
1741
+ # Conditional: You must specify either `TypeName` and `Type`, or
1742
+ # `Arn`.
1609
1743
  # @return [String]
1610
1744
  #
1611
1745
  # @!attribute [rw] type
1612
1746
  # The kind of type.
1613
1747
  #
1614
1748
  # Currently the only valid value is `RESOURCE`.
1749
+ #
1750
+ # Conditional: You must specify either `TypeName` and `Type`, or
1751
+ # `Arn`.
1615
1752
  # @return [String]
1616
1753
  #
1617
1754
  # @!attribute [rw] type_name
1618
1755
  # The name of the type.
1619
1756
  #
1620
- # Conditional: You must specify `TypeName` or `Arn`.
1757
+ # Conditional: You must specify either `TypeName` and `Type`, or
1758
+ # `Arn`.
1621
1759
  # @return [String]
1622
1760
  #
1623
1761
  # @!attribute [rw] version_id
@@ -2368,18 +2506,23 @@ module Aws::CloudFormation
2368
2506
  # The kind of type.
2369
2507
  #
2370
2508
  # Currently the only valid value is `RESOURCE`.
2509
+ #
2510
+ # Conditional: You must specify either `TypeName` and `Type`, or
2511
+ # `Arn`.
2371
2512
  # @return [String]
2372
2513
  #
2373
2514
  # @!attribute [rw] type_name
2374
2515
  # The name of the type.
2375
2516
  #
2376
- # Conditional: You must specify `TypeName` or `Arn`.
2517
+ # Conditional: You must specify either `TypeName` and `Type`, or
2518
+ # `Arn`.
2377
2519
  # @return [String]
2378
2520
  #
2379
2521
  # @!attribute [rw] arn
2380
2522
  # The Amazon Resource Name (ARN) of the type.
2381
2523
  #
2382
- # Conditional: You must specify `TypeName` or `Arn`.
2524
+ # Conditional: You must specify either `TypeName` and `Type`, or
2525
+ # `Arn`.
2383
2526
  # @return [String]
2384
2527
  #
2385
2528
  # @!attribute [rw] version_id
@@ -3658,22 +3801,29 @@ module Aws::CloudFormation
3658
3801
  # The kind of type.
3659
3802
  #
3660
3803
  # Currently the only valid value is `RESOURCE`.
3804
+ #
3805
+ # Conditional: You must specify either `TypeName` and `Type`, or
3806
+ # `Arn`.
3661
3807
  # @return [String]
3662
3808
  #
3663
3809
  # @!attribute [rw] type_name
3664
3810
  # The name of the type.
3665
3811
  #
3666
- # Conditional: You must specify `TypeName` or `Arn`.
3812
+ # Conditional: You must specify either `TypeName` and `Type`, or
3813
+ # `Arn`.
3667
3814
  # @return [String]
3668
3815
  #
3669
3816
  # @!attribute [rw] type_arn
3670
3817
  # The Amazon Resource Name (ARN) of the type.
3671
3818
  #
3672
- # Conditional: You must specify `TypeName` or `Arn`.
3819
+ # Conditional: You must specify either `TypeName` and `Type`, or
3820
+ # `Arn`.
3673
3821
  # @return [String]
3674
3822
  #
3675
3823
  # @!attribute [rw] registration_status_filter
3676
3824
  # The current status of the type registration request.
3825
+ #
3826
+ # The default is `IN_PROGRESS`.
3677
3827
  # @return [String]
3678
3828
  #
3679
3829
  # @!attribute [rw] max_results
@@ -3743,19 +3893,24 @@ module Aws::CloudFormation
3743
3893
  # The kind of the type.
3744
3894
  #
3745
3895
  # Currently the only valid value is `RESOURCE`.
3896
+ #
3897
+ # Conditional: You must specify either `TypeName` and `Type`, or
3898
+ # `Arn`.
3746
3899
  # @return [String]
3747
3900
  #
3748
3901
  # @!attribute [rw] type_name
3749
3902
  # The name of the type for which you want version summary information.
3750
3903
  #
3751
- # Conditional: You must specify `TypeName` or `Arn`.
3904
+ # Conditional: You must specify either `TypeName` and `Type`, or
3905
+ # `Arn`.
3752
3906
  # @return [String]
3753
3907
  #
3754
3908
  # @!attribute [rw] arn
3755
3909
  # The Amazon Resource Name (ARN) of the type for which you want
3756
3910
  # version summary information.
3757
3911
  #
3758
- # Conditional: You must specify `TypeName` or `Arn`.
3912
+ # Conditional: You must specify either `TypeName` and `Type`, or
3913
+ # `Arn`.
3759
3914
  # @return [String]
3760
3915
  #
3761
3916
  # @!attribute [rw] max_results
@@ -3786,6 +3941,8 @@ module Aws::CloudFormation
3786
3941
  #
3787
3942
  # * `DEPRECATED`\: The type version has been deregistered and can no
3788
3943
  # longer be used in CloudFormation operations.
3944
+ #
3945
+ # The default is `LIVE`.
3789
3946
  # @return [String]
3790
3947
  #
3791
3948
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/ListTypeVersionsInput AWS API Documentation
@@ -3844,6 +4001,8 @@ module Aws::CloudFormation
3844
4001
  #
3845
4002
  # * `PUBLIC`\: The type is publically visible and usable within any
3846
4003
  # Amazon account.
4004
+ #
4005
+ # The default is `PRIVATE`.
3847
4006
  # @return [String]
3848
4007
  #
3849
4008
  # @!attribute [rw] provisioning_type
@@ -4295,9 +4454,18 @@ module Aws::CloudFormation
4295
4454
  # you want to register, see [submit][1] in the *CloudFormation CLI
4296
4455
  # User Guide*.
4297
4456
  #
4457
+ # <note markdown="1"> As part of registering a resource provider type, CloudFormation must
4458
+ # be able to access the S3 bucket which contains the schema handler
4459
+ # package for that resource provider. For more information, see [IAM
4460
+ # Permissions for Registering a Resource Provider][2] in the *AWS
4461
+ # CloudFormation User Guide*.
4462
+ #
4463
+ # </note>
4464
+ #
4298
4465
  #
4299
4466
  #
4300
4467
  # [1]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html
4468
+ # [2]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-register-permissions
4301
4469
  # @return [String]
4302
4470
  #
4303
4471
  # @!attribute [rw] logging_config
@@ -4778,17 +4946,22 @@ module Aws::CloudFormation
4778
4946
  # The Amazon Resource Name (ARN) of the type for which you want
4779
4947
  # version summary information.
4780
4948
  #
4781
- # Conditional: You must specify `TypeName` or `Arn`.
4949
+ # Conditional: You must specify either `TypeName` and `Type`, or
4950
+ # `Arn`.
4782
4951
  # @return [String]
4783
4952
  #
4784
4953
  # @!attribute [rw] type
4785
4954
  # The kind of type.
4955
+ #
4956
+ # Conditional: You must specify either `TypeName` and `Type`, or
4957
+ # `Arn`.
4786
4958
  # @return [String]
4787
4959
  #
4788
4960
  # @!attribute [rw] type_name
4789
4961
  # The name of the type.
4790
4962
  #
4791
- # Conditional: You must specify `TypeName` or `Arn`.
4963
+ # Conditional: You must specify either `TypeName` and `Type`, or
4964
+ # `Arn`.
4792
4965
  # @return [String]
4793
4966
  #
4794
4967
  # @!attribute [rw] version_id
@@ -5199,8 +5372,8 @@ module Aws::CloudFormation
5199
5372
  # @return [String]
5200
5373
  #
5201
5374
  # @!attribute [rw] account
5202
- # The name of the AWS account that the stack instance is associated
5203
- # with.
5375
+ # \[Self-managed permissions\] The name of the AWS account that the
5376
+ # stack instance is associated with.
5204
5377
  # @return [String]
5205
5378
  #
5206
5379
  # @!attribute [rw] stack_id
@@ -5241,6 +5414,12 @@ module Aws::CloudFormation
5241
5414
  # this stack instance.
5242
5415
  # @return [String]
5243
5416
  #
5417
+ # @!attribute [rw] organizational_unit_id
5418
+ # \[`Service-managed` permissions\] The organization root ID or
5419
+ # organizational unit (OU) ID that the stack instance is associated
5420
+ # with.
5421
+ # @return [String]
5422
+ #
5244
5423
  # @!attribute [rw] drift_status
5245
5424
  # Status of the stack instance's actual configuration compared to the
5246
5425
  # expected template and parameter configuration of the stack set to
@@ -5276,6 +5455,7 @@ module Aws::CloudFormation
5276
5455
  :parameter_overrides,
5277
5456
  :status,
5278
5457
  :status_reason,
5458
+ :organizational_unit_id,
5279
5459
  :drift_status,
5280
5460
  :last_drift_check_timestamp)
5281
5461
  include Aws::Structure
@@ -5295,8 +5475,8 @@ module Aws::CloudFormation
5295
5475
  # @return [String]
5296
5476
  #
5297
5477
  # @!attribute [rw] account
5298
- # The name of the AWS account that the stack instance is associated
5299
- # with.
5478
+ # \[Self-managed permissions\] The name of the AWS account that the
5479
+ # stack instance is associated with.
5300
5480
  # @return [String]
5301
5481
  #
5302
5482
  # @!attribute [rw] stack_id
@@ -5332,6 +5512,12 @@ module Aws::CloudFormation
5332
5512
  # instance.
5333
5513
  # @return [String]
5334
5514
  #
5515
+ # @!attribute [rw] organizational_unit_id
5516
+ # \[`Service-managed` permissions\] The organization root ID or
5517
+ # organizational unit (OU) ID that the stack instance is associated
5518
+ # with.
5519
+ # @return [String]
5520
+ #
5335
5521
  # @!attribute [rw] drift_status
5336
5522
  # Status of the stack instance's actual configuration compared to the
5337
5523
  # expected template and parameter configuration of the stack set to
@@ -5366,6 +5552,7 @@ module Aws::CloudFormation
5366
5552
  :stack_id,
5367
5553
  :status,
5368
5554
  :status_reason,
5555
+ :organizational_unit_id,
5369
5556
  :drift_status,
5370
5557
  :last_drift_check_timestamp)
5371
5558
  include Aws::Structure
@@ -5862,6 +6049,38 @@ module Aws::CloudFormation
5862
6049
  # operations currently in progress is not included.
5863
6050
  # @return [Types::StackSetDriftDetectionDetails]
5864
6051
  #
6052
+ # @!attribute [rw] auto_deployment
6053
+ # \[`Service-managed` permissions\] Describes whether StackSets
6054
+ # automatically deploys to AWS Organizations accounts that are added
6055
+ # to a target organization or organizational unit (OU).
6056
+ # @return [Types::AutoDeployment]
6057
+ #
6058
+ # @!attribute [rw] permission_model
6059
+ # Describes how the IAM roles required for stack set operations are
6060
+ # created.
6061
+ #
6062
+ # * With `self-managed` permissions, you must create the administrator
6063
+ # and execution roles required to deploy to target accounts. For
6064
+ # more information, see [Grant Self-Managed Stack Set
6065
+ # Permissions][1].
6066
+ #
6067
+ # * With `service-managed` permissions, StackSets automatically
6068
+ # creates the IAM roles required to deploy to accounts managed by
6069
+ # AWS Organizations. For more information, see [Grant
6070
+ # Service-Managed Stack Set Permissions][2].
6071
+ #
6072
+ #
6073
+ #
6074
+ # [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html
6075
+ # [2]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html
6076
+ # @return [String]
6077
+ #
6078
+ # @!attribute [rw] organizational_unit_ids
6079
+ # \[`Service-managed` permissions\] The organization root ID or
6080
+ # organizational unit (OUs) IDs to which stacks in your stack set have
6081
+ # been deployed.
6082
+ # @return [Array<String>]
6083
+ #
5865
6084
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackSet AWS API Documentation
5866
6085
  #
5867
6086
  class StackSet < Struct.new(
@@ -5876,7 +6095,10 @@ module Aws::CloudFormation
5876
6095
  :stack_set_arn,
5877
6096
  :administration_role_arn,
5878
6097
  :execution_role_name,
5879
- :stack_set_drift_detection_details)
6098
+ :stack_set_drift_detection_details,
6099
+ :auto_deployment,
6100
+ :permission_model,
6101
+ :organizational_unit_ids)
5880
6102
  include Aws::Structure
5881
6103
  end
5882
6104
 
@@ -6022,6 +6244,12 @@ module Aws::CloudFormation
6022
6244
  # to `FAILED`, and AWS CloudFormation cancels the operation in any
6023
6245
  # remaining regions.
6024
6246
  #
6247
+ # * `QUEUED`\: \[Service-managed permissions\] For automatic
6248
+ # deployments that require a sequence of operations. The operation
6249
+ # is queued to be performed. For more information, see the [stack
6250
+ # set operation status codes][1] in the AWS CloudFormation User
6251
+ # Guide.
6252
+ #
6025
6253
  # * `RUNNING`\: The operation is currently being performed.
6026
6254
  #
6027
6255
  # * `STOPPED`\: The user has cancelled the operation.
@@ -6032,6 +6260,10 @@ module Aws::CloudFormation
6032
6260
  # * `SUCCEEDED`\: The operation completed creating or updating all the
6033
6261
  # specified stacks without exceeding the failure tolerance for the
6034
6262
  # operation.
6263
+ #
6264
+ #
6265
+ #
6266
+ # [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-status-codes
6035
6267
  # @return [String]
6036
6268
  #
6037
6269
  # @!attribute [rw] operation_preferences
@@ -6084,6 +6316,11 @@ module Aws::CloudFormation
6084
6316
  # account or region.
6085
6317
  # @return [Time]
6086
6318
  #
6319
+ # @!attribute [rw] deployment_targets
6320
+ # \[`Service-managed` permissions\] The AWS Organizations accounts
6321
+ # affected by the stack operation.
6322
+ # @return [Types::DeploymentTargets]
6323
+ #
6087
6324
  # @!attribute [rw] stack_set_drift_detection_details
6088
6325
  # Detailed information about the drift status of the stack set. This
6089
6326
  # includes information about drift operations currently being
@@ -6113,6 +6350,7 @@ module Aws::CloudFormation
6113
6350
  :execution_role_name,
6114
6351
  :creation_timestamp,
6115
6352
  :end_timestamp,
6353
+ :deployment_targets,
6116
6354
  :stack_set_drift_detection_details)
6117
6355
  include Aws::Structure
6118
6356
  end
@@ -6216,7 +6454,8 @@ module Aws::CloudFormation
6216
6454
  # results for a given account in a given region.
6217
6455
  #
6218
6456
  # @!attribute [rw] account
6219
- # The name of the AWS account for this operation result.
6457
+ # \[Self-managed permissions\] The name of the AWS account for this
6458
+ # operation result.
6220
6459
  # @return [String]
6221
6460
  #
6222
6461
  # @!attribute [rw] region
@@ -6259,6 +6498,11 @@ module Aws::CloudFormation
6259
6498
  # account
6260
6499
  # @return [Types::AccountGateResult]
6261
6500
  #
6501
+ # @!attribute [rw] organizational_unit_id
6502
+ # \[`Service-managed` permissions\] The organization root ID or
6503
+ # organizational unit (OU) ID for this operation result.
6504
+ # @return [String]
6505
+ #
6262
6506
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackSetOperationResultSummary AWS API Documentation
6263
6507
  #
6264
6508
  class StackSetOperationResultSummary < Struct.new(
@@ -6266,7 +6510,8 @@ module Aws::CloudFormation
6266
6510
  :region,
6267
6511
  :status,
6268
6512
  :status_reason,
6269
- :account_gate_result)
6513
+ :account_gate_result,
6514
+ :organizational_unit_id)
6270
6515
  include Aws::Structure
6271
6516
  end
6272
6517
 
@@ -6297,6 +6542,12 @@ module Aws::CloudFormation
6297
6542
  # to `FAILED`, and AWS CloudFormation cancels the operation in any
6298
6543
  # remaining regions.
6299
6544
  #
6545
+ # * `QUEUED`\: \[Service-managed permissions\] For automatic
6546
+ # deployments that require a sequence of operations. The operation
6547
+ # is queued to be performed. For more information, see the [stack
6548
+ # set operation status codes][1] in the AWS CloudFormation User
6549
+ # Guide.
6550
+ #
6300
6551
  # * `RUNNING`\: The operation is currently being performed.
6301
6552
  #
6302
6553
  # * `STOPPED`\: The user has cancelled the operation.
@@ -6307,6 +6558,10 @@ module Aws::CloudFormation
6307
6558
  # * `SUCCEEDED`\: The operation completed creating or updating all the
6308
6559
  # specified stacks without exceeding the failure tolerance for the
6309
6560
  # operation.
6561
+ #
6562
+ #
6563
+ #
6564
+ # [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-status-codes
6310
6565
  # @return [String]
6311
6566
  #
6312
6567
  # @!attribute [rw] creation_timestamp
@@ -6356,6 +6611,32 @@ module Aws::CloudFormation
6356
6611
  # The status of the stack set.
6357
6612
  # @return [String]
6358
6613
  #
6614
+ # @!attribute [rw] auto_deployment
6615
+ # \[`Service-managed` permissions\] Describes whether StackSets
6616
+ # automatically deploys to AWS Organizations accounts that are added
6617
+ # to a target organizational unit (OU).
6618
+ # @return [Types::AutoDeployment]
6619
+ #
6620
+ # @!attribute [rw] permission_model
6621
+ # Describes how the IAM roles required for stack set operations are
6622
+ # created.
6623
+ #
6624
+ # * With `self-managed` permissions, you must create the administrator
6625
+ # and execution roles required to deploy to target accounts. For
6626
+ # more information, see [Grant Self-Managed Stack Set
6627
+ # Permissions][1].
6628
+ #
6629
+ # * With `service-managed` permissions, StackSets automatically
6630
+ # creates the IAM roles required to deploy to accounts managed by
6631
+ # AWS Organizations. For more information, see [Grant
6632
+ # Service-Managed Stack Set Permissions][2].
6633
+ #
6634
+ #
6635
+ #
6636
+ # [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html
6637
+ # [2]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html
6638
+ # @return [String]
6639
+ #
6359
6640
  # @!attribute [rw] drift_status
6360
6641
  # Status of the stack set's actual configuration compared to its
6361
6642
  # expected template and parameter configuration. A stack set is
@@ -6391,6 +6672,8 @@ module Aws::CloudFormation
6391
6672
  :stack_set_id,
6392
6673
  :description,
6393
6674
  :status,
6675
+ :auto_deployment,
6676
+ :permission_model,
6394
6677
  :drift_status,
6395
6678
  :last_drift_check_timestamp)
6396
6679
  include Aws::Structure
@@ -6995,7 +7278,11 @@ module Aws::CloudFormation
6995
7278
  #
6996
7279
  # {
6997
7280
  # stack_set_name: "StackSetNameOrId", # required
6998
- # accounts: ["Account"], # required
7281
+ # accounts: ["Account"],
7282
+ # deployment_targets: {
7283
+ # accounts: ["Account"],
7284
+ # organizational_unit_ids: ["OrganizationalUnitId"],
7285
+ # },
6999
7286
  # regions: ["Region"], # required
7000
7287
  # parameter_overrides: [
7001
7288
  # {
@@ -7021,12 +7308,25 @@ module Aws::CloudFormation
7021
7308
  # @return [String]
7022
7309
  #
7023
7310
  # @!attribute [rw] accounts
7024
- # The names of one or more AWS accounts for which you want to update
7025
- # parameter values for stack instances. The overridden parameter
7026
- # values will be applied to all stack instances in the specified
7027
- # accounts and regions.
7311
+ # \[Self-managed permissions\] The names of one or more AWS accounts
7312
+ # for which you want to update parameter values for stack instances.
7313
+ # The overridden parameter values will be applied to all stack
7314
+ # instances in the specified accounts and regions.
7315
+ #
7316
+ # You can specify `Accounts` or `DeploymentTargets`, but not both.
7028
7317
  # @return [Array<String>]
7029
7318
  #
7319
+ # @!attribute [rw] deployment_targets
7320
+ # \[`Service-managed` permissions\] The AWS Organizations accounts for
7321
+ # which you want to update parameter values for stack instances. If
7322
+ # your update targets OUs, the overridden parameter values only apply
7323
+ # to the accounts that are currently in the target OUs and their child
7324
+ # OUs. Accounts added to the target OUs and their child OUs in the
7325
+ # future won't use the overridden values.
7326
+ #
7327
+ # You can specify `Accounts` or `DeploymentTargets`, but not both.
7328
+ # @return [Types::DeploymentTargets]
7329
+ #
7030
7330
  # @!attribute [rw] regions
7031
7331
  # The names of one or more regions in which you want to update
7032
7332
  # parameter values for stack instances. The overridden parameter
@@ -7106,6 +7406,7 @@ module Aws::CloudFormation
7106
7406
  class UpdateStackInstancesInput < Struct.new(
7107
7407
  :stack_set_name,
7108
7408
  :accounts,
7409
+ :deployment_targets,
7109
7410
  :regions,
7110
7411
  :parameter_overrides,
7111
7412
  :operation_preferences,
@@ -7170,6 +7471,15 @@ module Aws::CloudFormation
7170
7471
  # },
7171
7472
  # administration_role_arn: "RoleARN",
7172
7473
  # execution_role_name: "ExecutionRoleName",
7474
+ # deployment_targets: {
7475
+ # accounts: ["Account"],
7476
+ # organizational_unit_ids: ["OrganizationalUnitId"],
7477
+ # },
7478
+ # permission_model: "SERVICE_MANAGED", # accepts SERVICE_MANAGED, SELF_MANAGED
7479
+ # auto_deployment: {
7480
+ # enabled: false,
7481
+ # retain_stacks_on_account_removal: false,
7482
+ # },
7173
7483
  # operation_id: "ClientRequestToken",
7174
7484
  # accounts: ["Account"],
7175
7485
  # regions: ["Region"],
@@ -7379,6 +7689,54 @@ module Aws::CloudFormation
7379
7689
  # permissions to perform operations on the stack set.
7380
7690
  # @return [String]
7381
7691
  #
7692
+ # @!attribute [rw] deployment_targets
7693
+ # \[`Service-managed` permissions\] The AWS Organizations accounts in
7694
+ # which to update associated stack instances.
7695
+ #
7696
+ # To update all the stack instances associated with this stack set, do
7697
+ # not specify `DeploymentTargets` or `Regions`.
7698
+ #
7699
+ # If the stack set update includes changes to the template (that is,
7700
+ # if `TemplateBody` or `TemplateURL` is specified), or the
7701
+ # `Parameters`, AWS CloudFormation marks all stack instances with a
7702
+ # status of `OUTDATED` prior to updating the stack instances in the
7703
+ # specified accounts and Regions. If the stack set update does not
7704
+ # include changes to the template or parameters, AWS CloudFormation
7705
+ # updates the stack instances in the specified accounts and Regions,
7706
+ # while leaving all other stack instances with their existing stack
7707
+ # instance status.
7708
+ # @return [Types::DeploymentTargets]
7709
+ #
7710
+ # @!attribute [rw] permission_model
7711
+ # Describes how the IAM roles required for stack set operations are
7712
+ # created. You cannot modify `PermissionModel` if there are stack
7713
+ # instances associated with your stack set.
7714
+ #
7715
+ # * With `self-managed` permissions, you must create the administrator
7716
+ # and execution roles required to deploy to target accounts. For
7717
+ # more information, see [Grant Self-Managed Stack Set
7718
+ # Permissions][1].
7719
+ #
7720
+ # * With `service-managed` permissions, StackSets automatically
7721
+ # creates the IAM roles required to deploy to accounts managed by
7722
+ # AWS Organizations. For more information, see [Grant
7723
+ # Service-Managed Stack Set Permissions][2].
7724
+ #
7725
+ #
7726
+ #
7727
+ # [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html
7728
+ # [2]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html
7729
+ # @return [String]
7730
+ #
7731
+ # @!attribute [rw] auto_deployment
7732
+ # \[`Service-managed` permissions\] Describes whether StackSets
7733
+ # automatically deploys to AWS Organizations accounts that are added
7734
+ # to a target organization or organizational unit (OU).
7735
+ #
7736
+ # If you specify `AutoDeployment`, do not specify `DeploymentTargets`
7737
+ # or `Regions`.
7738
+ # @return [Types::AutoDeployment]
7739
+ #
7382
7740
  # @!attribute [rw] operation_id
7383
7741
  # The unique ID for this stack set operation.
7384
7742
  #
@@ -7399,9 +7757,9 @@ module Aws::CloudFormation
7399
7757
  # @return [String]
7400
7758
  #
7401
7759
  # @!attribute [rw] accounts
7402
- # The accounts in which to update associated stack instances. If you
7403
- # specify accounts, you must also specify the regions in which to
7404
- # update stack set instances.
7760
+ # \[Self-managed permissions\] The accounts in which to update
7761
+ # associated stack instances. If you specify accounts, you must also
7762
+ # specify the regions in which to update stack set instances.
7405
7763
  #
7406
7764
  # To update *all* the stack instances associated with this stack set,
7407
7765
  # do not specify the `Accounts` or `Regions` properties.
@@ -7450,6 +7808,9 @@ module Aws::CloudFormation
7450
7808
  :operation_preferences,
7451
7809
  :administration_role_arn,
7452
7810
  :execution_role_name,
7811
+ :deployment_targets,
7812
+ :permission_model,
7813
+ :auto_deployment,
7453
7814
  :operation_id,
7454
7815
  :accounts,
7455
7816
  :regions)