diff --git a/CHANGELOG.md b/CHANGELOG.md index 22b195dc7f8..cf0d7271207 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +Release v1.44.328 (2023-08-21) +=== + +### Service Client Updates +* `service/cloud9`: Adds new service + * Doc only update to add Ubuntu 22.04 as an Image ID option for Cloud9 +* `service/ec2`: Updates service API and documentation + * The DeleteKeyPair API has been updated to return the keyPairId when an existing key pair is deleted. +* `service/finspace`: Updates service API and documentation +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * Adding support for RDS Aurora Global Database Unplanned Failover +* `service/route53domains`: Updates service documentation + * Fixed typos in description fields + Release v1.44.327 (2023-08-18) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index a515362a1a2..c6bf8832bc8 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -12188,6 +12188,9 @@ var awsPartition = partition{ }, Deprecated: boxedTrue, }, + endpointKey{ + Region: "il-central-1", + }: endpoint{}, endpointKey{ Region: "me-central-1", }: endpoint{}, @@ -18155,6 +18158,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-northeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, endpointKey{ Region: "ap-south-1", }: endpoint{}, @@ -18164,6 +18170,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-4", + }: endpoint{}, endpointKey{ Region: "ca-central-1", }: endpoint{}, diff --git a/aws/version.go b/aws/version.go index 39522c2609b..4b668b74d59 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.44.327" +const SDKVersion = "1.44.328" diff --git a/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json b/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json index fbaea21794b..26763c88c97 100644 --- a/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json +++ b/models/apis/cloud9/2017-09-23/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://cloud9-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://cloud9-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://cloud9-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://cloud9-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://cloud9.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://cloud9.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://cloud9.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://cloud9.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/ec2/2016-11-15/api-2.json b/models/apis/ec2/2016-11-15/api-2.json index dd4b592d6b3..03e4f2d05bf 100755 --- a/models/apis/ec2/2016-11-15/api-2.json +++ b/models/apis/ec2/2016-11-15/api-2.json @@ -1394,7 +1394,8 @@ "method":"POST", "requestUri":"/" }, - "input":{"shape":"DeleteKeyPairRequest"} + "input":{"shape":"DeleteKeyPairRequest"}, + "output":{"shape":"DeleteKeyPairResult"} }, "DeleteLaunchTemplate":{ "name":"DeleteLaunchTemplate", @@ -12979,6 +12980,19 @@ } } }, + "DeleteKeyPairResult":{ + "type":"structure", + "members":{ + "Return":{ + "shape":"Boolean", + "locationName":"return" + }, + "KeyPairId":{ + "shape":"String", + "locationName":"keyPairId" + } + } + }, "DeleteLaunchTemplateRequest":{ "type":"structure", "members":{ diff --git a/models/apis/ec2/2016-11-15/docs-2.json b/models/apis/ec2/2016-11-15/docs-2.json index f85d793c475..29f9b9930a2 100755 --- a/models/apis/ec2/2016-11-15/docs-2.json +++ b/models/apis/ec2/2016-11-15/docs-2.json @@ -2093,6 +2093,7 @@ "DeleteIpamResourceDiscoveryRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeleteIpamScopeRequest$DryRun": "

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeleteKeyPairRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "DeleteKeyPairResult$Return": "

Is true if the request succeeds, and an error otherwise.

", "DeleteLaunchTemplateRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeleteLaunchTemplateVersionsRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "DeleteLocalGatewayRouteRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

", @@ -5243,6 +5244,11 @@ "refs": { } }, + "DeleteKeyPairResult": { + "base": null, + "refs": { + } + }, "DeleteLaunchTemplateRequest": { "base": null, "refs": { @@ -18761,6 +18767,7 @@ "DeleteClientVpnRouteRequest$DestinationCidrBlock": "

The IPv4 address range, in CIDR notation, of the route to be deleted.

", "DeleteCoipCidrRequest$Cidr": "

A customer-owned IP address range that you want to delete.

", "DeleteFleetError$Message": "

The description for the error code.

", + "DeleteKeyPairResult$KeyPairId": "

The ID of the key pair.

", "DeleteLaunchTemplateVersionsResponseErrorItem$LaunchTemplateId": "

The ID of the launch template.

", "DeleteLaunchTemplateVersionsResponseErrorItem$LaunchTemplateName": "

The name of the launch template.

", "DeleteLaunchTemplateVersionsResponseSuccessItem$LaunchTemplateId": "

The ID of the launch template.

", diff --git a/models/apis/finspace/2021-03-12/api-2.json b/models/apis/finspace/2021-03-12/api-2.json index 7c04f7ddabc..4111a8df37a 100644 --- a/models/apis/finspace/2021-03-12/api-2.json +++ b/models/apis/finspace/2021-03-12/api-2.json @@ -499,6 +499,7 @@ {"shape":"AccessDeniedException"}, {"shape":"LimitExceededException"}, {"shape":"ValidationException"}, + {"shape":"ConflictException"}, {"shape":"ResourceNotFoundException"} ] }, @@ -576,6 +577,7 @@ "AccessDeniedException":{ "type":"structure", "members":{ + "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":403}, "exception":true @@ -1444,6 +1446,18 @@ "type":"string", "enum":["IP_V4"] }, + "IcmpTypeCode":{ + "type":"structure", + "required":[ + "type", + "code" + ], + "members":{ + "type":{"shape":"IcmpTypeOrCode"}, + "code":{"shape":"IcmpTypeOrCode"} + } + }, + "IcmpTypeOrCode":{"type":"integer"}, "IdType":{ "type":"string", "max":26, @@ -1612,7 +1626,7 @@ "type":"string", "max":50, "min":1, - "pattern":"^[a-zA-Z0-9][a-zA-Z0-9_:.]*" + "pattern":"^[a-zA-Z0-9_:./]+$" }, "KxCommandLineArguments":{ "type":"list", @@ -1658,6 +1672,20 @@ "type":"list", "member":{"shape":"KxDatabaseListEntry"} }, + "KxDeploymentConfiguration":{ + "type":"structure", + "required":["deploymentStrategy"], + "members":{ + "deploymentStrategy":{"shape":"KxDeploymentStrategy"} + } + }, + "KxDeploymentStrategy":{ + "type":"string", + "enum":[ + "NO_RESTART", + "ROLLING" + ] + }, "KxEnvironment":{ "type":"structure", "members":{ @@ -1995,16 +2023,38 @@ "min":1, "pattern":"^[a-zA-Z0-9]{1,50}$" }, + "NetworkACLConfiguration":{ + "type":"list", + "member":{"shape":"NetworkACLEntry"}, + "max":100, + "min":1 + }, + "NetworkACLEntry":{ + "type":"structure", + "required":[ + "ruleNumber", + "protocol", + "ruleAction", + "cidrBlock" + ], + "members":{ + "ruleNumber":{"shape":"RuleNumber"}, + "protocol":{"shape":"Protocol"}, + "ruleAction":{"shape":"RuleAction"}, + "portRange":{"shape":"PortRange"}, + "icmpTypeCode":{"shape":"IcmpTypeCode"}, + "cidrBlock":{"shape":"ValidCIDRBlock"} + } + }, "NodeCount":{ "type":"integer", - "max":5, "min":1 }, "NodeType":{ "type":"string", "max":32, "min":1, - "pattern":"^[a-zA-Z0-9._]+" + "pattern":"^[a-zA-Z0-9._]+$" }, "PaginationToken":{ "type":"string", @@ -2012,11 +2062,33 @@ "min":1, "pattern":".*" }, + "Port":{ + "type":"integer", + "max":65535, + "min":0 + }, + "PortRange":{ + "type":"structure", + "required":[ + "from", + "to" + ], + "members":{ + "from":{"shape":"Port"}, + "to":{"shape":"Port"} + } + }, + "Protocol":{ + "type":"string", + "max":5, + "min":1, + "pattern":"^-1|[0-9]+$" + }, "ReleaseLabel":{ "type":"string", "max":16, "min":1, - "pattern":"^[a-zA-Z0-9._-]+" + "pattern":"^[a-zA-Z0-9._-]+$" }, "ResourceAlreadyExistsException":{ "type":"structure", @@ -2045,6 +2117,18 @@ "min":20, "pattern":"^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$" }, + "RuleAction":{ + "type":"string", + "enum":[ + "allow", + "deny" + ] + }, + "RuleNumber":{ + "type":"integer", + "max":32766, + "min":1 + }, "S3Bucket":{ "type":"string", "max":255, @@ -2176,6 +2260,7 @@ "ThrottlingException":{ "type":"structure", "members":{ + "message":{"shape":"errorMessage"} }, "error":{"httpStatusCode":429}, "exception":true @@ -2189,7 +2274,8 @@ ], "members":{ "transitGatewayID":{"shape":"TransitGatewayID"}, - "routableCIDRSpace":{"shape":"ValidCIDRSpace"} + "routableCIDRSpace":{"shape":"ValidCIDRSpace"}, + "attachmentNetworkAclConfiguration":{"shape":"NetworkACLConfiguration"} } }, "TransitGatewayID":{ @@ -2260,8 +2346,12 @@ "location":"uri", "locationName":"clusterName" }, - "clientToken":{"shape":"ClientTokenString"}, - "databases":{"shape":"KxDatabaseConfigurations"} + "clientToken":{ + "shape":"ClientTokenString", + "idempotencyToken":true + }, + "databases":{"shape":"KxDatabaseConfigurations"}, + "deploymentConfiguration":{"shape":"KxDeploymentConfiguration"} } }, "UpdateKxClusterDatabasesResponse":{ @@ -2404,10 +2494,13 @@ "iamRole":{"shape":"RoleArn"} } }, - "ValidCIDRSpace":{ + "ValidCIDRBlock":{ "type":"string", - "pattern":"^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\/26$" + "max":18, + "min":1, + "pattern":"^(?:\\d{1,3}\\.){3}\\d{1,3}(?:\\/(?:3[0-2]|[12]\\d|\\d))$" }, + "ValidCIDRSpace":{"type":"string"}, "ValidHostname":{ "type":"string", "max":255, diff --git a/models/apis/finspace/2021-03-12/docs-2.json b/models/apis/finspace/2021-03-12/docs-2.json index 44445c06f6f..88b517d256e 100644 --- a/models/apis/finspace/2021-03-12/docs-2.json +++ b/models/apis/finspace/2021-03-12/docs-2.json @@ -96,11 +96,11 @@ } }, "CapacityConfiguration": { - "base": "

A structure for the metadata of a cluster. It includes information like the CPUs needed, memory of instances, number of instances, and the port used while establishing a connection.

", + "base": "

A structure for the metadata of a cluster. It includes information like the CPUs needed, memory of instances, and number of instances.

", "refs": { - "CreateKxClusterRequest$capacityConfiguration": "

A structure for the metadata of a cluster. It includes information about like the CPUs needed, memory of instances, number of instances, and the port used while establishing a connection.

", - "CreateKxClusterResponse$capacityConfiguration": "

A structure for the metadata of a cluster. It includes information like the CPUs needed, memory of instances, number of instances, and the port used while establishing a connection.

", - "GetKxClusterResponse$capacityConfiguration": "

A structure for the metadata of a cluster. It includes information like the CPUs needed, memory of instances, number of instances, and the port used while establishing a connection.

" + "CreateKxClusterRequest$capacityConfiguration": "

A structure for the metadata of a cluster. It includes information like the CPUs needed, memory of instances, and number of instances.

", + "CreateKxClusterResponse$capacityConfiguration": "

A structure for the metadata of a cluster. It includes information like the CPUs needed, memory of instances, and number of instances.

", + "GetKxClusterResponse$capacityConfiguration": "

A structure for the metadata of a cluster. It includes information like the CPUs needed, memory of instances, and number of instances.

" } }, "ChangeRequest": { @@ -605,6 +605,19 @@ "VpcConfiguration$ipAddressType": "

The IP address type for cluster network configuration parameters. The following type is available:

" } }, + "IcmpTypeCode": { + "base": "

Defines the ICMP protocol that consists of the ICMP type and code.

", + "refs": { + "NetworkACLEntry$icmpTypeCode": "

Defines the ICMP protocol that consists of the ICMP type and code.

" + } + }, + "IcmpTypeOrCode": { + "base": null, + "refs": { + "IcmpTypeCode$type": "

The ICMP type. A value of -1 means all types.

", + "IcmpTypeCode$code": "

The ICMP code. A value of -1 means all codes for the specified ICMP type.

" + } + }, "IdType": { "base": null, "refs": { @@ -687,7 +700,7 @@ "CreateKxClusterRequest$azMode": "

The number of availability zones you want to assign per cluster. This can be one of the following

", "CreateKxClusterResponse$azMode": "

The number of availability zones you want to assign per cluster. This can be one of the following

", "GetKxClusterResponse$azMode": "

The number of availability zones you want to assign per cluster. This can be one of the following

", - "KxCluster$azMode": "

The number of availability zones assigned per cluster. This can be one of the following

" + "KxCluster$azMode": "

The number of availability zones assigned per cluster. This can be one of the following:

" } }, "KxCacheStorageConfiguration": { @@ -861,6 +874,18 @@ "ListKxDatabasesResponse$kxDatabases": "

A list of databases in the kdb environment.

" } }, + "KxDeploymentConfiguration": { + "base": "

The configuration that allows you to choose how you want to update the databases on a cluster. Depending on the option you choose, you can reduce the time it takes to update the database changesets on to a cluster.

", + "refs": { + "UpdateKxClusterDatabasesRequest$deploymentConfiguration": "

The configuration that allows you to choose how you want to update the databases on a cluster.

" + } + }, + "KxDeploymentStrategy": { + "base": null, + "refs": { + "KxDeploymentConfiguration$deploymentStrategy": "

The type of deployment that you want on a cluster.

" + } + }, "KxEnvironment": { "base": "

The details of a kdb environment.

", "refs": { @@ -920,7 +945,7 @@ "KxSavedownStorageSize": { "base": null, "refs": { - "KxSavedownStorageConfiguration$size": "

The size of temporary storage in bytes.

" + "KxSavedownStorageConfiguration$size": "

The size of temporary storage in gibibytes.

" } }, "KxSavedownStorageType": { @@ -938,11 +963,11 @@ "KxUserArn": { "base": null, "refs": { - "CreateKxUserResponse$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

", - "GetKxConnectionStringRequest$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

", - "GetKxUserResponse$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

", - "KxUser$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

", - "UpdateKxUserResponse$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

" + "CreateKxUserResponse$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

", + "GetKxConnectionStringRequest$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

", + "GetKxUserResponse$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

", + "KxUser$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

", + "UpdateKxUserResponse$userArn": "

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

" } }, "KxUserList": { @@ -1063,6 +1088,18 @@ "SuperuserParameters$lastName": "

The last name of the superuser.

" } }, + "NetworkACLConfiguration": { + "base": null, + "refs": { + "TransitGatewayConfiguration$attachmentNetworkAclConfiguration": "

The rules that define how you manage the outbound traffic from kdb network to your internal network.

" + } + }, + "NetworkACLEntry": { + "base": "

The network access control list (ACL) is an optional layer of security for your VPC that acts as a firewall for controlling traffic in and out of one or more subnets. The entry is a set of numbered ingress and egress rules that determine whether a packet should be allowed in or out of a subnet associated with the ACL. We process the entries in the ACL according to the rule numbers, in ascending order.

", + "refs": { + "NetworkACLConfiguration$member": null + } + }, "NodeCount": { "base": null, "refs": { @@ -1096,6 +1133,25 @@ "ListKxUsersResponse$nextToken": "

A token that indicates where a results page should begin.

" } }, + "Port": { + "base": null, + "refs": { + "PortRange$from": "

The first port in the range.

", + "PortRange$to": "

The last port in the range.

" + } + }, + "PortRange": { + "base": "

The range of ports the rule applies to.

", + "refs": { + "NetworkACLEntry$portRange": "

The range of ports the rule applies to.

" + } + }, + "Protocol": { + "base": null, + "refs": { + "NetworkACLEntry$protocol": "

The protocol number. A value of -1 means all the protocols.

" + } + }, "ReleaseLabel": { "base": null, "refs": { @@ -1134,6 +1190,18 @@ "UpdateKxUserResponse$iamRole": "

The IAM role ARN that is associated with the user.

" } }, + "RuleAction": { + "base": null, + "refs": { + "NetworkACLEntry$ruleAction": "

Indicates whether to allow or deny the traffic that matches the rule.

" + } + }, + "RuleNumber": { + "base": null, + "refs": { + "NetworkACLEntry$ruleNumber": "

The rule number for the entry. For example 100. All the network ACL entries are processed in ascending order by rule number.

" + } + }, "S3Bucket": { "base": null, "refs": { @@ -1381,6 +1449,12 @@ "refs": { } }, + "ValidCIDRBlock": { + "base": null, + "refs": { + "NetworkACLEntry$cidrBlock": "

The IPv4 network range to allow or deny, in CIDR notation. For example, 172.16.0.0/24. We modify the specified CIDR block to its canonical form. For example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

" + } + }, "ValidCIDRSpace": { "base": null, "refs": { @@ -1430,6 +1504,7 @@ "errorMessage": { "base": null, "refs": { + "AccessDeniedException$message": null, "ConflictException$message": null, "ConflictException$reason": "

The reason for the conflict exception.

", "InternalServerException$message": null, @@ -1438,6 +1513,7 @@ "ResourceAlreadyExistsException$message": null, "ResourceNotFoundException$message": null, "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, "ValidationException$message": null } }, diff --git a/models/apis/finspace/2021-03-12/endpoint-rule-set-1.json b/models/apis/finspace/2021-03-12/endpoint-rule-set-1.json index 5299e3d75a8..2ae22d4be88 100644 --- a/models/apis/finspace/2021-03-12/endpoint-rule-set-1.json +++ b/models/apis/finspace/2021-03-12/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://finspace-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://finspace-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://finspace-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://finspace-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://finspace.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://finspace.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://finspace.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://finspace.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/rds/2014-10-31/api-2.json b/models/apis/rds/2014-10-31/api-2.json index caf39366e5c..ffe21eac8da 100644 --- a/models/apis/rds/2014-10-31/api-2.json +++ b/models/apis/rds/2014-10-31/api-2.json @@ -2515,6 +2515,24 @@ {"shape":"InvalidBlueGreenDeploymentStateFault"} ] }, + "SwitchoverGlobalCluster":{ + "name":"SwitchoverGlobalCluster", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SwitchoverGlobalClusterMessage"}, + "output":{ + "shape":"SwitchoverGlobalClusterResult", + "resultWrapper":"SwitchoverGlobalClusterResult" + }, + "errors":[ + {"shape":"GlobalClusterNotFoundFault"}, + {"shape":"InvalidGlobalClusterStateFault"}, + {"shape":"InvalidDBClusterStateFault"}, + {"shape":"DBClusterNotFoundFault"} + ] + }, "SwitchoverReadReplica":{ "name":"SwitchoverReadReplica", "http":{ @@ -6147,7 +6165,9 @@ ], "members":{ "GlobalClusterIdentifier":{"shape":"GlobalClusterIdentifier"}, - "TargetDbClusterIdentifier":{"shape":"DBClusterIdentifier"} + "TargetDbClusterIdentifier":{"shape":"DBClusterIdentifier"}, + "AllowDataLoss":{"shape":"BooleanOptional"}, + "Switchover":{"shape":"BooleanOptional"} } }, "FailoverGlobalClusterResult":{ @@ -6161,7 +6181,8 @@ "members":{ "Status":{"shape":"FailoverStatus"}, "FromDbClusterArn":{"shape":"String"}, - "ToDbClusterArn":{"shape":"String"} + "ToDbClusterArn":{"shape":"String"}, + "IsDataLossAllowed":{"shape":"Boolean"} }, "wrapper":true }, @@ -6249,7 +6270,8 @@ "DBClusterArn":{"shape":"String"}, "Readers":{"shape":"ReadersArnList"}, "IsWriter":{"shape":"Boolean"}, - "GlobalWriteForwardingStatus":{"shape":"WriteForwardingStatus"} + "GlobalWriteForwardingStatus":{"shape":"WriteForwardingStatus"}, + "SynchronizationStatus":{"shape":"GlobalClusterMemberSynchronizationStatus"} }, "wrapper":true }, @@ -6260,6 +6282,13 @@ "locationName":"GlobalClusterMember" } }, + "GlobalClusterMemberSynchronizationStatus":{ + "type":"string", + "enum":[ + "connected", + "pending-resync" + ] + }, "GlobalClusterNotFoundFault":{ "type":"structure", "members":{ @@ -8735,6 +8764,23 @@ "member":{"shape":"SwitchoverDetail"} }, "SwitchoverDetailStatus":{"type":"string"}, + "SwitchoverGlobalClusterMessage":{ + "type":"structure", + "required":[ + "GlobalClusterIdentifier", + "TargetDbClusterIdentifier" + ], + "members":{ + "GlobalClusterIdentifier":{"shape":"GlobalClusterIdentifier"}, + "TargetDbClusterIdentifier":{"shape":"DBClusterIdentifier"} + } + }, + "SwitchoverGlobalClusterResult":{ + "type":"structure", + "members":{ + "GlobalCluster":{"shape":"GlobalCluster"} + } + }, "SwitchoverReadReplicaMessage":{ "type":"structure", "required":["DBInstanceIdentifier"], diff --git a/models/apis/rds/2014-10-31/docs-2.json b/models/apis/rds/2014-10-31/docs-2.json index 749c8660490..33a7c641eea 100644 --- a/models/apis/rds/2014-10-31/docs-2.json +++ b/models/apis/rds/2014-10-31/docs-2.json @@ -93,7 +93,7 @@ "DescribeValidDBInstanceModifications": "

You can call DescribeValidDBInstanceModifications to learn what modifications you can make to your DB instance. You can use this information when you call ModifyDBInstance.

This command doesn't apply to RDS Custom.

", "DownloadDBLogFilePortion": "

Downloads all or a portion of the specified log file, up to 1 MB in size.

This command doesn't apply to RDS Custom.

", "FailoverDBCluster": "

Forces a failover for a DB cluster.

For an Aurora DB cluster, failover for a DB cluster promotes one of the Aurora Replicas (read-only instances) in the DB cluster to be the primary DB instance (the cluster writer).

For a Multi-AZ DB cluster, failover for a DB cluster promotes one of the readable standby DB instances (read-only instances) in the DB cluster to be the primary DB instance (the cluster writer).

An Amazon Aurora DB cluster automatically fails over to an Aurora Replica, if one exists, when the primary DB instance fails. A Multi-AZ DB cluster automatically fails over to a readable standby DB instance when the primary DB instance fails.

To simulate a failure of a primary instance for testing, you can force a failover. Because each instance in a DB cluster has its own endpoint address, make sure to clean up and re-establish any existing connections that use those endpoint addresses when the failover is complete.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", - "FailoverGlobalCluster": "

Initiates the failover process for an Aurora global database (GlobalCluster).

A failover for an Aurora global database promotes one of secondary read-only DB clusters to be the primary DB cluster and demotes the primary DB cluster to being a secondary (read-only) DB cluster. In other words, the role of the current primary DB cluster and the selected (target) DB cluster are switched. The selected secondary DB cluster assumes full read/write capabilities for the Aurora global database.

For more information about failing over an Amazon Aurora global database, see Managed planned failover for Amazon Aurora global databases in the Amazon Aurora User Guide.

This action applies to GlobalCluster (Aurora global databases) only. Use this action only on healthy Aurora global databases with running Aurora DB clusters and no Region-wide outages, to test disaster recovery scenarios or to reconfigure your Aurora global database topology.

", + "FailoverGlobalCluster": "

Promotes the specified secondary DB cluster to be the primary DB cluster in the global database cluster to fail over or switch over a global database. Switchover operations were previously called \"managed planned failovers.\"

Although this operation can be used either to fail over or to switch over a global database cluster, its intended use is for global database failover. To switch over a global database cluster, we recommend that you use the SwitchoverGlobalCluster operation instead.

How you use this operation depends on whether you are failing over or switching over your global database cluster:

About failing over and switching over

While failing over and switching over a global database cluster both change the primary DB cluster, you use these operations for different reasons:

", "ListTagsForResource": "

Lists all tags on an Amazon RDS resource.

For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

", "ModifyActivityStream": "

Changes the audit policy state of a database activity stream to either locked (default) or unlocked. A locked policy is read-only, whereas an unlocked policy is read/write. If your activity stream is started and locked, you can unlock it, customize your audit policy, and then lock your activity stream. Restarting the activity stream isn't required. For more information, see Modifying a database activity stream in the Amazon RDS User Guide.

This operation is supported for RDS for Oracle and Microsoft SQL Server.

", "ModifyCertificates": "

Override the system-default Secure Sockets Layer/Transport Layer Security (SSL/TLS) certificate for Amazon RDS for new DB instances, or remove the override.

By using this operation, you can specify an RDS-approved SSL/TLS certificate for new DB instances that is different from the default certificate provided by RDS. You can also use this operation to remove the override, so that new DB instances use the default certificate provided by RDS.

You might need to override the default certificate in the following situations:

For more information about rotating your SSL/TLS certificate for RDS DB engines, see Rotating Your SSL/TLS Certificate in the Amazon RDS User Guide.

For more information about rotating your SSL/TLS certificate for Aurora DB engines, see Rotating Your SSL/TLS Certificate in the Amazon Aurora User Guide.

", @@ -112,7 +112,7 @@ "ModifyDBSnapshotAttribute": "

Adds an attribute and values to, or removes an attribute and values from, a manual DB snapshot.

To share a manual DB snapshot with other Amazon Web Services accounts, specify restore as the AttributeName and use the ValuesToAdd parameter to add a list of IDs of the Amazon Web Services accounts that are authorized to restore the manual DB snapshot. Uses the value all to make the manual DB snapshot public, which means it can be copied or restored by all Amazon Web Services accounts.

Don't add the all value for any manual DB snapshots that contain private information that you don't want available to all Amazon Web Services accounts.

If the manual DB snapshot is encrypted, it can be shared, but only by specifying a list of authorized Amazon Web Services account IDs for the ValuesToAdd parameter. You can't use all as a value for that parameter in this case.

To view which Amazon Web Services accounts have access to copy or restore a manual DB snapshot, or whether a manual DB snapshot public or private, use the DescribeDBSnapshotAttributes API operation. The accounts are returned as values for the restore attribute.

", "ModifyDBSubnetGroup": "

Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the Amazon Web Services Region.

", "ModifyEventSubscription": "

Modifies an existing RDS event notification subscription. You can't modify the source identifiers using this call. To change source identifiers for a subscription, use the AddSourceIdentifierToSubscription and RemoveSourceIdentifierFromSubscription calls.

You can see a list of the event categories for a given source type (SourceType) in Events in the Amazon RDS User Guide or by using the DescribeEventCategories operation.

", - "ModifyGlobalCluster": "

Modifies a setting for an Amazon Aurora global cluster. You can change one or more database configuration parameters by specifying these parameters and the new values in the request. For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This operation only applies to Aurora global database clusters.

", + "ModifyGlobalCluster": "

Modifies a setting for an Amazon Aurora global database cluster. You can change one or more database configuration parameters by specifying these parameters and the new values in the request. For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This operation only applies to Aurora global database clusters.

", "ModifyOptionGroup": "

Modifies an existing option group.

", "PromoteReadReplica": "

Promotes a read replica DB instance to a standalone DB instance.

", "PromoteReadReplicaDBCluster": "

Promotes a read replica DB cluster to a standalone DB cluster.

", @@ -144,6 +144,7 @@ "StopDBInstance": "

Stops an Amazon RDS DB instance. When you stop a DB instance, Amazon RDS retains the DB instance's metadata, including its endpoint, DB parameter group, and option group membership. Amazon RDS also retains the transaction logs so you can do a point-in-time restore if necessary.

For more information, see Stopping an Amazon RDS DB Instance Temporarily in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL. For Aurora clusters, use StopDBCluster instead.

", "StopDBInstanceAutomatedBackupsReplication": "

Stops automated backup replication for a DB instance.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL.

For more information, see Replicating Automated Backups to Another Amazon Web Services Region in the Amazon RDS User Guide.

", "SwitchoverBlueGreenDeployment": "

Switches over a blue/green deployment.

Before you switch over, production traffic is routed to the databases in the blue environment. After you switch over, production traffic is routed to the databases in the green environment.

For more information, see Using Amazon RDS Blue/Green Deployments for database updates in the Amazon RDS User Guide and Using Amazon RDS Blue/Green Deployments for database updates in the Amazon Aurora User Guide.

", + "SwitchoverGlobalCluster": "

Switches over the specified secondary DB cluster to be the new primary DB cluster in the global database cluster. Switchover operations were previously called \"managed planned failovers.\"

Aurora promotes the specified secondary cluster to assume full read/write capabilities and demotes the current primary cluster to a secondary (read-only) cluster, maintaining the orginal replication topology. All secondary clusters are synchronized with the primary at the beginning of the process so the new primary continues operations for the Aurora global database without losing any data. Your database is unavailable for a short time while the primary and selected secondary clusters are assuming their new roles. For more information about switching over an Aurora global database, see Performing switchovers for Amazon Aurora global databases in the Amazon Aurora User Guide.

This operation is intended for controlled environments, for operations such as \"regional rotation\" or to fall back to the original primary after a global database failover.

", "SwitchoverReadReplica": "

Switches over an Oracle standby database in an Oracle Data Guard environment, making it the new primary database. Issue this command in the Region that hosts the current standby database.

" }, "shapes": { @@ -468,7 +469,8 @@ "DescribeDBSnapshotsMessage$IncludePublic": "

A value that indicates whether to include manual DB cluster snapshots that are public and can be copied or restored by any Amazon Web Services account. By default, the public snapshots are not included.

You can share a manual DB snapshot as public by using the ModifyDBSnapshotAttribute API.

This setting doesn't apply to RDS Custom.

", "DownloadDBLogFilePortionDetails$AdditionalDataPending": "

Boolean value that if true, indicates there is more data to be downloaded.

", "EventSubscription$Enabled": "

A Boolean value indicating if the subscription is enabled. True indicates the subscription is enabled.

", - "GlobalClusterMember$IsWriter": "

Specifies whether the Aurora cluster is the primary cluster (that is, has read-write capability) for the Aurora global database with which it is associated.

", + "FailoverState$IsDataLossAllowed": "

Indicates whether the operation is a global switchover or a global failover. If data loss is allowed, then the operation is a global failover. Otherwise, it's a switchover.

", + "GlobalClusterMember$IsWriter": "

Specifies whether the Aurora DB cluster is the primary cluster (that is, has read-write capability) for the global cluster with which it is associated.

", "ModifyDBClusterMessage$ApplyImmediately": "

Specifies whether the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB cluster. If this parameter is disabled, changes to the DB cluster are applied during the next maintenance window.

Most modifications can be applied immediately or during the next scheduled maintenance window. Some modifications, such as turning on deletion protection and changing the master password, are applied immediately—regardless of when you choose to apply them.

By default, this parameter is disabled.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

", "ModifyDBClusterMessage$AllowMajorVersionUpgrade": "

Specifies whether major version upgrades are allowed.

Valid for Cluster Type: Aurora DB clusters only

Constraints:

", "ModifyDBClusterMessage$AllowEngineModeChange": "

Specifies whether engine mode changes from serverless to provisioned are allowed.

Valid for Cluster Type: Aurora Serverless v1 DB clusters only

Constraints:

", @@ -580,6 +582,8 @@ "DescribeOrderableDBInstanceOptionsMessage$Vpc": "

A value that indicates whether to show only VPC or non-VPC offerings. RDS Custom supports only VPC offerings.

RDS Custom supports only VPC offerings. If you describe non-VPC offerings for RDS Custom, the output shows VPC offerings.

", "DescribeReservedDBInstancesMessage$MultiAZ": "

A value that indicates whether to show only those reservations that support Multi-AZ.

", "DescribeReservedDBInstancesOfferingsMessage$MultiAZ": "

A value that indicates whether to show only those reservations that support Multi-AZ.

", + "FailoverGlobalClusterMessage$AllowDataLoss": "

Specifies whether to allow data loss for this global database cluster operation. Allowing data loss triggers a global failover operation.

If you don't specify AllowDataLoss, the global database cluster operation defaults to a switchover.

Constraints:

", + "FailoverGlobalClusterMessage$Switchover": "

Specifies whether to switch over this global database cluster.

Constraints:

", "GlobalCluster$StorageEncrypted": "

The storage encryption setting for the global database cluster.

", "GlobalCluster$DeletionProtection": "

The deletion protection setting for the new global database cluster.

", "ModifyActivityStreamResponse$EngineNativeAuditFieldsIncluded": "

Indicates whether engine-native audit fields are included in the database activity stream.

", @@ -1137,7 +1141,8 @@ "DBClusterIdentifier": { "base": null, "refs": { - "FailoverGlobalClusterMessage$TargetDbClusterIdentifier": "

Identifier of the secondary Aurora DB cluster that you want to promote to primary for the Aurora global database (GlobalCluster.) Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.

" + "FailoverGlobalClusterMessage$TargetDbClusterIdentifier": "

The identifier of the secondary Aurora DB cluster that you want to promote to the primary for the global database cluster. Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.

", + "SwitchoverGlobalClusterMessage$TargetDbClusterIdentifier": "

The identifier of the secondary Aurora DB cluster to promote to the new primary for the global database cluster. Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.

" } }, "DBClusterList": { @@ -2463,15 +2468,15 @@ } }, "FailoverState": { - "base": "

Contains the state of scheduled or in-process failover operations on an Aurora global database (GlobalCluster). This Data type is empty unless a failover operation is scheduled or is currently underway on the Aurora global database.

", + "base": "

Contains the state of scheduled or in-process operations on a global cluster (Aurora global database). This data type is empty unless a switchover or failover operation is scheduled or is in progress on the Aurora global database.

", "refs": { - "GlobalCluster$FailoverState": "

A data object containing all properties for the current state of an in-process or pending failover process for this Aurora global database. This object is empty unless the FailoverGlobalCluster API operation has been called on this Aurora global database (GlobalCluster).

" + "GlobalCluster$FailoverState": "

A data object containing all properties for the current state of an in-process or pending switchover or failover process for this global cluster (Aurora global database). This object is empty unless the SwitchoverGlobalCluster or FailoverGlobalCluster operation was called on this global cluster.

" } }, "FailoverStatus": { "base": null, "refs": { - "FailoverState$Status": "

The current status of the Aurora global database (GlobalCluster). Possible values are as follows:

" + "FailoverState$Status": "

The current status of the global cluster. Possible values are as follows:

" } }, "FeatureNameList": { @@ -2542,7 +2547,8 @@ "FailoverGlobalClusterResult$GlobalCluster": null, "GlobalClusterList$member": null, "ModifyGlobalClusterResult$GlobalCluster": null, - "RemoveFromGlobalClusterResult$GlobalCluster": null + "RemoveFromGlobalClusterResult$GlobalCluster": null, + "SwitchoverGlobalClusterResult$GlobalCluster": null } }, "GlobalClusterAlreadyExistsFault": { @@ -2553,7 +2559,8 @@ "GlobalClusterIdentifier": { "base": null, "refs": { - "FailoverGlobalClusterMessage$GlobalClusterIdentifier": "

Identifier of the Aurora global database (GlobalCluster) that should be failed over. The identifier is the unique key assigned by the user when the Aurora global database was created. In other words, it's the name of the Aurora global database that you want to fail over.

Constraints:

" + "FailoverGlobalClusterMessage$GlobalClusterIdentifier": "

The identifier of the global database cluster (Aurora global database) this operation should apply to. The identifier is the unique key assigned by the user when the Aurora global database is created. In other words, it's the name of the Aurora global database.

Constraints:

", + "SwitchoverGlobalClusterMessage$GlobalClusterIdentifier": "

The identifier of the global database cluster to switch over. This parameter isn't case-sensitive.

Constraints:

" } }, "GlobalClusterList": { @@ -2563,7 +2570,7 @@ } }, "GlobalClusterMember": { - "base": "

A data structure with information about any primary and secondary clusters associated with an Aurora global database.

", + "base": "

A data structure with information about any primary and secondary clusters associated with a global cluster (Aurora global database).

", "refs": { "GlobalClusterMemberList$member": null } @@ -2574,6 +2581,12 @@ "GlobalCluster$GlobalClusterMembers": "

The list of primary and secondary clusters within the global database cluster.

" } }, + "GlobalClusterMemberSynchronizationStatus": { + "base": null, + "refs": { + "GlobalClusterMember$SynchronizationStatus": "

The status of synchronization of each Aurora DB cluster in the global cluster.

" + } + }, "GlobalClusterNotFoundFault": { "base": "

The GlobalClusterIdentifier doesn't refer to an existing global database cluster.

", "refs": { @@ -3559,7 +3572,7 @@ "ReadersArnList": { "base": null, "refs": { - "GlobalClusterMember$Readers": "

The Amazon Resource Name (ARN) for each read-only secondary cluster associated with the Aurora global database.

" + "GlobalClusterMember$Readers": "

The Amazon Resource Name (ARN) for each read-only secondary cluster associated with the global cluster.

" } }, "RebootDBClusterMessage": { @@ -4091,7 +4104,7 @@ "CreateDBClusterMessage$Domain": "

The Active Directory directory ID to create the DB cluster in.

For Amazon Aurora DB clusters, Amazon RDS can use Kerberos authentication to authenticate users that connect to the DB cluster.

For more information, see Kerberos authentication in the Amazon Aurora User Guide.

Valid for Cluster Type: Aurora DB clusters only

", "CreateDBClusterMessage$DomainIAMRoleName": "

The name of the IAM role to use when making API calls to the Directory Service.

Valid for Cluster Type: Aurora DB clusters only

", "CreateDBClusterMessage$DBClusterInstanceClass": "

The compute and memory capacity of each DB instance in the Multi-AZ DB cluster, for example db.m6gd.xlarge. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines.

For the full list of DB instance classes and availability for your engine, see DB instance class in the Amazon RDS User Guide.

This setting is required to create a Multi-AZ DB cluster.

Valid for Cluster Type: Multi-AZ DB clusters only

", - "CreateDBClusterMessage$StorageType": "

The storage type to associate with the DB cluster.

For information on storage types for Aurora DB clusters, see Storage configurations for Amazon Aurora DB clusters. For information on storage types for Multi-AZ DB clusters, see Settings for creating Multi-AZ DB clusters.

This setting is required to create a Multi-AZ DB cluster.

When specified for a Multi-AZ DB cluster, a value for the Iops parameter is required.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

Valid Values:

Default:

", + "CreateDBClusterMessage$StorageType": "

The storage type to associate with the DB cluster.

For information on storage types for Aurora DB clusters, see Storage configurations for Amazon Aurora DB clusters. For information on storage types for Multi-AZ DB clusters, see Settings for creating Multi-AZ DB clusters.

This setting is required to create a Multi-AZ DB cluster.

When specified for a Multi-AZ DB cluster, a value for the Iops parameter is required.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

Valid Values:

Default:

When you create an Aurora DB cluster with the storage type set to aurora-iopt1, the storage type is returned in the response. The storage type isn't returned when you set it to aurora.

", "CreateDBClusterMessage$MonitoringRoleArn": "

The Amazon Resource Name (ARN) for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs. An example is arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, see Setting up and enabling Enhanced Monitoring in the Amazon RDS User Guide.

If MonitoringInterval is set to a value other than 0, supply a MonitoringRoleArn value.

Valid for Cluster Type: Multi-AZ DB clusters only

", "CreateDBClusterMessage$PerformanceInsightsKMSKeyId": "

The Amazon Web Services KMS key identifier for encryption of Performance Insights data.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

If you don't specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

Valid for Cluster Type: Multi-AZ DB clusters only

", "CreateDBClusterMessage$NetworkType": "

The network type of the DB cluster.

The network type is determined by the DBSubnetGroup specified for the DB cluster. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon Aurora User Guide.

Valid for Cluster Type: Aurora DB clusters only

Valid Values: IPV4 | DUAL

", @@ -4610,7 +4623,7 @@ "GlobalCluster$Engine": "

The Aurora database engine used by the global database cluster.

", "GlobalCluster$EngineVersion": "

Indicates the database engine version.

", "GlobalCluster$DatabaseName": "

The default database name within the new global database cluster.

", - "GlobalClusterMember$DBClusterArn": "

The Amazon Resource Name (ARN) for each Aurora cluster.

", + "GlobalClusterMember$DBClusterArn": "

The Amazon Resource Name (ARN) for each Aurora DB cluster in the global cluster.

", "GlobalClustersMessage$Marker": "

An optional pagination token provided by a previous DescribeGlobalClusters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "IPRange$Status": "

Specifies the status of the IP range. Status can be \"authorizing\", \"authorized\", \"revoking\", and \"revoked\".

", "IPRange$CIDRIP": "

Specifies the IP range.

", @@ -5115,6 +5128,16 @@ "SwitchoverDetail$Status": "

The switchover status of a resource in a blue/green deployment.

Values:

" } }, + "SwitchoverGlobalClusterMessage": { + "base": null, + "refs": { + } + }, + "SwitchoverGlobalClusterResult": { + "base": null, + "refs": { + } + }, "SwitchoverReadReplicaMessage": { "base": null, "refs": { @@ -5395,7 +5418,7 @@ "base": null, "refs": { "DBCluster$GlobalWriteForwardingStatus": "

The status of write forwarding for a secondary cluster in an Aurora global database.

", - "GlobalClusterMember$GlobalWriteForwardingStatus": "

Specifies whether a secondary cluster in an Aurora global database has write forwarding enabled, not enabled, or is in the process of enabling it.

" + "GlobalClusterMember$GlobalWriteForwardingStatus": "

Specifies whether a secondary cluster in the global cluster has write forwarding enabled, not enabled, or is in the process of enabling it.

" } } } diff --git a/models/apis/route53domains/2014-05-15/docs-2.json b/models/apis/route53domains/2014-05-15/docs-2.json index ce90ac655c1..1fc5f081317 100644 --- a/models/apis/route53domains/2014-05-15/docs-2.json +++ b/models/apis/route53domains/2014-05-15/docs-2.json @@ -922,7 +922,7 @@ "SortOrder": { "base": null, "refs": { - "ListOperationsRequest$SortOrder": "

The sort order ofr returned values, either ascending or descending.

", + "ListOperationsRequest$SortOrder": "

The sort order for returned values, either ascending or descending.

", "SortCondition$SortOrder": "

The sort order for a list of domains. Either ascending (ASC) or descending (DES).

" } }, @@ -1029,7 +1029,7 @@ } }, "Transferable": { - "base": "

Whether the domain name can be transferred to Route 53.

You can transfer only domains that have a value of TRANSFERABLE or Transferable.

Valid values:

TRANSFERABLE

The domain name can be transferred to Route 53.

UNTRANSFERRABLE

The domain name can't be transferred to Route 53.

DONT_KNOW

Reserved for future use.

DOMAIN_IN_OWN_ACCOUNT

The domain already exists in the current Amazon Web Services account.

DOMAIN_IN_ANOTHER_ACCOUNT

The domain exists in another Amazon Web Services account.

PREMIUM_DOMAIN

Premium domain transfer is not supported.

", + "base": "

Whether the domain name can be transferred to Route 53.

You can transfer only domains that have a value of TRANSFERABLE or Transferable.

Valid values:

TRANSFERABLE

The domain name can be transferred to Route 53.

UNTRANSFERRABLE

The domain name can't be transferred to Route 53.

DONT_KNOW

Reserved for future use.

DOMAIN_IN_OWN_ACCOUNT

The domain already exists in the current Amazon Web Services account.

DOMAIN_IN_ANOTHER_ACCOUNT

the domain exists in another Amazon Web Services account.

PREMIUM_DOMAIN

Premium domain transfer is not supported.

", "refs": { "DomainTransferability$Transferable": null } diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 4a866057efa..08d8b0c524c 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -6924,6 +6924,7 @@ "deprecated" : true, "hostname" : "fms-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { "variants" : [ { @@ -10492,9 +10493,11 @@ "af-south-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-4" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "mediaconvert-fips.ca-central-1.amazonaws.com", diff --git a/service/ec2/api.go b/service/ec2/api.go index 0f9ca0e2a13..7de3061fe0a 100644 --- a/service/ec2/api.go +++ b/service/ec2/api.go @@ -12458,7 +12458,6 @@ func (c *EC2) DeleteKeyPairRequest(input *DeleteKeyPairInput) (req *request.Requ output = &DeleteKeyPairOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(ec2query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } @@ -82054,6 +82053,12 @@ func (s *DeleteKeyPairInput) SetKeyPairId(v string) *DeleteKeyPairInput { type DeleteKeyPairOutput struct { _ struct{} `type:"structure"` + + // The ID of the key pair. + KeyPairId *string `locationName:"keyPairId" type:"string"` + + // Is true if the request succeeds, and an error otherwise. + Return *bool `locationName:"return" type:"boolean"` } // String returns the string representation. @@ -82074,6 +82079,18 @@ func (s DeleteKeyPairOutput) GoString() string { return s.String() } +// SetKeyPairId sets the KeyPairId field's value. +func (s *DeleteKeyPairOutput) SetKeyPairId(v string) *DeleteKeyPairOutput { + s.KeyPairId = &v + return s +} + +// SetReturn sets the Return field's value. +func (s *DeleteKeyPairOutput) SetReturn(v bool) *DeleteKeyPairOutput { + s.Return = &v + return s +} + type DeleteLaunchTemplateInput struct { _ struct{} `type:"structure"` diff --git a/service/finspace/api.go b/service/finspace/api.go index 43e5c8fc0fc..5acd0a0153f 100644 --- a/service/finspace/api.go +++ b/service/finspace/api.go @@ -3027,6 +3027,9 @@ func (c *Finspace) UpdateKxClusterDatabasesRequest(input *UpdateKxClusterDatabas // - ValidationException // The input fails to satisfy the constraints specified by an AWS service. // +// - ConflictException +// There was a conflict with this action, and it could not be completed. +// // - ResourceNotFoundException // One or more resources can't be found. // @@ -3614,8 +3617,7 @@ func (s *AutoScalingConfiguration) SetScaleOutCooldownSeconds(v float64) *AutoSc } // A structure for the metadata of a cluster. It includes information like the -// CPUs needed, memory of instances, number of instances, and the port used -// while establishing a connection. +// CPUs needed, memory of instances, and number of instances. type CapacityConfiguration struct { _ struct{} `type:"structure"` @@ -4367,9 +4369,8 @@ type CreateKxClusterInput struct { // This cache will be stored as an FSx Lustre that reads from the S3 store. CacheStorageConfigurations []*KxCacheStorageConfiguration `locationName:"cacheStorageConfigurations" type:"list"` - // A structure for the metadata of a cluster. It includes information about - // like the CPUs needed, memory of instances, number of instances, and the port - // used while establishing a connection. + // A structure for the metadata of a cluster. It includes information like the + // CPUs needed, memory of instances, and number of instances. // // CapacityConfiguration is a required field CapacityConfiguration *CapacityConfiguration `locationName:"capacityConfiguration" type:"structure" required:"true"` @@ -4715,8 +4716,7 @@ type CreateKxClusterOutput struct { CacheStorageConfigurations []*KxCacheStorageConfiguration `locationName:"cacheStorageConfigurations" type:"list"` // A structure for the metadata of a cluster. It includes information like the - // CPUs needed, memory of instances, number of instances, and the port used - // while establishing a connection. + // CPUs needed, memory of instances, and number of instances. CapacityConfiguration *CapacityConfiguration `locationName:"capacityConfiguration" type:"structure"` // A description of the cluster. @@ -5448,7 +5448,7 @@ type CreateKxUserOutput struct { IamRole *string `locationName:"iamRole" min:"20" type:"string"` // The Amazon Resource Name (ARN) that identifies the user. For more information - // about ARNs and how to use ARNs in policies, see IAM Identifiers (IAM/latest/UserGuide/reference_identifiers.html) + // about ARNs and how to use ARNs in policies, see IAM Identifiers (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in the IAM User Guide. UserArn *string `locationName:"userArn" min:"20" type:"string"` @@ -6645,8 +6645,7 @@ type GetKxClusterOutput struct { CacheStorageConfigurations []*KxCacheStorageConfiguration `locationName:"cacheStorageConfigurations" type:"list"` // A structure for the metadata of a cluster. It includes information like the - // CPUs needed, memory of instances, number of instances, and the port used - // while establishing a connection. + // CPUs needed, memory of instances, and number of instances. CapacityConfiguration *CapacityConfiguration `locationName:"capacityConfiguration" type:"structure"` // A description of the cluster. @@ -6894,7 +6893,7 @@ type GetKxConnectionStringInput struct { EnvironmentId *string `location:"uri" locationName:"environmentId" min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) that identifies the user. For more information - // about ARNs and how to use ARNs in policies, see IAM Identifiers (IAM/latest/UserGuide/reference_identifiers.html) + // about ARNs and how to use ARNs in policies, see IAM Identifiers (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in the IAM User Guide. // // UserArn is a required field @@ -7485,7 +7484,7 @@ type GetKxUserOutput struct { IamRole *string `locationName:"iamRole" min:"20" type:"string"` // The Amazon Resource Name (ARN) that identifies the user. For more information - // about ARNs and how to use ARNs in policies, see IAM Identifiers (IAM/latest/UserGuide/reference_identifiers.html) + // about ARNs and how to use ARNs in policies, see IAM Identifiers (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in the IAM User Guide. UserArn *string `locationName:"userArn" min:"20" type:"string"` @@ -7535,6 +7534,67 @@ func (s *GetKxUserOutput) SetUserName(v string) *GetKxUserOutput { return s } +// Defines the ICMP protocol that consists of the ICMP type and code. +type IcmpTypeCode struct { + _ struct{} `type:"structure"` + + // The ICMP code. A value of -1 means all codes for the specified ICMP type. + // + // Code is a required field + Code *int64 `locationName:"code" type:"integer" required:"true"` + + // The ICMP type. A value of -1 means all types. + // + // Type is a required field + Type *int64 `locationName:"type" type:"integer" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IcmpTypeCode) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IcmpTypeCode) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IcmpTypeCode) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IcmpTypeCode"} + if s.Code == nil { + invalidParams.Add(request.NewErrParamRequired("Code")) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCode sets the Code field's value. +func (s *IcmpTypeCode) SetCode(v int64) *IcmpTypeCode { + s.Code = &v + return s +} + +// SetType sets the Type field's value. +func (s *IcmpTypeCode) SetType(v int64) *IcmpTypeCode { + s.Type = &v + return s +} + // The request processing has failed because of an unknown error, exception // or failure. type InternalServerException struct { @@ -7823,7 +7883,7 @@ type KxCluster struct { AvailabilityZoneId *string `locationName:"availabilityZoneId" type:"string"` // The number of availability zones assigned per cluster. This can be one of - // the following + // the following: // // * SINGLE – Assigns one availability zone per cluster. // @@ -8254,6 +8314,63 @@ func (s *KxDatabaseListEntry) SetLastModifiedTimestamp(v time.Time) *KxDatabaseL return s } +// The configuration that allows you to choose how you want to update the databases +// on a cluster. Depending on the option you choose, you can reduce the time +// it takes to update the database changesets on to a cluster. +type KxDeploymentConfiguration struct { + _ struct{} `type:"structure"` + + // The type of deployment that you want on a cluster. + // + // * ROLLING – This options loads the updated database by stopping the + // exiting q process and starting a new q process with updated configuration. + // + // * NO_RESTART – This option loads the updated database on the running + // q process without stopping it. This option is quicker as it reduces the + // turn around time to update a kdb database changeset configuration on a + // cluster. + // + // DeploymentStrategy is a required field + DeploymentStrategy *string `locationName:"deploymentStrategy" type:"string" required:"true" enum:"KxDeploymentStrategy"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KxDeploymentConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s KxDeploymentConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *KxDeploymentConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KxDeploymentConfiguration"} + if s.DeploymentStrategy == nil { + invalidParams.Add(request.NewErrParamRequired("DeploymentStrategy")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDeploymentStrategy sets the DeploymentStrategy field's value. +func (s *KxDeploymentConfiguration) SetDeploymentStrategy(v string) *KxDeploymentConfiguration { + s.DeploymentStrategy = &v + return s +} + // The details of a kdb environment. type KxEnvironment struct { _ struct{} `type:"structure"` @@ -8515,7 +8632,7 @@ func (s *KxNode) SetNodeId(v string) *KxNode { type KxSavedownStorageConfiguration struct { _ struct{} `type:"structure"` - // The size of temporary storage in bytes. + // The size of temporary storage in gibibytes. // // Size is a required field Size *int64 `locationName:"size" min:"4" type:"integer" required:"true"` @@ -8592,7 +8709,7 @@ type KxUser struct { UpdateTimestamp *time.Time `locationName:"updateTimestamp" type:"timestamp"` // The Amazon Resource Name (ARN) that identifies the user. For more information - // about ARNs and how to use ARNs in policies, see IAM Identifiers (IAM/latest/UserGuide/reference_identifiers.html) + // about ARNs and how to use ARNs in policies, see IAM Identifiers (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in the IAM User Guide. UserArn *string `locationName:"userArn" min:"20" type:"string"` @@ -9592,6 +9709,201 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe return s } +// The network access control list (ACL) is an optional layer of security for +// your VPC that acts as a firewall for controlling traffic in and out of one +// or more subnets. The entry is a set of numbered ingress and egress rules +// that determine whether a packet should be allowed in or out of a subnet associated +// with the ACL. We process the entries in the ACL according to the rule numbers, +// in ascending order. +type NetworkACLEntry struct { + _ struct{} `type:"structure"` + + // The IPv4 network range to allow or deny, in CIDR notation. For example, 172.16.0.0/24. + // We modify the specified CIDR block to its canonical form. For example, if + // you specify 100.68.0.18/18, we modify it to 100.68.0.0/18. + // + // CidrBlock is a required field + CidrBlock *string `locationName:"cidrBlock" min:"1" type:"string" required:"true"` + + // Defines the ICMP protocol that consists of the ICMP type and code. + IcmpTypeCode *IcmpTypeCode `locationName:"icmpTypeCode" type:"structure"` + + // The range of ports the rule applies to. + PortRange *PortRange `locationName:"portRange" type:"structure"` + + // The protocol number. A value of -1 means all the protocols. + // + // Protocol is a required field + Protocol *string `locationName:"protocol" min:"1" type:"string" required:"true"` + + // Indicates whether to allow or deny the traffic that matches the rule. + // + // RuleAction is a required field + RuleAction *string `locationName:"ruleAction" type:"string" required:"true" enum:"RuleAction"` + + // The rule number for the entry. For example 100. All the network ACL entries + // are processed in ascending order by rule number. + // + // RuleNumber is a required field + RuleNumber *int64 `locationName:"ruleNumber" min:"1" type:"integer" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NetworkACLEntry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NetworkACLEntry) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *NetworkACLEntry) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "NetworkACLEntry"} + if s.CidrBlock == nil { + invalidParams.Add(request.NewErrParamRequired("CidrBlock")) + } + if s.CidrBlock != nil && len(*s.CidrBlock) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CidrBlock", 1)) + } + if s.Protocol == nil { + invalidParams.Add(request.NewErrParamRequired("Protocol")) + } + if s.Protocol != nil && len(*s.Protocol) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Protocol", 1)) + } + if s.RuleAction == nil { + invalidParams.Add(request.NewErrParamRequired("RuleAction")) + } + if s.RuleNumber == nil { + invalidParams.Add(request.NewErrParamRequired("RuleNumber")) + } + if s.RuleNumber != nil && *s.RuleNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("RuleNumber", 1)) + } + if s.IcmpTypeCode != nil { + if err := s.IcmpTypeCode.Validate(); err != nil { + invalidParams.AddNested("IcmpTypeCode", err.(request.ErrInvalidParams)) + } + } + if s.PortRange != nil { + if err := s.PortRange.Validate(); err != nil { + invalidParams.AddNested("PortRange", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCidrBlock sets the CidrBlock field's value. +func (s *NetworkACLEntry) SetCidrBlock(v string) *NetworkACLEntry { + s.CidrBlock = &v + return s +} + +// SetIcmpTypeCode sets the IcmpTypeCode field's value. +func (s *NetworkACLEntry) SetIcmpTypeCode(v *IcmpTypeCode) *NetworkACLEntry { + s.IcmpTypeCode = v + return s +} + +// SetPortRange sets the PortRange field's value. +func (s *NetworkACLEntry) SetPortRange(v *PortRange) *NetworkACLEntry { + s.PortRange = v + return s +} + +// SetProtocol sets the Protocol field's value. +func (s *NetworkACLEntry) SetProtocol(v string) *NetworkACLEntry { + s.Protocol = &v + return s +} + +// SetRuleAction sets the RuleAction field's value. +func (s *NetworkACLEntry) SetRuleAction(v string) *NetworkACLEntry { + s.RuleAction = &v + return s +} + +// SetRuleNumber sets the RuleNumber field's value. +func (s *NetworkACLEntry) SetRuleNumber(v int64) *NetworkACLEntry { + s.RuleNumber = &v + return s +} + +// The range of ports the rule applies to. +type PortRange struct { + _ struct{} `type:"structure"` + + // The first port in the range. + // + // From is a required field + From *int64 `locationName:"from" type:"integer" required:"true"` + + // The last port in the range. + // + // To is a required field + To *int64 `locationName:"to" type:"integer" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PortRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PortRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PortRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PortRange"} + if s.From == nil { + invalidParams.Add(request.NewErrParamRequired("From")) + } + if s.To == nil { + invalidParams.Add(request.NewErrParamRequired("To")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFrom sets the From field's value. +func (s *PortRange) SetFrom(v int64) *PortRange { + s.From = &v + return s +} + +// SetTo sets the To field's value. +func (s *PortRange) SetTo(v int64) *PortRange { + s.To = &v + return s +} + // The specified resource group already exists. type ResourceAlreadyExistsException struct { _ struct{} `type:"structure"` @@ -10031,6 +10343,10 @@ func (s *ThrottlingException) RequestID() string { type TransitGatewayConfiguration struct { _ struct{} `type:"structure"` + // The rules that define how you manage the outbound traffic from kdb network + // to your internal network. + AttachmentNetworkAclConfiguration []*NetworkACLEntry `locationName:"attachmentNetworkAclConfiguration" min:"1" type:"list"` + // The routing CIDR on behalf of kdb environment. It could be any "/26 range // in the 100.64.0.0 CIDR space. After providing, it will be added to the customer's // transit gateway routing table so that the traffics could be routed to kdb @@ -10067,6 +10383,9 @@ func (s TransitGatewayConfiguration) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *TransitGatewayConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TransitGatewayConfiguration"} + if s.AttachmentNetworkAclConfiguration != nil && len(s.AttachmentNetworkAclConfiguration) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AttachmentNetworkAclConfiguration", 1)) + } if s.RoutableCIDRSpace == nil { invalidParams.Add(request.NewErrParamRequired("RoutableCIDRSpace")) } @@ -10076,6 +10395,16 @@ func (s *TransitGatewayConfiguration) Validate() error { if s.TransitGatewayID != nil && len(*s.TransitGatewayID) < 1 { invalidParams.Add(request.NewErrParamMinLen("TransitGatewayID", 1)) } + if s.AttachmentNetworkAclConfiguration != nil { + for i, v := range s.AttachmentNetworkAclConfiguration { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AttachmentNetworkAclConfiguration", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -10083,6 +10412,12 @@ func (s *TransitGatewayConfiguration) Validate() error { return nil } +// SetAttachmentNetworkAclConfiguration sets the AttachmentNetworkAclConfiguration field's value. +func (s *TransitGatewayConfiguration) SetAttachmentNetworkAclConfiguration(v []*NetworkACLEntry) *TransitGatewayConfiguration { + s.AttachmentNetworkAclConfiguration = v + return s +} + // SetRoutableCIDRSpace sets the RoutableCIDRSpace field's value. func (s *TransitGatewayConfiguration) SetRoutableCIDRSpace(v string) *TransitGatewayConfiguration { s.RoutableCIDRSpace = &v @@ -10321,7 +10656,7 @@ type UpdateKxClusterDatabasesInput struct { _ struct{} `type:"structure"` // A token that ensures idempotency. This token expires in 10 minutes. - ClientToken *string `locationName:"clientToken" min:"1" type:"string"` + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` // A unique name for the cluster that you want to modify. // @@ -10333,6 +10668,10 @@ type UpdateKxClusterDatabasesInput struct { // Databases is a required field Databases []*KxDatabaseConfiguration `locationName:"databases" type:"list" required:"true"` + // The configuration that allows you to choose how you want to update the databases + // on a cluster. + DeploymentConfiguration *KxDeploymentConfiguration `locationName:"deploymentConfiguration" type:"structure"` + // The unique identifier of a kdb environment. // // EnvironmentId is a required field @@ -10388,6 +10727,11 @@ func (s *UpdateKxClusterDatabasesInput) Validate() error { } } } + if s.DeploymentConfiguration != nil { + if err := s.DeploymentConfiguration.Validate(); err != nil { + invalidParams.AddNested("DeploymentConfiguration", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -10413,6 +10757,12 @@ func (s *UpdateKxClusterDatabasesInput) SetDatabases(v []*KxDatabaseConfiguratio return s } +// SetDeploymentConfiguration sets the DeploymentConfiguration field's value. +func (s *UpdateKxClusterDatabasesInput) SetDeploymentConfiguration(v *KxDeploymentConfiguration) *UpdateKxClusterDatabasesInput { + s.DeploymentConfiguration = v + return s +} + // SetEnvironmentId sets the EnvironmentId field's value. func (s *UpdateKxClusterDatabasesInput) SetEnvironmentId(v string) *UpdateKxClusterDatabasesInput { s.EnvironmentId = &v @@ -11215,7 +11565,7 @@ type UpdateKxUserOutput struct { IamRole *string `locationName:"iamRole" min:"20" type:"string"` // The Amazon Resource Name (ARN) that identifies the user. For more information - // about ARNs and how to use ARNs in policies, see IAM Identifiers (IAM/latest/UserGuide/reference_identifiers.html) + // about ARNs and how to use ARNs in policies, see IAM Identifiers (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in the IAM User Guide. UserArn *string `locationName:"userArn" min:"20" type:"string"` @@ -11691,6 +12041,22 @@ func KxClusterType_Values() []string { } } +const ( + // KxDeploymentStrategyNoRestart is a KxDeploymentStrategy enum value + KxDeploymentStrategyNoRestart = "NO_RESTART" + + // KxDeploymentStrategyRolling is a KxDeploymentStrategy enum value + KxDeploymentStrategyRolling = "ROLLING" +) + +// KxDeploymentStrategy_Values returns all elements of the KxDeploymentStrategy enum +func KxDeploymentStrategy_Values() []string { + return []string{ + KxDeploymentStrategyNoRestart, + KxDeploymentStrategyRolling, + } +} + const ( // KxSavedownStorageTypeSds01 is a KxSavedownStorageType enum value KxSavedownStorageTypeSds01 = "SDS01" @@ -11703,6 +12069,22 @@ func KxSavedownStorageType_Values() []string { } } +const ( + // RuleActionAllow is a RuleAction enum value + RuleActionAllow = "allow" + + // RuleActionDeny is a RuleAction enum value + RuleActionDeny = "deny" +) + +// RuleAction_Values returns all elements of the RuleAction enum +func RuleAction_Values() []string { + return []string{ + RuleActionAllow, + RuleActionDeny, + } +} + const ( // TgwStatusNone is a TgwStatus enum value TgwStatusNone = "NONE" diff --git a/service/rds/api.go b/service/rds/api.go index 9efbe0557f7..2e35735ca3e 100644 --- a/service/rds/api.go +++ b/service/rds/api.go @@ -10335,23 +10335,47 @@ func (c *RDS) FailoverGlobalClusterRequest(input *FailoverGlobalClusterInput) (r // FailoverGlobalCluster API operation for Amazon Relational Database Service. // -// Initiates the failover process for an Aurora global database (GlobalCluster). -// -// A failover for an Aurora global database promotes one of secondary read-only -// DB clusters to be the primary DB cluster and demotes the primary DB cluster -// to being a secondary (read-only) DB cluster. In other words, the role of -// the current primary DB cluster and the selected (target) DB cluster are switched. -// The selected secondary DB cluster assumes full read/write capabilities for -// the Aurora global database. -// -// For more information about failing over an Amazon Aurora global database, -// see Managed planned failover for Amazon Aurora global databases (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-disaster-recovery.html#aurora-global-database-disaster-recovery.managed-failover) -// in the Amazon Aurora User Guide. -// -// This action applies to GlobalCluster (Aurora global databases) only. Use -// this action only on healthy Aurora global databases with running Aurora DB -// clusters and no Region-wide outages, to test disaster recovery scenarios -// or to reconfigure your Aurora global database topology. +// Promotes the specified secondary DB cluster to be the primary DB cluster +// in the global database cluster to fail over or switch over a global database. +// Switchover operations were previously called "managed planned failovers." +// +// Although this operation can be used either to fail over or to switch over +// a global database cluster, its intended use is for global database failover. +// To switch over a global database cluster, we recommend that you use the SwitchoverGlobalCluster +// operation instead. +// +// How you use this operation depends on whether you are failing over or switching +// over your global database cluster: +// +// - Failing over - Specify the AllowDataLoss parameter and don't specify +// the Switchover parameter. +// +// - Switching over - Specify the Switchover parameter or omit it, but don't +// specify the AllowDataLoss parameter. +// +// # About failing over and switching over +// +// While failing over and switching over a global database cluster both change +// the primary DB cluster, you use these operations for different reasons: +// +// - Failing over - Use this operation to respond to an unplanned event, +// such as a Regional disaster in the primary Region. Failing over can result +// in a loss of write transaction data that wasn't replicated to the chosen +// secondary before the failover event occurred. However, the recovery process +// that promotes a DB instance on the chosen seconday DB cluster to be the +// primary writer DB instance guarantees that the data is in a transactionally +// consistent state. For more information about failing over an Amazon Aurora +// global database, see Performing managed failovers for Aurora global databases +// (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-disaster-recovery.html#aurora-global-database-failover.managed-unplanned) +// in the Amazon Aurora User Guide. +// +// - Switching over - Use this operation on a healthy global database cluster +// for planned events, such as Regional rotation or to fail back to the original +// primary DB cluster after a failover operation. With this operation, there +// is no data loss. For more information about switching over an Amazon Aurora +// global database, see Performing switchovers for Aurora global databases +// (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-disaster-recovery.html#aurora-global-database-disaster-recovery.managed-failover) +// in the Amazon Aurora User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -12276,10 +12300,10 @@ func (c *RDS) ModifyGlobalClusterRequest(input *ModifyGlobalClusterInput) (req * // ModifyGlobalCluster API operation for Amazon Relational Database Service. // -// Modifies a setting for an Amazon Aurora global cluster. You can change one -// or more database configuration parameters by specifying these parameters -// and the new values in the request. For more information on Amazon Aurora, -// see What is Amazon Aurora? (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) +// Modifies a setting for an Amazon Aurora global database cluster. You can +// change one or more database configuration parameters by specifying these +// parameters and the new values in the request. For more information on Amazon +// Aurora, see What is Amazon Aurora? (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) // in the Amazon Aurora User Guide. // // This operation only applies to Aurora global database clusters. @@ -15695,6 +15719,113 @@ func (c *RDS) SwitchoverBlueGreenDeploymentWithContext(ctx aws.Context, input *S return out, req.Send() } +const opSwitchoverGlobalCluster = "SwitchoverGlobalCluster" + +// SwitchoverGlobalClusterRequest generates a "aws/request.Request" representing the +// client's request for the SwitchoverGlobalCluster operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See SwitchoverGlobalCluster for more information on using the SwitchoverGlobalCluster +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the SwitchoverGlobalClusterRequest method. +// req, resp := client.SwitchoverGlobalClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/SwitchoverGlobalCluster +func (c *RDS) SwitchoverGlobalClusterRequest(input *SwitchoverGlobalClusterInput) (req *request.Request, output *SwitchoverGlobalClusterOutput) { + op := &request.Operation{ + Name: opSwitchoverGlobalCluster, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &SwitchoverGlobalClusterInput{} + } + + output = &SwitchoverGlobalClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// SwitchoverGlobalCluster API operation for Amazon Relational Database Service. +// +// Switches over the specified secondary DB cluster to be the new primary DB +// cluster in the global database cluster. Switchover operations were previously +// called "managed planned failovers." +// +// Aurora promotes the specified secondary cluster to assume full read/write +// capabilities and demotes the current primary cluster to a secondary (read-only) +// cluster, maintaining the orginal replication topology. All secondary clusters +// are synchronized with the primary at the beginning of the process so the +// new primary continues operations for the Aurora global database without losing +// any data. Your database is unavailable for a short time while the primary +// and selected secondary clusters are assuming their new roles. For more information +// about switching over an Aurora global database, see Performing switchovers +// for Amazon Aurora global databases (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-disaster-recovery.html#aurora-global-database-disaster-recovery.managed-failover) +// in the Amazon Aurora User Guide. +// +// This operation is intended for controlled environments, for operations such +// as "regional rotation" or to fall back to the original primary after a global +// database failover. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation SwitchoverGlobalCluster for usage and error information. +// +// Returned Error Codes: +// +// - ErrCodeGlobalClusterNotFoundFault "GlobalClusterNotFoundFault" +// The GlobalClusterIdentifier doesn't refer to an existing global database +// cluster. +// +// - ErrCodeInvalidGlobalClusterStateFault "InvalidGlobalClusterStateFault" +// The global cluster is in an invalid state and can't perform the requested +// operation. +// +// - ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" +// The requested operation can't be performed while the cluster is in this state. +// +// - ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" +// DBClusterIdentifier doesn't refer to an existing DB cluster. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/SwitchoverGlobalCluster +func (c *RDS) SwitchoverGlobalCluster(input *SwitchoverGlobalClusterInput) (*SwitchoverGlobalClusterOutput, error) { + req, out := c.SwitchoverGlobalClusterRequest(input) + return out, req.Send() +} + +// SwitchoverGlobalClusterWithContext is the same as SwitchoverGlobalCluster with the addition of +// the ability to pass a context and additional request options. +// +// See SwitchoverGlobalCluster for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *RDS) SwitchoverGlobalClusterWithContext(ctx aws.Context, input *SwitchoverGlobalClusterInput, opts ...request.Option) (*SwitchoverGlobalClusterOutput, error) { + req, out := c.SwitchoverGlobalClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opSwitchoverReadReplica = "SwitchoverReadReplica" // SwitchoverReadReplicaRequest generates a "aws/request.Request" representing the @@ -20430,6 +20561,10 @@ type CreateDBClusterInput struct { // * Aurora DB clusters - aurora // // * Multi-AZ DB clusters - io1 + // + // When you create an Aurora DB cluster with the storage type set to aurora-iopt1, + // the storage type is returned in the response. The storage type isn't returned + // when you set it to aurora. StorageType *string `type:"string"` // Tags to assign to the DB cluster. @@ -39271,23 +39406,40 @@ func (s *FailoverDBClusterOutput) SetDBCluster(v *DBCluster) *FailoverDBClusterO type FailoverGlobalClusterInput struct { _ struct{} `type:"structure"` - // Identifier of the Aurora global database (GlobalCluster) that should be failed - // over. The identifier is the unique key assigned by the user when the Aurora - // global database was created. In other words, it's the name of the Aurora - // global database that you want to fail over. + // Specifies whether to allow data loss for this global database cluster operation. + // Allowing data loss triggers a global failover operation. + // + // If you don't specify AllowDataLoss, the global database cluster operation + // defaults to a switchover. // // Constraints: // - // * Must match the identifier of an existing GlobalCluster (Aurora global - // database). + // * Can't be specified together with the Switchover parameter. + AllowDataLoss *bool `type:"boolean"` + + // The identifier of the global database cluster (Aurora global database) this + // operation should apply to. The identifier is the unique key assigned by the + // user when the Aurora global database is created. In other words, it's the + // name of the Aurora global database. + // + // Constraints: + // + // * Must match the identifier of an existing global database cluster. // // GlobalClusterIdentifier is a required field GlobalClusterIdentifier *string `min:"1" type:"string" required:"true"` - // Identifier of the secondary Aurora DB cluster that you want to promote to - // primary for the Aurora global database (GlobalCluster.) Use the Amazon Resource - // Name (ARN) for the identifier so that Aurora can locate the cluster in its - // Amazon Web Services Region. + // Specifies whether to switch over this global database cluster. + // + // Constraints: + // + // * Can't be specified together with the AllowDataLoss parameter. + Switchover *bool `type:"boolean"` + + // The identifier of the secondary Aurora DB cluster that you want to promote + // to the primary for the global database cluster. Use the Amazon Resource Name + // (ARN) for the identifier so that Aurora can locate the cluster in its Amazon + // Web Services Region. // // TargetDbClusterIdentifier is a required field TargetDbClusterIdentifier *string `min:"1" type:"string" required:"true"` @@ -39333,12 +39485,24 @@ func (s *FailoverGlobalClusterInput) Validate() error { return nil } +// SetAllowDataLoss sets the AllowDataLoss field's value. +func (s *FailoverGlobalClusterInput) SetAllowDataLoss(v bool) *FailoverGlobalClusterInput { + s.AllowDataLoss = &v + return s +} + // SetGlobalClusterIdentifier sets the GlobalClusterIdentifier field's value. func (s *FailoverGlobalClusterInput) SetGlobalClusterIdentifier(v string) *FailoverGlobalClusterInput { s.GlobalClusterIdentifier = &v return s } +// SetSwitchover sets the Switchover field's value. +func (s *FailoverGlobalClusterInput) SetSwitchover(v bool) *FailoverGlobalClusterInput { + s.Switchover = &v + return s +} + // SetTargetDbClusterIdentifier sets the TargetDbClusterIdentifier field's value. func (s *FailoverGlobalClusterInput) SetTargetDbClusterIdentifier(v string) *FailoverGlobalClusterInput { s.TargetDbClusterIdentifier = &v @@ -39376,9 +39540,9 @@ func (s *FailoverGlobalClusterOutput) SetGlobalCluster(v *GlobalCluster) *Failov return s } -// Contains the state of scheduled or in-process failover operations on an Aurora -// global database (GlobalCluster). This Data type is empty unless a failover -// operation is scheduled or is currently underway on the Aurora global database. +// Contains the state of scheduled or in-process operations on a global cluster +// (Aurora global database). This data type is empty unless a switchover or +// failover operation is scheduled or is in progress on the Aurora global database. type FailoverState struct { _ struct{} `type:"structure"` @@ -39386,20 +39550,23 @@ type FailoverState struct { // being demoted, and which is associated with this state. FromDbClusterArn *string `type:"string"` - // The current status of the Aurora global database (GlobalCluster). Possible - // values are as follows: + // Indicates whether the operation is a global switchover or a global failover. + // If data loss is allowed, then the operation is a global failover. Otherwise, + // it's a switchover. + IsDataLossAllowed *bool `type:"boolean"` + + // The current status of the global cluster. Possible values are as follows: // - // * pending – A request to fail over the Aurora global database (GlobalCluster) - // has been received by the service. The GlobalCluster's primary DB cluster - // and the specified secondary DB cluster are being verified before the failover - // process can start. + // * pending – The service received a request to switch over or fail over + // the global cluster. The global cluster's primary DB cluster and the specified + // secondary DB cluster are being verified before the operation starts. // // * failing-over – This status covers the range of Aurora internal operations - // that take place during the failover process, such as demoting the primary - // Aurora DB cluster, promoting the secondary Aurora DB, and synchronizing - // replicas. + // that take place during the switchover or failover process, such as demoting + // the primary Aurora DB cluster, promoting the secondary Aurora DB cluster, + // and synchronizing replicas. // - // * cancelling – The request to fail over the Aurora global database (GlobalCluster) + // * cancelling – The request to switch over or fail over the global cluster // was cancelled and the primary Aurora DB cluster and the selected secondary // Aurora DB cluster are returning to their previous states. Status *string `type:"string" enum:"FailoverStatus"` @@ -39433,6 +39600,12 @@ func (s *FailoverState) SetFromDbClusterArn(v string) *FailoverState { return s } +// SetIsDataLossAllowed sets the IsDataLossAllowed field's value. +func (s *FailoverState) SetIsDataLossAllowed(v bool) *FailoverState { + s.IsDataLossAllowed = &v + return s +} + // SetStatus sets the Status field's value. func (s *FailoverState) SetStatus(v string) *FailoverState { s.Status = &v @@ -39540,9 +39713,9 @@ type GlobalCluster struct { EngineVersion *string `type:"string"` // A data object containing all properties for the current state of an in-process - // or pending failover process for this Aurora global database. This object - // is empty unless the FailoverGlobalCluster API operation has been called on - // this Aurora global database (GlobalCluster). + // or pending switchover or failover process for this global cluster (Aurora + // global database). This object is empty unless the SwitchoverGlobalCluster + // or FailoverGlobalCluster operation was called on this global cluster. FailoverState *FailoverState `type:"structure"` // The Amazon Resource Name (ARN) for the global database cluster. @@ -39653,24 +39826,27 @@ func (s *GlobalCluster) SetStorageEncrypted(v bool) *GlobalCluster { } // A data structure with information about any primary and secondary clusters -// associated with an Aurora global database. +// associated with a global cluster (Aurora global database). type GlobalClusterMember struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) for each Aurora cluster. + // The Amazon Resource Name (ARN) for each Aurora DB cluster in the global cluster. DBClusterArn *string `type:"string"` - // Specifies whether a secondary cluster in an Aurora global database has write - // forwarding enabled, not enabled, or is in the process of enabling it. + // Specifies whether a secondary cluster in the global cluster has write forwarding + // enabled, not enabled, or is in the process of enabling it. GlobalWriteForwardingStatus *string `type:"string" enum:"WriteForwardingStatus"` - // Specifies whether the Aurora cluster is the primary cluster (that is, has - // read-write capability) for the Aurora global database with which it is associated. + // Specifies whether the Aurora DB cluster is the primary cluster (that is, + // has read-write capability) for the global cluster with which it is associated. IsWriter *bool `type:"boolean"` // The Amazon Resource Name (ARN) for each read-only secondary cluster associated - // with the Aurora global database. + // with the global cluster. Readers []*string `type:"list"` + + // The status of synchronization of each Aurora DB cluster in the global cluster. + SynchronizationStatus *string `type:"string" enum:"GlobalClusterMemberSynchronizationStatus"` } // String returns the string representation. @@ -39715,6 +39891,12 @@ func (s *GlobalClusterMember) SetReaders(v []*string) *GlobalClusterMember { return s } +// SetSynchronizationStatus sets the SynchronizationStatus field's value. +func (s *GlobalClusterMember) SetSynchronizationStatus(v string) *GlobalClusterMember { + s.SynchronizationStatus = &v + return s +} + // This data type is used as a response element in the DescribeDBSecurityGroups // action. type IPRange struct { @@ -54226,6 +54408,112 @@ func (s *SwitchoverDetail) SetTargetMember(v string) *SwitchoverDetail { return s } +type SwitchoverGlobalClusterInput struct { + _ struct{} `type:"structure"` + + // The identifier of the global database cluster to switch over. This parameter + // isn't case-sensitive. + // + // Constraints: + // + // * Must match the identifier of an existing global database cluster (Aurora + // global database). + // + // GlobalClusterIdentifier is a required field + GlobalClusterIdentifier *string `min:"1" type:"string" required:"true"` + + // The identifier of the secondary Aurora DB cluster to promote to the new primary + // for the global database cluster. Use the Amazon Resource Name (ARN) for the + // identifier so that Aurora can locate the cluster in its Amazon Web Services + // Region. + // + // TargetDbClusterIdentifier is a required field + TargetDbClusterIdentifier *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SwitchoverGlobalClusterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SwitchoverGlobalClusterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SwitchoverGlobalClusterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SwitchoverGlobalClusterInput"} + if s.GlobalClusterIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("GlobalClusterIdentifier")) + } + if s.GlobalClusterIdentifier != nil && len(*s.GlobalClusterIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GlobalClusterIdentifier", 1)) + } + if s.TargetDbClusterIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("TargetDbClusterIdentifier")) + } + if s.TargetDbClusterIdentifier != nil && len(*s.TargetDbClusterIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TargetDbClusterIdentifier", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGlobalClusterIdentifier sets the GlobalClusterIdentifier field's value. +func (s *SwitchoverGlobalClusterInput) SetGlobalClusterIdentifier(v string) *SwitchoverGlobalClusterInput { + s.GlobalClusterIdentifier = &v + return s +} + +// SetTargetDbClusterIdentifier sets the TargetDbClusterIdentifier field's value. +func (s *SwitchoverGlobalClusterInput) SetTargetDbClusterIdentifier(v string) *SwitchoverGlobalClusterInput { + s.TargetDbClusterIdentifier = &v + return s +} + +type SwitchoverGlobalClusterOutput struct { + _ struct{} `type:"structure"` + + // A data type representing an Aurora global database. + GlobalCluster *GlobalCluster `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SwitchoverGlobalClusterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SwitchoverGlobalClusterOutput) GoString() string { + return s.String() +} + +// SetGlobalCluster sets the GlobalCluster field's value. +func (s *SwitchoverGlobalClusterOutput) SetGlobalCluster(v *GlobalCluster) *SwitchoverGlobalClusterOutput { + s.GlobalCluster = v + return s +} + type SwitchoverReadReplicaInput struct { _ struct{} `type:"structure"` @@ -55238,6 +55526,22 @@ func FailoverStatus_Values() []string { } } +const ( + // GlobalClusterMemberSynchronizationStatusConnected is a GlobalClusterMemberSynchronizationStatus enum value + GlobalClusterMemberSynchronizationStatusConnected = "connected" + + // GlobalClusterMemberSynchronizationStatusPendingResync is a GlobalClusterMemberSynchronizationStatus enum value + GlobalClusterMemberSynchronizationStatusPendingResync = "pending-resync" +) + +// GlobalClusterMemberSynchronizationStatus_Values returns all elements of the GlobalClusterMemberSynchronizationStatus enum +func GlobalClusterMemberSynchronizationStatus_Values() []string { + return []string{ + GlobalClusterMemberSynchronizationStatusConnected, + GlobalClusterMemberSynchronizationStatusPendingResync, + } +} + const ( // IAMAuthModeDisabled is a IAMAuthMode enum value IAMAuthModeDisabled = "DISABLED" diff --git a/service/rds/rdsiface/interface.go b/service/rds/rdsiface/interface.go index f071c18a666..cb229a4670a 100644 --- a/service/rds/rdsiface/interface.go +++ b/service/rds/rdsiface/interface.go @@ -730,6 +730,10 @@ type RDSAPI interface { SwitchoverBlueGreenDeploymentWithContext(aws.Context, *rds.SwitchoverBlueGreenDeploymentInput, ...request.Option) (*rds.SwitchoverBlueGreenDeploymentOutput, error) SwitchoverBlueGreenDeploymentRequest(*rds.SwitchoverBlueGreenDeploymentInput) (*request.Request, *rds.SwitchoverBlueGreenDeploymentOutput) + SwitchoverGlobalCluster(*rds.SwitchoverGlobalClusterInput) (*rds.SwitchoverGlobalClusterOutput, error) + SwitchoverGlobalClusterWithContext(aws.Context, *rds.SwitchoverGlobalClusterInput, ...request.Option) (*rds.SwitchoverGlobalClusterOutput, error) + SwitchoverGlobalClusterRequest(*rds.SwitchoverGlobalClusterInput) (*request.Request, *rds.SwitchoverGlobalClusterOutput) + SwitchoverReadReplica(*rds.SwitchoverReadReplicaInput) (*rds.SwitchoverReadReplicaOutput, error) SwitchoverReadReplicaWithContext(aws.Context, *rds.SwitchoverReadReplicaInput, ...request.Option) (*rds.SwitchoverReadReplicaOutput, error) SwitchoverReadReplicaRequest(*rds.SwitchoverReadReplicaInput) (*request.Request, *rds.SwitchoverReadReplicaOutput) diff --git a/service/route53domains/api.go b/service/route53domains/api.go index d9a6af573d2..04ae86e9d83 100644 --- a/service/route53domains/api.go +++ b/service/route53domains/api.go @@ -5411,7 +5411,7 @@ type DomainTransferability struct { // // DOMAIN_IN_ANOTHER_ACCOUNT // - // The domain exists in another Amazon Web Services account. + // the domain exists in another Amazon Web Services account. // // PREMIUM_DOMAIN // @@ -6866,7 +6866,7 @@ type ListOperationsInput struct { // The sort type for returned values. SortBy *string `type:"string" enum:"ListOperationsSortAttributeName"` - // The sort order ofr returned values, either ascending or descending. + // The sort order for returned values, either ascending or descending. SortOrder *string `type:"string" enum:"SortOrder"` // The status of the operations. @@ -10996,7 +10996,7 @@ func StatusFlag_Values() []string { // // DOMAIN_IN_ANOTHER_ACCOUNT // -// The domain exists in another Amazon Web Services account. +// the domain exists in another Amazon Web Services account. // // PREMIUM_DOMAIN //