aws-sdk-redshift 1.13.0 → 1.14.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -14,8 +14,14 @@ module Aws::Redshift
14
14
  AcceptReservedNodeExchangeInputMessage = Shapes::StructureShape.new(name: 'AcceptReservedNodeExchangeInputMessage')
15
15
  AcceptReservedNodeExchangeOutputMessage = Shapes::StructureShape.new(name: 'AcceptReservedNodeExchangeOutputMessage')
16
16
  AccessToSnapshotDeniedFault = Shapes::StructureShape.new(name: 'AccessToSnapshotDeniedFault')
17
+ AccountAttribute = Shapes::StructureShape.new(name: 'AccountAttribute')
18
+ AccountAttributeList = Shapes::StructureShape.new(name: 'AccountAttributeList')
17
19
  AccountWithRestoreAccess = Shapes::StructureShape.new(name: 'AccountWithRestoreAccess')
18
20
  AccountsWithRestoreAccessList = Shapes::ListShape.new(name: 'AccountsWithRestoreAccessList')
21
+ AttributeList = Shapes::ListShape.new(name: 'AttributeList')
22
+ AttributeNameList = Shapes::ListShape.new(name: 'AttributeNameList')
23
+ AttributeValueList = Shapes::ListShape.new(name: 'AttributeValueList')
24
+ AttributeValueTarget = Shapes::StructureShape.new(name: 'AttributeValueTarget')
19
25
  AuthorizationAlreadyExistsFault = Shapes::StructureShape.new(name: 'AuthorizationAlreadyExistsFault')
20
26
  AuthorizationNotFoundFault = Shapes::StructureShape.new(name: 'AuthorizationNotFoundFault')
21
27
  AuthorizationQuotaExceededFault = Shapes::StructureShape.new(name: 'AuthorizationQuotaExceededFault')
@@ -28,6 +34,7 @@ module Aws::Redshift
28
34
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
29
35
  BooleanOptional = Shapes::BooleanShape.new(name: 'BooleanOptional')
30
36
  BucketNotFoundFault = Shapes::StructureShape.new(name: 'BucketNotFoundFault')
37
+ CancelResizeMessage = Shapes::StructureShape.new(name: 'CancelResizeMessage')
31
38
  Cluster = Shapes::StructureShape.new(name: 'Cluster')
32
39
  ClusterAlreadyExistsFault = Shapes::StructureShape.new(name: 'ClusterAlreadyExistsFault')
33
40
  ClusterCredentials = Shapes::StructureShape.new(name: 'ClusterCredentials')
@@ -99,8 +106,11 @@ module Aws::Redshift
99
106
  CreateSnapshotCopyGrantMessage = Shapes::StructureShape.new(name: 'CreateSnapshotCopyGrantMessage')
100
107
  CreateSnapshotCopyGrantResult = Shapes::StructureShape.new(name: 'CreateSnapshotCopyGrantResult')
101
108
  CreateTagsMessage = Shapes::StructureShape.new(name: 'CreateTagsMessage')
109
+ DataTransferProgress = Shapes::StructureShape.new(name: 'DataTransferProgress')
102
110
  DbGroupList = Shapes::ListShape.new(name: 'DbGroupList')
103
111
  DefaultClusterParameters = Shapes::StructureShape.new(name: 'DefaultClusterParameters')
112
+ DeferredMaintenanceWindow = Shapes::StructureShape.new(name: 'DeferredMaintenanceWindow')
113
+ DeferredMaintenanceWindowsList = Shapes::ListShape.new(name: 'DeferredMaintenanceWindowsList')
104
114
  DeleteClusterMessage = Shapes::StructureShape.new(name: 'DeleteClusterMessage')
105
115
  DeleteClusterParameterGroupMessage = Shapes::StructureShape.new(name: 'DeleteClusterParameterGroupMessage')
106
116
  DeleteClusterResult = Shapes::StructureShape.new(name: 'DeleteClusterResult')
@@ -115,6 +125,7 @@ module Aws::Redshift
115
125
  DeleteTagsMessage = Shapes::StructureShape.new(name: 'DeleteTagsMessage')
116
126
  DependentServiceRequestThrottlingFault = Shapes::StructureShape.new(name: 'DependentServiceRequestThrottlingFault')
117
127
  DependentServiceUnavailableFault = Shapes::StructureShape.new(name: 'DependentServiceUnavailableFault')
128
+ DescribeAccountAttributesMessage = Shapes::StructureShape.new(name: 'DescribeAccountAttributesMessage')
118
129
  DescribeClusterDbRevisionsMessage = Shapes::StructureShape.new(name: 'DescribeClusterDbRevisionsMessage')
119
130
  DescribeClusterParameterGroupsMessage = Shapes::StructureShape.new(name: 'DescribeClusterParameterGroupsMessage')
120
131
  DescribeClusterParametersMessage = Shapes::StructureShape.new(name: 'DescribeClusterParametersMessage')
@@ -222,6 +233,8 @@ module Aws::Redshift
222
233
  ModifyClusterDbRevisionResult = Shapes::StructureShape.new(name: 'ModifyClusterDbRevisionResult')
223
234
  ModifyClusterIamRolesMessage = Shapes::StructureShape.new(name: 'ModifyClusterIamRolesMessage')
224
235
  ModifyClusterIamRolesResult = Shapes::StructureShape.new(name: 'ModifyClusterIamRolesResult')
236
+ ModifyClusterMaintenanceMessage = Shapes::StructureShape.new(name: 'ModifyClusterMaintenanceMessage')
237
+ ModifyClusterMaintenanceResult = Shapes::StructureShape.new(name: 'ModifyClusterMaintenanceResult')
225
238
  ModifyClusterMessage = Shapes::StructureShape.new(name: 'ModifyClusterMessage')
226
239
  ModifyClusterParameterGroupMessage = Shapes::StructureShape.new(name: 'ModifyClusterParameterGroupMessage')
227
240
  ModifyClusterResult = Shapes::StructureShape.new(name: 'ModifyClusterResult')
@@ -263,6 +276,7 @@ module Aws::Redshift
263
276
  ResetClusterParameterGroupMessage = Shapes::StructureShape.new(name: 'ResetClusterParameterGroupMessage')
264
277
  ResizeClusterMessage = Shapes::StructureShape.new(name: 'ResizeClusterMessage')
265
278
  ResizeClusterResult = Shapes::StructureShape.new(name: 'ResizeClusterResult')
279
+ ResizeInfo = Shapes::StructureShape.new(name: 'ResizeInfo')
266
280
  ResizeNotFoundFault = Shapes::StructureShape.new(name: 'ResizeNotFoundFault')
267
281
  ResizeProgressMessage = Shapes::StructureShape.new(name: 'ResizeProgressMessage')
268
282
  ResourceNotFoundFault = Shapes::StructureShape.new(name: 'ResourceNotFoundFault')
@@ -309,6 +323,8 @@ module Aws::Redshift
309
323
  SubscriptionEventIdNotFoundFault = Shapes::StructureShape.new(name: 'SubscriptionEventIdNotFoundFault')
310
324
  SubscriptionNotFoundFault = Shapes::StructureShape.new(name: 'SubscriptionNotFoundFault')
311
325
  SubscriptionSeverityNotFoundFault = Shapes::StructureShape.new(name: 'SubscriptionSeverityNotFoundFault')
326
+ SupportedOperation = Shapes::StructureShape.new(name: 'SupportedOperation')
327
+ SupportedOperationList = Shapes::ListShape.new(name: 'SupportedOperationList')
312
328
  SupportedPlatform = Shapes::StructureShape.new(name: 'SupportedPlatform')
313
329
  SupportedPlatformsList = Shapes::ListShape.new(name: 'SupportedPlatformsList')
314
330
  TStamp = Shapes::TimestampShape.new(name: 'TStamp')
@@ -344,12 +360,28 @@ module Aws::Redshift
344
360
  AcceptReservedNodeExchangeOutputMessage.add_member(:exchanged_reserved_node, Shapes::ShapeRef.new(shape: ReservedNode, location_name: "ExchangedReservedNode"))
345
361
  AcceptReservedNodeExchangeOutputMessage.struct_class = Types::AcceptReservedNodeExchangeOutputMessage
346
362
 
363
+ AccountAttribute.add_member(:attribute_name, Shapes::ShapeRef.new(shape: String, location_name: "AttributeName"))
364
+ AccountAttribute.add_member(:attribute_values, Shapes::ShapeRef.new(shape: AttributeValueList, location_name: "AttributeValues"))
365
+ AccountAttribute.struct_class = Types::AccountAttribute
366
+
367
+ AccountAttributeList.add_member(:account_attributes, Shapes::ShapeRef.new(shape: AttributeList, location_name: "AccountAttributes"))
368
+ AccountAttributeList.struct_class = Types::AccountAttributeList
369
+
347
370
  AccountWithRestoreAccess.add_member(:account_id, Shapes::ShapeRef.new(shape: String, location_name: "AccountId"))
348
371
  AccountWithRestoreAccess.add_member(:account_alias, Shapes::ShapeRef.new(shape: String, location_name: "AccountAlias"))
349
372
  AccountWithRestoreAccess.struct_class = Types::AccountWithRestoreAccess
350
373
 
351
374
  AccountsWithRestoreAccessList.member = Shapes::ShapeRef.new(shape: AccountWithRestoreAccess, location_name: "AccountWithRestoreAccess")
352
375
 
376
+ AttributeList.member = Shapes::ShapeRef.new(shape: AccountAttribute, location_name: "AccountAttribute")
377
+
378
+ AttributeNameList.member = Shapes::ShapeRef.new(shape: String, location_name: "AttributeName")
379
+
380
+ AttributeValueList.member = Shapes::ShapeRef.new(shape: AttributeValueTarget, location_name: "AttributeValueTarget")
381
+
382
+ AttributeValueTarget.add_member(:attribute_value, Shapes::ShapeRef.new(shape: String, location_name: "AttributeValue"))
383
+ AttributeValueTarget.struct_class = Types::AttributeValueTarget
384
+
353
385
  AuthorizeClusterSecurityGroupIngressMessage.add_member(:cluster_security_group_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ClusterSecurityGroupName"))
354
386
  AuthorizeClusterSecurityGroupIngressMessage.add_member(:cidrip, Shapes::ShapeRef.new(shape: String, location_name: "CIDRIP"))
355
387
  AuthorizeClusterSecurityGroupIngressMessage.add_member(:ec2_security_group_name, Shapes::ShapeRef.new(shape: String, location_name: "EC2SecurityGroupName"))
@@ -373,6 +405,9 @@ module Aws::Redshift
373
405
 
374
406
  AvailabilityZoneList.member = Shapes::ShapeRef.new(shape: AvailabilityZone, location_name: "AvailabilityZone")
375
407
 
408
+ CancelResizeMessage.add_member(:cluster_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ClusterIdentifier"))
409
+ CancelResizeMessage.struct_class = Types::CancelResizeMessage
410
+
376
411
  Cluster.add_member(:cluster_identifier, Shapes::ShapeRef.new(shape: String, location_name: "ClusterIdentifier"))
377
412
  Cluster.add_member(:node_type, Shapes::ShapeRef.new(shape: String, location_name: "NodeType"))
378
413
  Cluster.add_member(:cluster_status, Shapes::ShapeRef.new(shape: String, location_name: "ClusterStatus"))
@@ -396,6 +431,7 @@ module Aws::Redshift
396
431
  Cluster.add_member(:publicly_accessible, Shapes::ShapeRef.new(shape: Boolean, location_name: "PubliclyAccessible"))
397
432
  Cluster.add_member(:encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "Encrypted"))
398
433
  Cluster.add_member(:restore_status, Shapes::ShapeRef.new(shape: RestoreStatus, location_name: "RestoreStatus"))
434
+ Cluster.add_member(:data_transfer_progress, Shapes::ShapeRef.new(shape: DataTransferProgress, location_name: "DataTransferProgress"))
399
435
  Cluster.add_member(:hsm_status, Shapes::ShapeRef.new(shape: HsmStatus, location_name: "HsmStatus"))
400
436
  Cluster.add_member(:cluster_snapshot_copy_status, Shapes::ShapeRef.new(shape: ClusterSnapshotCopyStatus, location_name: "ClusterSnapshotCopyStatus"))
401
437
  Cluster.add_member(:cluster_public_key, Shapes::ShapeRef.new(shape: String, location_name: "ClusterPublicKey"))
@@ -409,6 +445,8 @@ module Aws::Redshift
409
445
  Cluster.add_member(:pending_actions, Shapes::ShapeRef.new(shape: PendingActionsList, location_name: "PendingActions"))
410
446
  Cluster.add_member(:maintenance_track_name, Shapes::ShapeRef.new(shape: String, location_name: "MaintenanceTrackName"))
411
447
  Cluster.add_member(:elastic_resize_number_of_node_options, Shapes::ShapeRef.new(shape: String, location_name: "ElasticResizeNumberOfNodeOptions"))
448
+ Cluster.add_member(:deferred_maintenance_windows, Shapes::ShapeRef.new(shape: DeferredMaintenanceWindowsList, location_name: "DeferredMaintenanceWindows"))
449
+ Cluster.add_member(:resize_info, Shapes::ShapeRef.new(shape: ResizeInfo, location_name: "ResizeInfo"))
412
450
  Cluster.struct_class = Types::Cluster
413
451
 
414
452
  ClusterCredentials.add_member(:db_user, Shapes::ShapeRef.new(shape: String, location_name: "DbUser"))
@@ -649,6 +687,14 @@ module Aws::Redshift
649
687
  CreateTagsMessage.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "Tags"))
650
688
  CreateTagsMessage.struct_class = Types::CreateTagsMessage
651
689
 
690
+ DataTransferProgress.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "Status"))
691
+ DataTransferProgress.add_member(:current_rate_in_mega_bytes_per_second, Shapes::ShapeRef.new(shape: DoubleOptional, location_name: "CurrentRateInMegaBytesPerSecond"))
692
+ DataTransferProgress.add_member(:total_data_in_mega_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "TotalDataInMegaBytes"))
693
+ DataTransferProgress.add_member(:data_transferred_in_mega_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "DataTransferredInMegaBytes"))
694
+ DataTransferProgress.add_member(:estimated_time_to_completion_in_seconds, Shapes::ShapeRef.new(shape: LongOptional, location_name: "EstimatedTimeToCompletionInSeconds"))
695
+ DataTransferProgress.add_member(:elapsed_time_in_seconds, Shapes::ShapeRef.new(shape: LongOptional, location_name: "ElapsedTimeInSeconds"))
696
+ DataTransferProgress.struct_class = Types::DataTransferProgress
697
+
652
698
  DbGroupList.member = Shapes::ShapeRef.new(shape: String, location_name: "DbGroup")
653
699
 
654
700
  DefaultClusterParameters.add_member(:parameter_group_family, Shapes::ShapeRef.new(shape: String, location_name: "ParameterGroupFamily"))
@@ -656,6 +702,13 @@ module Aws::Redshift
656
702
  DefaultClusterParameters.add_member(:parameters, Shapes::ShapeRef.new(shape: ParametersList, location_name: "Parameters"))
657
703
  DefaultClusterParameters.struct_class = Types::DefaultClusterParameters
658
704
 
705
+ DeferredMaintenanceWindow.add_member(:defer_maintenance_identifier, Shapes::ShapeRef.new(shape: String, location_name: "DeferMaintenanceIdentifier"))
706
+ DeferredMaintenanceWindow.add_member(:defer_maintenance_start_time, Shapes::ShapeRef.new(shape: TStamp, location_name: "DeferMaintenanceStartTime"))
707
+ DeferredMaintenanceWindow.add_member(:defer_maintenance_end_time, Shapes::ShapeRef.new(shape: TStamp, location_name: "DeferMaintenanceEndTime"))
708
+ DeferredMaintenanceWindow.struct_class = Types::DeferredMaintenanceWindow
709
+
710
+ DeferredMaintenanceWindowsList.member = Shapes::ShapeRef.new(shape: DeferredMaintenanceWindow, location_name: "DeferredMaintenanceWindow")
711
+
659
712
  DeleteClusterMessage.add_member(:cluster_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ClusterIdentifier"))
660
713
  DeleteClusterMessage.add_member(:skip_final_cluster_snapshot, Shapes::ShapeRef.new(shape: Boolean, location_name: "SkipFinalClusterSnapshot"))
661
714
  DeleteClusterMessage.add_member(:final_cluster_snapshot_identifier, Shapes::ShapeRef.new(shape: String, location_name: "FinalClusterSnapshotIdentifier"))
@@ -696,6 +749,9 @@ module Aws::Redshift
696
749
  DeleteTagsMessage.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "TagKeys"))
697
750
  DeleteTagsMessage.struct_class = Types::DeleteTagsMessage
698
751
 
752
+ DescribeAccountAttributesMessage.add_member(:attribute_names, Shapes::ShapeRef.new(shape: AttributeNameList, location_name: "AttributeNames"))
753
+ DescribeAccountAttributesMessage.struct_class = Types::DescribeAccountAttributesMessage
754
+
699
755
  DescribeClusterDbRevisionsMessage.add_member(:cluster_identifier, Shapes::ShapeRef.new(shape: String, location_name: "ClusterIdentifier"))
700
756
  DescribeClusterDbRevisionsMessage.add_member(:max_records, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "MaxRecords"))
701
757
  DescribeClusterDbRevisionsMessage.add_member(:marker, Shapes::ShapeRef.new(shape: String, location_name: "Marker"))
@@ -1026,6 +1082,17 @@ module Aws::Redshift
1026
1082
  ModifyClusterIamRolesResult.add_member(:cluster, Shapes::ShapeRef.new(shape: Cluster, location_name: "Cluster"))
1027
1083
  ModifyClusterIamRolesResult.struct_class = Types::ModifyClusterIamRolesResult
1028
1084
 
1085
+ ModifyClusterMaintenanceMessage.add_member(:cluster_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ClusterIdentifier"))
1086
+ ModifyClusterMaintenanceMessage.add_member(:defer_maintenance, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "DeferMaintenance"))
1087
+ ModifyClusterMaintenanceMessage.add_member(:defer_maintenance_identifier, Shapes::ShapeRef.new(shape: String, location_name: "DeferMaintenanceIdentifier"))
1088
+ ModifyClusterMaintenanceMessage.add_member(:defer_maintenance_start_time, Shapes::ShapeRef.new(shape: TStamp, location_name: "DeferMaintenanceStartTime"))
1089
+ ModifyClusterMaintenanceMessage.add_member(:defer_maintenance_end_time, Shapes::ShapeRef.new(shape: TStamp, location_name: "DeferMaintenanceEndTime"))
1090
+ ModifyClusterMaintenanceMessage.add_member(:defer_maintenance_duration, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "DeferMaintenanceDuration"))
1091
+ ModifyClusterMaintenanceMessage.struct_class = Types::ModifyClusterMaintenanceMessage
1092
+
1093
+ ModifyClusterMaintenanceResult.add_member(:cluster, Shapes::ShapeRef.new(shape: Cluster, location_name: "Cluster"))
1094
+ ModifyClusterMaintenanceResult.struct_class = Types::ModifyClusterMaintenanceResult
1095
+
1029
1096
  ModifyClusterMessage.add_member(:cluster_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ClusterIdentifier"))
1030
1097
  ModifyClusterMessage.add_member(:cluster_type, Shapes::ShapeRef.new(shape: String, location_name: "ClusterType"))
1031
1098
  ModifyClusterMessage.add_member(:node_type, Shapes::ShapeRef.new(shape: String, location_name: "NodeType"))
@@ -1197,6 +1264,10 @@ module Aws::Redshift
1197
1264
  ResizeClusterResult.add_member(:cluster, Shapes::ShapeRef.new(shape: Cluster, location_name: "Cluster"))
1198
1265
  ResizeClusterResult.struct_class = Types::ResizeClusterResult
1199
1266
 
1267
+ ResizeInfo.add_member(:resize_type, Shapes::ShapeRef.new(shape: String, location_name: "ResizeType"))
1268
+ ResizeInfo.add_member(:allow_cancel_resize, Shapes::ShapeRef.new(shape: Boolean, location_name: "AllowCancelResize"))
1269
+ ResizeInfo.struct_class = Types::ResizeInfo
1270
+
1200
1271
  ResizeProgressMessage.add_member(:target_node_type, Shapes::ShapeRef.new(shape: String, location_name: "TargetNodeType"))
1201
1272
  ResizeProgressMessage.add_member(:target_number_of_nodes, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "TargetNumberOfNodes"))
1202
1273
  ResizeProgressMessage.add_member(:target_cluster_type, Shapes::ShapeRef.new(shape: String, location_name: "TargetClusterType"))
@@ -1355,6 +1426,11 @@ module Aws::Redshift
1355
1426
 
1356
1427
  SubnetList.member = Shapes::ShapeRef.new(shape: Subnet, location_name: "Subnet")
1357
1428
 
1429
+ SupportedOperation.add_member(:operation_name, Shapes::ShapeRef.new(shape: String, location_name: "OperationName"))
1430
+ SupportedOperation.struct_class = Types::SupportedOperation
1431
+
1432
+ SupportedOperationList.member = Shapes::ShapeRef.new(shape: SupportedOperation, location_name: "SupportedOperation")
1433
+
1358
1434
  SupportedPlatform.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
1359
1435
  SupportedPlatform.struct_class = Types::SupportedPlatform
1360
1436
 
@@ -1411,6 +1487,7 @@ module Aws::Redshift
1411
1487
 
1412
1488
  UpdateTarget.add_member(:maintenance_track_name, Shapes::ShapeRef.new(shape: String, location_name: "MaintenanceTrackName"))
1413
1489
  UpdateTarget.add_member(:database_version, Shapes::ShapeRef.new(shape: String, location_name: "DatabaseVersion"))
1490
+ UpdateTarget.add_member(:supported_operations, Shapes::ShapeRef.new(shape: SupportedOperationList, location_name: "SupportedOperations"))
1414
1491
  UpdateTarget.struct_class = Types::UpdateTarget
1415
1492
 
1416
1493
  VpcSecurityGroupIdList.member = Shapes::ShapeRef.new(shape: String, location_name: "VpcSecurityGroupId")
@@ -1479,6 +1556,18 @@ module Aws::Redshift
1479
1556
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededFault)
1480
1557
  end)
1481
1558
 
1559
+ api.add_operation(:cancel_resize, Seahorse::Model::Operation.new.tap do |o|
1560
+ o.name = "CancelResize"
1561
+ o.http_method = "POST"
1562
+ o.http_request_uri = "/"
1563
+ o.input = Shapes::ShapeRef.new(shape: CancelResizeMessage)
1564
+ o.output = Shapes::ShapeRef.new(shape: ResizeProgressMessage)
1565
+ o.errors << Shapes::ShapeRef.new(shape: ClusterNotFoundFault)
1566
+ o.errors << Shapes::ShapeRef.new(shape: ResizeNotFoundFault)
1567
+ o.errors << Shapes::ShapeRef.new(shape: InvalidClusterStateFault)
1568
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationFault)
1569
+ end)
1570
+
1482
1571
  api.add_operation(:copy_cluster_snapshot, Seahorse::Model::Operation.new.tap do |o|
1483
1572
  o.name = "CopyClusterSnapshot"
1484
1573
  o.http_method = "POST"
@@ -1744,6 +1833,14 @@ module Aws::Redshift
1744
1833
  o.errors << Shapes::ShapeRef.new(shape: InvalidTagFault)
1745
1834
  end)
1746
1835
 
1836
+ api.add_operation(:describe_account_attributes, Seahorse::Model::Operation.new.tap do |o|
1837
+ o.name = "DescribeAccountAttributes"
1838
+ o.http_method = "POST"
1839
+ o.http_request_uri = "/"
1840
+ o.input = Shapes::ShapeRef.new(shape: DescribeAccountAttributesMessage)
1841
+ o.output = Shapes::ShapeRef.new(shape: AccountAttributeList)
1842
+ end)
1843
+
1747
1844
  api.add_operation(:describe_cluster_db_revisions, Seahorse::Model::Operation.new.tap do |o|
1748
1845
  o.name = "DescribeClusterDbRevisions"
1749
1846
  o.http_method = "POST"
@@ -1751,6 +1848,7 @@ module Aws::Redshift
1751
1848
  o.input = Shapes::ShapeRef.new(shape: DescribeClusterDbRevisionsMessage)
1752
1849
  o.output = Shapes::ShapeRef.new(shape: ClusterDbRevisionsMessage)
1753
1850
  o.errors << Shapes::ShapeRef.new(shape: ClusterNotFoundFault)
1851
+ o.errors << Shapes::ShapeRef.new(shape: InvalidClusterStateFault)
1754
1852
  end)
1755
1853
 
1756
1854
  api.add_operation(:describe_cluster_parameter_groups, Seahorse::Model::Operation.new.tap do |o|
@@ -2176,6 +2274,15 @@ module Aws::Redshift
2176
2274
  o.errors << Shapes::ShapeRef.new(shape: ClusterNotFoundFault)
2177
2275
  end)
2178
2276
 
2277
+ api.add_operation(:modify_cluster_maintenance, Seahorse::Model::Operation.new.tap do |o|
2278
+ o.name = "ModifyClusterMaintenance"
2279
+ o.http_method = "POST"
2280
+ o.http_request_uri = "/"
2281
+ o.input = Shapes::ShapeRef.new(shape: ModifyClusterMaintenanceMessage)
2282
+ o.output = Shapes::ShapeRef.new(shape: ModifyClusterMaintenanceResult)
2283
+ o.errors << Shapes::ShapeRef.new(shape: ClusterNotFoundFault)
2284
+ end)
2285
+
2179
2286
  api.add_operation(:modify_cluster_parameter_group, Seahorse::Model::Operation.new.tap do |o|
2180
2287
  o.name = "ModifyClusterParameterGroup"
2181
2288
  o.http_method = "POST"
@@ -48,6 +48,35 @@ module Aws::Redshift
48
48
  include Aws::Structure
49
49
  end
50
50
 
51
+ # A name value pair that describes an aspect of an account.
52
+ #
53
+ # @!attribute [rw] attribute_name
54
+ # The name of the attribute.
55
+ # @return [String]
56
+ #
57
+ # @!attribute [rw] attribute_values
58
+ # A list of attribute values.
59
+ # @return [Array<Types::AttributeValueTarget>]
60
+ #
61
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AccountAttribute AWS API Documentation
62
+ #
63
+ class AccountAttribute < Struct.new(
64
+ :attribute_name,
65
+ :attribute_values)
66
+ include Aws::Structure
67
+ end
68
+
69
+ # @!attribute [rw] account_attributes
70
+ # A list of attributes assigned to an account.
71
+ # @return [Array<Types::AccountAttribute>]
72
+ #
73
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AccountAttributeList AWS API Documentation
74
+ #
75
+ class AccountAttributeList < Struct.new(
76
+ :account_attributes)
77
+ include Aws::Structure
78
+ end
79
+
51
80
  # Describes an AWS customer account authorized to restore a snapshot.
52
81
  #
53
82
  # @!attribute [rw] account_id
@@ -69,6 +98,19 @@ module Aws::Redshift
69
98
  include Aws::Structure
70
99
  end
71
100
 
101
+ # Describes an attribute value.
102
+ #
103
+ # @!attribute [rw] attribute_value
104
+ # The value of the attribute.
105
+ # @return [String]
106
+ #
107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/AttributeValueTarget AWS API Documentation
108
+ #
109
+ class AttributeValueTarget < Struct.new(
110
+ :attribute_value)
111
+ include Aws::Structure
112
+ end
113
+
72
114
  # @note When making an API call, you may pass AuthorizeClusterSecurityGroupIngressMessage
73
115
  # data as a hash:
74
116
  #
@@ -186,6 +228,25 @@ module Aws::Redshift
186
228
  include Aws::Structure
187
229
  end
188
230
 
231
+ # @note When making an API call, you may pass CancelResizeMessage
232
+ # data as a hash:
233
+ #
234
+ # {
235
+ # cluster_identifier: "String", # required
236
+ # }
237
+ #
238
+ # @!attribute [rw] cluster_identifier
239
+ # The unique identifier for the cluster whose resize operation you
240
+ # wish to cancel.
241
+ # @return [String]
242
+ #
243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/CancelResizeMessage AWS API Documentation
244
+ #
245
+ class CancelResizeMessage < Struct.new(
246
+ :cluster_identifier)
247
+ include Aws::Structure
248
+ end
249
+
189
250
  # Describes a cluster.
190
251
  #
191
252
  # @!attribute [rw] cluster_identifier
@@ -201,6 +262,8 @@ module Aws::Redshift
201
262
  #
202
263
  # * `available`
203
264
  #
265
+ # * `cancelling-resize`
266
+ #
204
267
  # * `creating`
205
268
  #
206
269
  # * `deleting`
@@ -339,6 +402,11 @@ module Aws::Redshift
339
402
  # snapshot.
340
403
  # @return [Types::RestoreStatus]
341
404
  #
405
+ # @!attribute [rw] data_transfer_progress
406
+ # Describes the status of a cluster while it is in the process of
407
+ # resizing with an incremental resize.
408
+ # @return [Types::DataTransferProgress]
409
+ #
342
410
  # @!attribute [rw] hsm_status
343
411
  # A value that reports whether the Amazon Redshift cluster has
344
412
  # finished applying any hardware security module (HSM) settings
@@ -411,6 +479,19 @@ module Aws::Redshift
411
479
  # elastic resize method.
412
480
  # @return [String]
413
481
  #
482
+ # @!attribute [rw] deferred_maintenance_windows
483
+ # Describes a group of `DeferredMaintenanceWindow` objects.
484
+ # @return [Array<Types::DeferredMaintenanceWindow>]
485
+ #
486
+ # @!attribute [rw] resize_info
487
+ # Returns the following:
488
+ #
489
+ # * AllowCancelResize: a boolean value indicating if the resize
490
+ # operation can be cancelled.
491
+ #
492
+ # * ResizeType: Returns ClassicResize
493
+ # @return [Types::ResizeInfo]
494
+ #
414
495
  # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/Cluster AWS API Documentation
415
496
  #
416
497
  class Cluster < Struct.new(
@@ -437,6 +518,7 @@ module Aws::Redshift
437
518
  :publicly_accessible,
438
519
  :encrypted,
439
520
  :restore_status,
521
+ :data_transfer_progress,
440
522
  :hsm_status,
441
523
  :cluster_snapshot_copy_status,
442
524
  :cluster_public_key,
@@ -449,7 +531,9 @@ module Aws::Redshift
449
531
  :iam_roles,
450
532
  :pending_actions,
451
533
  :maintenance_track_name,
452
- :elastic_resize_number_of_node_options)
534
+ :elastic_resize_number_of_node_options,
535
+ :deferred_maintenance_windows,
536
+ :resize_info)
453
537
  include Aws::Structure
454
538
  end
455
539
 
@@ -1812,7 +1896,7 @@ module Aws::Redshift
1812
1896
  # Specifies the Amazon Redshift event categories to be published by
1813
1897
  # the event notification subscription.
1814
1898
  #
1815
- # Values: Configuration, Management, Monitoring, Security
1899
+ # Values: configuration, management, monitoring, security
1816
1900
  # @return [Array<String>]
1817
1901
  #
1818
1902
  # @!attribute [rw] severity
@@ -2089,6 +2173,49 @@ module Aws::Redshift
2089
2173
  include Aws::Structure
2090
2174
  end
2091
2175
 
2176
+ # Describes the status of a cluster while it is in the process of
2177
+ # resizing with an incremental resize.
2178
+ #
2179
+ # @!attribute [rw] status
2180
+ # Describes the status of the cluster. While the transfer is in
2181
+ # progress the status is `transferringdata`.
2182
+ # @return [String]
2183
+ #
2184
+ # @!attribute [rw] current_rate_in_mega_bytes_per_second
2185
+ # Describes the data transfer rate in MB's per second.
2186
+ # @return [Float]
2187
+ #
2188
+ # @!attribute [rw] total_data_in_mega_bytes
2189
+ # Describes the total amount of data to be transfered in megabytes.
2190
+ # @return [Integer]
2191
+ #
2192
+ # @!attribute [rw] data_transferred_in_mega_bytes
2193
+ # Describes the total amount of data that has been transfered in
2194
+ # MB's.
2195
+ # @return [Integer]
2196
+ #
2197
+ # @!attribute [rw] estimated_time_to_completion_in_seconds
2198
+ # Describes the estimated number of seconds remaining to complete the
2199
+ # transfer.
2200
+ # @return [Integer]
2201
+ #
2202
+ # @!attribute [rw] elapsed_time_in_seconds
2203
+ # Describes the number of seconds that have elapsed during the data
2204
+ # transfer.
2205
+ # @return [Integer]
2206
+ #
2207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DataTransferProgress AWS API Documentation
2208
+ #
2209
+ class DataTransferProgress < Struct.new(
2210
+ :status,
2211
+ :current_rate_in_mega_bytes_per_second,
2212
+ :total_data_in_mega_bytes,
2213
+ :data_transferred_in_mega_bytes,
2214
+ :estimated_time_to_completion_in_seconds,
2215
+ :elapsed_time_in_seconds)
2216
+ include Aws::Structure
2217
+ end
2218
+
2092
2219
  # Describes the default cluster parameters for a parameter group family.
2093
2220
  #
2094
2221
  # @!attribute [rw] parameter_group_family
@@ -2118,6 +2245,31 @@ module Aws::Redshift
2118
2245
  include Aws::Structure
2119
2246
  end
2120
2247
 
2248
+ # Describes a deferred maintenance window
2249
+ #
2250
+ # @!attribute [rw] defer_maintenance_identifier
2251
+ # A unique identifier for the maintenance window.
2252
+ # @return [String]
2253
+ #
2254
+ # @!attribute [rw] defer_maintenance_start_time
2255
+ # A timestamp for the beginning of the time period when we defer
2256
+ # maintenance.
2257
+ # @return [Time]
2258
+ #
2259
+ # @!attribute [rw] defer_maintenance_end_time
2260
+ # A timestamp for the end of the time period when we defer
2261
+ # maintenance.
2262
+ # @return [Time]
2263
+ #
2264
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DeferredMaintenanceWindow AWS API Documentation
2265
+ #
2266
+ class DeferredMaintenanceWindow < Struct.new(
2267
+ :defer_maintenance_identifier,
2268
+ :defer_maintenance_start_time,
2269
+ :defer_maintenance_end_time)
2270
+ include Aws::Structure
2271
+ end
2272
+
2121
2273
  # @note When making an API call, you may pass DeleteClusterMessage
2122
2274
  # data as a hash:
2123
2275
  #
@@ -2396,6 +2548,24 @@ module Aws::Redshift
2396
2548
  include Aws::Structure
2397
2549
  end
2398
2550
 
2551
+ # @note When making an API call, you may pass DescribeAccountAttributesMessage
2552
+ # data as a hash:
2553
+ #
2554
+ # {
2555
+ # attribute_names: ["String"],
2556
+ # }
2557
+ #
2558
+ # @!attribute [rw] attribute_names
2559
+ # A list of attribute names.
2560
+ # @return [Array<String>]
2561
+ #
2562
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/DescribeAccountAttributesMessage AWS API Documentation
2563
+ #
2564
+ class DescribeAccountAttributesMessage < Struct.new(
2565
+ :attribute_names)
2566
+ include Aws::Structure
2567
+ end
2568
+
2399
2569
  # @note When making an API call, you may pass DescribeClusterDbRevisionsMessage
2400
2570
  # data as a hash:
2401
2571
  #
@@ -4808,6 +4978,70 @@ module Aws::Redshift
4808
4978
  include Aws::Structure
4809
4979
  end
4810
4980
 
4981
+ # @note When making an API call, you may pass ModifyClusterMaintenanceMessage
4982
+ # data as a hash:
4983
+ #
4984
+ # {
4985
+ # cluster_identifier: "String", # required
4986
+ # defer_maintenance: false,
4987
+ # defer_maintenance_identifier: "String",
4988
+ # defer_maintenance_start_time: Time.now,
4989
+ # defer_maintenance_end_time: Time.now,
4990
+ # defer_maintenance_duration: 1,
4991
+ # }
4992
+ #
4993
+ # @!attribute [rw] cluster_identifier
4994
+ # A unique identifier for the cluster.
4995
+ # @return [String]
4996
+ #
4997
+ # @!attribute [rw] defer_maintenance
4998
+ # A boolean indicating whether to enable the deferred maintenance
4999
+ # window.
5000
+ # @return [Boolean]
5001
+ #
5002
+ # @!attribute [rw] defer_maintenance_identifier
5003
+ # A unique identifier for the deferred maintenance window.
5004
+ # @return [String]
5005
+ #
5006
+ # @!attribute [rw] defer_maintenance_start_time
5007
+ # A timestamp indicating the start time for the deferred maintenance
5008
+ # window.
5009
+ # @return [Time]
5010
+ #
5011
+ # @!attribute [rw] defer_maintenance_end_time
5012
+ # A timestamp indicating end time for the deferred maintenance window.
5013
+ # If you specify an end time, you can't specify a duration.
5014
+ # @return [Time]
5015
+ #
5016
+ # @!attribute [rw] defer_maintenance_duration
5017
+ # An integer indicating the duration of the maintenance window in
5018
+ # days. If you specify a duration, you can't specify an end time. The
5019
+ # duration must be 14 days or less.
5020
+ # @return [Integer]
5021
+ #
5022
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterMaintenanceMessage AWS API Documentation
5023
+ #
5024
+ class ModifyClusterMaintenanceMessage < Struct.new(
5025
+ :cluster_identifier,
5026
+ :defer_maintenance,
5027
+ :defer_maintenance_identifier,
5028
+ :defer_maintenance_start_time,
5029
+ :defer_maintenance_end_time,
5030
+ :defer_maintenance_duration)
5031
+ include Aws::Structure
5032
+ end
5033
+
5034
+ # @!attribute [rw] cluster
5035
+ # Describes a cluster.
5036
+ # @return [Types::Cluster]
5037
+ #
5038
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifyClusterMaintenanceResult AWS API Documentation
5039
+ #
5040
+ class ModifyClusterMaintenanceResult < Struct.new(
5041
+ :cluster)
5042
+ include Aws::Structure
5043
+ end
5044
+
4811
5045
  # @note When making an API call, you may pass ModifyClusterMessage
4812
5046
  # data as a hash:
4813
5047
  #
@@ -5272,7 +5506,7 @@ module Aws::Redshift
5272
5506
  # Specifies the Amazon Redshift event categories to be published by
5273
5507
  # the event notification subscription.
5274
5508
  #
5275
- # Values: Configuration, Management, Monitoring, Security
5509
+ # Values: configuration, management, monitoring, security
5276
5510
  # @return [Array<String>]
5277
5511
  #
5278
5512
  # @!attribute [rw] severity
@@ -5960,6 +6194,24 @@ module Aws::Redshift
5960
6194
  include Aws::Structure
5961
6195
  end
5962
6196
 
6197
+ # Describes a resize operation.
6198
+ #
6199
+ # @!attribute [rw] resize_type
6200
+ # Returns the value `ClassicResize`.
6201
+ # @return [String]
6202
+ #
6203
+ # @!attribute [rw] allow_cancel_resize
6204
+ # A boolean value indicating if the resize operation can be cancelled.
6205
+ # @return [Boolean]
6206
+ #
6207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ResizeInfo AWS API Documentation
6208
+ #
6209
+ class ResizeInfo < Struct.new(
6210
+ :resize_type,
6211
+ :allow_cancel_resize)
6212
+ include Aws::Structure
6213
+ end
6214
+
5963
6215
  # Describes the result of a cluster resize operation.
5964
6216
  #
5965
6217
  # @!attribute [rw] target_node_type
@@ -5981,7 +6233,8 @@ module Aws::Redshift
5981
6233
  # @!attribute [rw] status
5982
6234
  # The status of the resize operation.
5983
6235
  #
5984
- # Valid Values: `NONE` \| `IN_PROGRESS` \| `FAILED` \| `SUCCEEDED`
6236
+ # Valid Values: `NONE` \| `IN_PROGRESS` \| `FAILED` \| `SUCCEEDED` \|
6237
+ # `CANCELLING`
5985
6238
  # @return [String]
5986
6239
  #
5987
6240
  # @!attribute [rw] import_tables_completed
@@ -6957,6 +7210,19 @@ module Aws::Redshift
6957
7210
  include Aws::Structure
6958
7211
  end
6959
7212
 
7213
+ # Describes the operations that are allowed on a maintenance track.
7214
+ #
7215
+ # @!attribute [rw] operation_name
7216
+ # A list of the supported operations.
7217
+ # @return [String]
7218
+ #
7219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/SupportedOperation AWS API Documentation
7220
+ #
7221
+ class SupportedOperation < Struct.new(
7222
+ :operation_name)
7223
+ include Aws::Structure
7224
+ end
7225
+
6960
7226
  # A list of supported platforms for orderable clusters.
6961
7227
  #
6962
7228
  # @!attribute [rw] name
@@ -7207,11 +7473,16 @@ module Aws::Redshift
7207
7473
  # The cluster version for the new maintenance track.
7208
7474
  # @return [String]
7209
7475
  #
7476
+ # @!attribute [rw] supported_operations
7477
+ # A list of operations supported by the maintenance track.
7478
+ # @return [Array<Types::SupportedOperation>]
7479
+ #
7210
7480
  # @see http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/UpdateTarget AWS API Documentation
7211
7481
  #
7212
7482
  class UpdateTarget < Struct.new(
7213
7483
  :maintenance_track_name,
7214
- :database_version)
7484
+ :database_version,
7485
+ :supported_operations)
7215
7486
  include Aws::Structure
7216
7487
  end
7217
7488