diff --git a/.changes/1.35.83.json b/.changes/1.35.83.json new file mode 100644 index 0000000000..45fb0379d4 --- /dev/null +++ b/.changes/1.35.83.json @@ -0,0 +1,52 @@ +[ + { + "category": "``account``", + "description": "Update endpoint configuration.", + "type": "api-change" + }, + { + "category": "``backup``", + "description": "Add Support for Backup Indexing", + "type": "api-change" + }, + { + "category": "``backupsearch``", + "description": "Add support for searching backups", + "type": "api-change" + }, + { + "category": "``batch``", + "description": "This feature allows AWS Batch on Amazon EKS to support configuration of Pod Annotations, overriding Namespace on which the Batch job's Pod runs on, and allows Subpath and Persistent Volume claim to be set for AWS Batch on Amazon EKS jobs.", + "type": "api-change" + }, + { + "category": "``cleanroomsml``", + "description": "Add support for SQL compute configuration for StartAudienceGenerationJob API.", + "type": "api-change" + }, + { + "category": "``cloudfront``", + "description": "Adds support for OriginReadTimeout and OriginKeepaliveTimeout to create CloudFront Distributions with VPC Origins.", + "type": "api-change" + }, + { + "category": "``codepipeline``", + "description": "AWS CodePipeline V2 type pipelines now support Managed Compute Rule.", + "type": "api-change" + }, + { + "category": "``ecs``", + "description": "Added support for enableFaultInjection task definition parameter which can be used to enable Fault Injection feature on ECS tasks.", + "type": "api-change" + }, + { + "category": "``m2``", + "description": "This release adds support for AWS Mainframe Modernization(M2) Service to allow specifying network type(ipv4, dual) for the environment instances. For dual network type, m2 environment applications will serve both IPv4 and IPv6 requests, whereas for ipv4 it will serve only IPv4 requests.", + "type": "api-change" + }, + { + "category": "``synthetics``", + "description": "Add support to toggle outbound IPv6 traffic on canaries connected to dualstack subnets. This behavior can be controlled via the new Ipv6AllowedForDualStack parameter of the VpcConfig input object in CreateCanary and UpdateCanary APIs.", + "type": "api-change" + } +] \ No newline at end of file diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 75e2b51be4..4b9560642f 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,21 @@ CHANGELOG ========= +1.35.83 +======= + +* api-change:``account``: Update endpoint configuration. +* api-change:``backup``: Add Support for Backup Indexing +* api-change:``backupsearch``: Add support for searching backups +* api-change:``batch``: This feature allows AWS Batch on Amazon EKS to support configuration of Pod Annotations, overriding Namespace on which the Batch job's Pod runs on, and allows Subpath and Persistent Volume claim to be set for AWS Batch on Amazon EKS jobs. +* api-change:``cleanroomsml``: Add support for SQL compute configuration for StartAudienceGenerationJob API. +* api-change:``cloudfront``: Adds support for OriginReadTimeout and OriginKeepaliveTimeout to create CloudFront Distributions with VPC Origins. +* api-change:``codepipeline``: AWS CodePipeline V2 type pipelines now support Managed Compute Rule. +* api-change:``ecs``: Added support for enableFaultInjection task definition parameter which can be used to enable Fault Injection feature on ECS tasks. +* api-change:``m2``: This release adds support for AWS Mainframe Modernization(M2) Service to allow specifying network type(ipv4, dual) for the environment instances. For dual network type, m2 environment applications will serve both IPv4 and IPv6 requests, whereas for ipv4 it will serve only IPv4 requests. +* api-change:``synthetics``: Add support to toggle outbound IPv6 traffic on canaries connected to dualstack subnets. This behavior can be controlled via the new Ipv6AllowedForDualStack parameter of the VpcConfig input object in CreateCanary and UpdateCanary APIs. + + 1.35.82 ======= diff --git a/botocore/__init__.py b/botocore/__init__.py index d9e3e0f63f..acc42c21d3 100644 --- a/botocore/__init__.py +++ b/botocore/__init__.py @@ -16,7 +16,7 @@ import os import re -__version__ = '1.35.82' +__version__ = '1.35.83' class NullHandler(logging.Handler): diff --git a/botocore/data/account/2021-02-01/endpoint-rule-set-1.json b/botocore/data/account/2021-02-01/endpoint-rule-set-1.json index 8f8a08191d..ca2a9ade39 100644 --- a/botocore/data/account/2021-02-01/endpoint-rule-set-1.json +++ b/botocore/data/account/2021-02-01/endpoint-rule-set-1.json @@ -1,12 +1,6 @@ { "version": "1.0", "parameters": { - "Region": { - "builtIn": "AWS::Region", - "required": false, - "documentation": "The AWS region used to dispatch the request.", - "type": "String" - }, "UseDualStack": { "builtIn": "AWS::UseDualStack", "required": true, @@ -26,6 +20,12 @@ "required": false, "documentation": "Override the endpoint used to send this request", "type": "String" + }, + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" } }, "rules": [ @@ -57,263 +57,235 @@ "type": "error" }, { - "conditions": [ + "conditions": [], + "rules": [ { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseDualStack" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, - true - ] + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "type": "tree" } ], "type": "tree" }, { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Region" - } - ] - } - ], + "conditions": [], "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { "ref": "Region" } - ], - "assign": "PartitionResult" + ] } ], "rules": [ { "conditions": [ { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "name" - ] - }, - "aws" - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", + "fn": "aws.partition", "argv": [ { - "ref": "UseDualStack" - }, - false - ] + "ref": "Region" + } + ], + "assign": "PartitionResult" } ], - "endpoint": { - "url": "https://account.us-east-1.amazonaws.com", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "account", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ + "rules": [ { - "fn": "stringEquals", - "argv": [ + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "name" + true ] }, - "aws-cn" - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ { - "ref": "UseDualStack" + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://account-fips.{PartitionResult#implicitGlobalRegion}.{PartitionResult#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" }, - false - ] - } - ], - "endpoint": { - "url": "https://account.cn-northwest-1.amazonaws.com.cn", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "account", - "signingRegion": "cn-northwest-1" + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + ], + "type": "tree" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] }, { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", + "ref": "UseDualStack" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, - "supportsDualStack" + true ] } - ] - } - ], - "rules": [ + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://account-fips.{PartitionResult#implicitGlobalRegion}.{PartitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, { "conditions": [], - "endpoint": { - "url": "https://account-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } ], "type": "tree" }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] }, - true - ] - } - ], - "rules": [ - { - "conditions": [ { "fn": "booleanEquals", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] + "ref": "UseDualStack" }, true ] @@ -321,96 +293,80 @@ ], "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://account-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ + true, { - "ref": "PartitionResult" - }, - "supportsDualStack" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } ] } - ] - } - ], - "rules": [ + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://account.{PartitionResult#implicitGlobalRegion}.{PartitionResult#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, { "conditions": [], - "endpoint": { - "url": "https://account.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ], "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://account.{PartitionResult#implicitGlobalRegion}.{PartitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" } ], "type": "tree" - }, - { - "conditions": [], - "endpoint": { - "url": "https://account.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" } ], "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ], "type": "tree" - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] } \ No newline at end of file diff --git a/botocore/data/account/2021-02-01/service-2.json b/botocore/data/account/2021-02-01/service-2.json index 5620b7d1c0..821c3d79e9 100644 --- a/botocore/data/account/2021-02-01/service-2.json +++ b/botocore/data/account/2021-02-01/service-2.json @@ -5,11 +5,13 @@ "endpointPrefix":"account", "jsonVersion":"1.1", "protocol":"rest-json", + "protocols":["rest-json"], "serviceFullName":"AWS Account", "serviceId":"Account", "signatureVersion":"v4", "signingName":"account", - "uid":"account-2021-02-01" + "uid":"account-2021-02-01", + "auth":["aws.auth#sigv4"] }, "operations":{ "AcceptPrimaryEmailUpdate":{ diff --git a/botocore/data/backup/2018-11-15/paginators-1.json b/botocore/data/backup/2018-11-15/paginators-1.json index 1720297a2e..f19ea3db26 100644 --- a/botocore/data/backup/2018-11-15/paginators-1.json +++ b/botocore/data/backup/2018-11-15/paginators-1.json @@ -101,6 +101,12 @@ "output_token": "NextToken", "limit_key": "MaxResults", "result_key": "RestoreTestingSelections" + }, + "ListIndexedRecoveryPoints": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "IndexedRecoveryPoints" } } } diff --git a/botocore/data/backup/2018-11-15/service-2.json b/botocore/data/backup/2018-11-15/service-2.json index 4adb46a318..4727e6f741 100644 --- a/botocore/data/backup/2018-11-15/service-2.json +++ b/botocore/data/backup/2018-11-15/service-2.json @@ -722,6 +722,23 @@ "documentation":"

This action returns details for a specified legal hold. The details are the body of a legal hold in JSON format, in addition to metadata.

", "idempotent":true }, + "GetRecoveryPointIndexDetails":{ + "name":"GetRecoveryPointIndexDetails", + "http":{ + "method":"GET", + "requestUri":"/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}/index" + }, + "input":{"shape":"GetRecoveryPointIndexDetailsInput"}, + "output":{"shape":"GetRecoveryPointIndexDetailsOutput"}, + "errors":[ + {"shape":"MissingParameterValueException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "documentation":"

This operation returns the metadata and details specific to the backup index associated with the specified recovery point.

", + "idempotent":true + }, "GetRecoveryPointRestoreMetadata":{ "name":"GetRecoveryPointRestoreMetadata", "http":{ @@ -969,6 +986,22 @@ ], "documentation":"

Returns a list of all frameworks for an Amazon Web Services account and Amazon Web Services Region.

" }, + "ListIndexedRecoveryPoints":{ + "name":"ListIndexedRecoveryPoints", + "http":{ + "method":"GET", + "requestUri":"/indexes/recovery-point/" + }, + "input":{"shape":"ListIndexedRecoveryPointsInput"}, + "output":{"shape":"ListIndexedRecoveryPointsOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "documentation":"

This operation returns a list of recovery points that have an associated index, belonging to the specified account.

Optional parameters you can include are: MaxResults; NextToken; SourceResourceArns; CreatedBefore; CreatedAfter; and ResourceType.

", + "idempotent":true + }, "ListLegalHolds":{ "name":"ListLegalHolds", "http":{ @@ -1429,6 +1462,24 @@ ], "documentation":"

Updates whether the Amazon Web Services account is opted in to cross-account backup. Returns an error if the account is not an Organizations management account. Use the DescribeGlobalSettings API to determine the current settings.

" }, + "UpdateRecoveryPointIndexSettings":{ + "name":"UpdateRecoveryPointIndexSettings", + "http":{ + "method":"POST", + "requestUri":"/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}/index" + }, + "input":{"shape":"UpdateRecoveryPointIndexSettingsInput"}, + "output":{"shape":"UpdateRecoveryPointIndexSettingsOutput"}, + "errors":[ + {"shape":"MissingParameterValueException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "documentation":"

This operation updates the settings of a recovery point index.

Required: BackupVaultName, RecoveryPointArn, and IAMRoleArn

", + "idempotent":true + }, "UpdateRecoveryPointLifecycle":{ "name":"UpdateRecoveryPointLifecycle", "http":{ @@ -1938,6 +1989,10 @@ "ScheduleExpressionTimezone":{ "shape":"Timezone", "documentation":"

The timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.

" + }, + "IndexActions":{ + "shape":"IndexActions", + "documentation":"

IndexActions is an array you use to specify how backup data should be indexed.

eEach BackupRule can have 0 or 1 IndexAction, as each backup can have up to one index associated with it.

Within the array is ResourceType. Only one will be accepted for each BackupRule.

" } }, "documentation":"

Specifies a scheduled task used to back up a selection of resources.

" @@ -1988,6 +2043,10 @@ "ScheduleExpressionTimezone":{ "shape":"Timezone", "documentation":"

The timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.

" + }, + "IndexActions":{ + "shape":"IndexActions", + "documentation":"

There can up to one IndexAction in each BackupRule, as each backup can have 0 or 1 backup index associated with it.

Within the array is ResourceTypes. Only 1 resource type will be accepted for each BackupRule. Valid values:

" } }, "documentation":"

Specifies a scheduled task used to back up a selection of resources.

" @@ -3627,6 +3686,14 @@ "VaultType":{ "shape":"VaultType", "documentation":"

The type of vault in which the described recovery point is stored.

" + }, + "IndexStatus":{ + "shape":"IndexStatus", + "documentation":"

This is the current status for the backup index associated with the specified recovery point.

Statuses are: PENDING | ACTIVE | FAILED | DELETING

A recovery point with an index that has the status of ACTIVE can be included in a search.

" + }, + "IndexStatusMessage":{ + "shape":"string", + "documentation":"

A string in the form of a detailed message explaining the status of a backup index associated with the recovery point.

" } } }, @@ -4183,6 +4250,68 @@ } } }, + "GetRecoveryPointIndexDetailsInput":{ + "type":"structure", + "required":[ + "BackupVaultName", + "RecoveryPointArn" + ], + "members":{ + "BackupVaultName":{ + "shape":"BackupVaultName", + "documentation":"

The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Region where they are created.

Accepted characters include lowercase letters, numbers, and hyphens.

", + "location":"uri", + "locationName":"backupVaultName" + }, + "RecoveryPointArn":{ + "shape":"ARN", + "documentation":"

An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

", + "location":"uri", + "locationName":"recoveryPointArn" + } + } + }, + "GetRecoveryPointIndexDetailsOutput":{ + "type":"structure", + "members":{ + "RecoveryPointArn":{ + "shape":"ARN", + "documentation":"

An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

" + }, + "BackupVaultArn":{ + "shape":"ARN", + "documentation":"

An ARN that uniquely identifies the backup vault where the recovery point index is stored.

For example, arn:aws:backup:us-east-1:123456789012:backup-vault:aBackupVault.

" + }, + "SourceResourceArn":{ + "shape":"ARN", + "documentation":"

A string of the Amazon Resource Name (ARN) that uniquely identifies the source resource.

" + }, + "IndexCreationDate":{ + "shape":"timestamp", + "documentation":"

The date and time that a backup index was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "IndexDeletionDate":{ + "shape":"timestamp", + "documentation":"

The date and time that a backup index was deleted, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "IndexCompletionDate":{ + "shape":"timestamp", + "documentation":"

The date and time that a backup index finished creation, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "IndexStatus":{ + "shape":"IndexStatus", + "documentation":"

This is the current status for the backup index associated with the specified recovery point.

Statuses are: PENDING | ACTIVE | FAILED | DELETING

A recovery point with an index that has the status of ACTIVE can be included in a search.

" + }, + "IndexStatusMessage":{ + "shape":"string", + "documentation":"

A detailed message explaining the status of a backup index associated with the recovery point.

" + }, + "TotalItemsIndexed":{ + "shape":"Long", + "documentation":"

Count of items within the backup index associated with the recovery point.

" + } + } + }, "GetRecoveryPointRestoreMetadataInput":{ "type":"structure", "required":[ @@ -4364,6 +4493,82 @@ "GlobalSettingsValue":{"type":"string"}, "IAMPolicy":{"type":"string"}, "IAMRoleArn":{"type":"string"}, + "Index":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "IndexAction":{ + "type":"structure", + "members":{ + "ResourceTypes":{ + "shape":"ResourceTypes", + "documentation":"

0 or 1 index action will be accepted for each BackupRule.

Valid values:

" + } + }, + "documentation":"

This is an optional array within a BackupRule.

IndexAction consists of one ResourceTypes.

" + }, + "IndexActions":{ + "type":"list", + "member":{"shape":"IndexAction"} + }, + "IndexStatus":{ + "type":"string", + "enum":[ + "PENDING", + "ACTIVE", + "FAILED", + "DELETING" + ] + }, + "IndexedRecoveryPoint":{ + "type":"structure", + "members":{ + "RecoveryPointArn":{ + "shape":"ARN", + "documentation":"

An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45

" + }, + "SourceResourceArn":{ + "shape":"ARN", + "documentation":"

A string of the Amazon Resource Name (ARN) that uniquely identifies the source resource.

" + }, + "IamRoleArn":{ + "shape":"ARN", + "documentation":"

This specifies the IAM role ARN used for this operation.

For example, arn:aws:iam::123456789012:role/S3Access

" + }, + "BackupCreationDate":{ + "shape":"timestamp", + "documentation":"

The date and time that a backup was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "ResourceType":{ + "shape":"ResourceType", + "documentation":"

The resource type of the indexed recovery point.

" + }, + "IndexCreationDate":{ + "shape":"timestamp", + "documentation":"

The date and time that a backup index was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "IndexStatus":{ + "shape":"IndexStatus", + "documentation":"

This is the current status for the backup index associated with the specified recovery point.

Statuses are: PENDING | ACTIVE | FAILED | DELETING

A recovery point with an index that has the status of ACTIVE can be included in a search.

" + }, + "IndexStatusMessage":{ + "shape":"string", + "documentation":"

A string in the form of a detailed message explaining the status of a backup index associated with the recovery point.

" + }, + "BackupVaultArn":{ + "shape":"ARN", + "documentation":"

An ARN that uniquely identifies the backup vault where the recovery point index is stored.

For example, arn:aws:backup:us-east-1:123456789012:backup-vault:aBackupVault.

" + } + }, + "documentation":"

This is a recovery point that has an associated backup index.

Only recovery points with a backup index can be included in a search.

" + }, + "IndexedRecoveryPointList":{ + "type":"list", + "member":{"shape":"IndexedRecoveryPoint"} + }, "InvalidParameterValueException":{ "type":"structure", "members":{ @@ -5052,6 +5257,66 @@ } } }, + "ListIndexedRecoveryPointsInput":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"string", + "documentation":"

The next item following a partial list of returned recovery points.

For example, if a request is made to return MaxResults number of indexed recovery points, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"

The maximum number of resource list items to be returned.

", + "location":"querystring", + "locationName":"maxResults" + }, + "SourceResourceArn":{ + "shape":"ARN", + "documentation":"

A string of the Amazon Resource Name (ARN) that uniquely identifies the source resource.

", + "location":"querystring", + "locationName":"sourceResourceArn" + }, + "CreatedBefore":{ + "shape":"timestamp", + "documentation":"

Returns only indexed recovery points that were created before the specified date.

", + "location":"querystring", + "locationName":"createdBefore" + }, + "CreatedAfter":{ + "shape":"timestamp", + "documentation":"

Returns only indexed recovery points that were created after the specified date.

", + "location":"querystring", + "locationName":"createdAfter" + }, + "ResourceType":{ + "shape":"ResourceType", + "documentation":"

Returns a list of indexed recovery points for the specified resource type(s).

Accepted values include:

", + "location":"querystring", + "locationName":"resourceType" + }, + "IndexStatus":{ + "shape":"IndexStatus", + "documentation":"

Include this parameter to filter the returned list by the indicated statuses.

Accepted values: PENDING | ACTIVE | FAILED | DELETING

A recovery point with an index that has the status of ACTIVE can be included in a search.

", + "location":"querystring", + "locationName":"indexStatus" + } + } + }, + "ListIndexedRecoveryPointsOutput":{ + "type":"structure", + "members":{ + "IndexedRecoveryPoints":{ + "shape":"IndexedRecoveryPointList", + "documentation":"

This is a list of recovery points that have an associated index, belonging to the specified account.

" + }, + "NextToken":{ + "shape":"string", + "documentation":"

The next item following a partial list of returned recovery points.

For example, if a request is made to return MaxResults number of indexed recovery points, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

" + } + } + }, "ListLegalHoldsInput":{ "type":"structure", "members":{ @@ -5979,6 +6244,14 @@ "VaultType":{ "shape":"VaultType", "documentation":"

The type of vault in which the described recovery point is stored.

" + }, + "IndexStatus":{ + "shape":"IndexStatus", + "documentation":"

This is the current status for the backup index associated with the specified recovery point.

Statuses are: PENDING | ACTIVE | FAILED | DELETING

A recovery point with an index that has the status of ACTIVE can be included in a search.

" + }, + "IndexStatusMessage":{ + "shape":"string", + "documentation":"

A string in the form of a detailed message explaining the status of a backup index associated with the recovery point.

" } }, "documentation":"

Contains detailed information about the recovery points stored in a backup vault.

" @@ -6033,6 +6306,14 @@ "VaultType":{ "shape":"VaultType", "documentation":"

The type of vault in which the described recovery point is stored.

" + }, + "IndexStatus":{ + "shape":"IndexStatus", + "documentation":"

This is the current status for the backup index associated with the specified recovery point.

Statuses are: PENDING | ACTIVE | FAILED | DELETING

A recovery point with an index that has the status of ACTIVE can be included in a search.

" + }, + "IndexStatusMessage":{ + "shape":"string", + "documentation":"

A string in the form of a detailed message explaining the status of a backup index associated with the recovery point.

" } }, "documentation":"

Contains detailed information about a saved recovery point.

" @@ -6925,6 +7206,10 @@ "BackupOptions":{ "shape":"BackupOptions", "documentation":"

The backup option for a selected resource. This option is only available for Windows Volume Shadow Copy Service (VSS) backup jobs.

Valid values: Set to \"WindowsVSS\":\"enabled\" to enable the WindowsVSS backup option and create a Windows VSS backup. Set to \"WindowsVSS\"\"disabled\" to create a regular backup. The WindowsVSS option is not enabled by default.

" + }, + "Index":{ + "shape":"Index", + "documentation":"

Include this parameter to enable index creation if your backup job has a resource type that supports backup indexes.

Resource types that support backup indexes include:

Index can have 1 of 2 possible values, either ENABLED or DISABLED.

To create a backup index for an eligible ACTIVE recovery point that does not yet have a backup index, set value to ENABLED.

To delete a backup index, set value to DISABLED.

" } } }, @@ -7235,6 +7520,57 @@ } } }, + "UpdateRecoveryPointIndexSettingsInput":{ + "type":"structure", + "required":[ + "BackupVaultName", + "RecoveryPointArn", + "Index" + ], + "members":{ + "BackupVaultName":{ + "shape":"BackupVaultName", + "documentation":"

The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Region where they are created.

Accepted characters include lowercase letters, numbers, and hyphens.

", + "location":"uri", + "locationName":"backupVaultName" + }, + "RecoveryPointArn":{ + "shape":"ARN", + "documentation":"

An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

", + "location":"uri", + "locationName":"recoveryPointArn" + }, + "IamRoleArn":{ + "shape":"IAMRoleArn", + "documentation":"

This specifies the IAM role ARN used for this operation.

For example, arn:aws:iam::123456789012:role/S3Access

" + }, + "Index":{ + "shape":"Index", + "documentation":"

Index can have 1 of 2 possible values, either ENABLED or DISABLED.

To create a backup index for an eligible ACTIVE recovery point that does not yet have a backup index, set value to ENABLED.

To delete a backup index, set value to DISABLED.

" + } + } + }, + "UpdateRecoveryPointIndexSettingsOutput":{ + "type":"structure", + "members":{ + "BackupVaultName":{ + "shape":"BackupVaultName", + "documentation":"

The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Region where they are created.

" + }, + "RecoveryPointArn":{ + "shape":"ARN", + "documentation":"

An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

" + }, + "IndexStatus":{ + "shape":"IndexStatus", + "documentation":"

This is the current status for the backup index associated with the specified recovery point.

Statuses are: PENDING | ACTIVE | FAILED | DELETING

A recovery point with an index that has the status of ACTIVE can be included in a search.

" + }, + "Index":{ + "shape":"Index", + "documentation":"

Index can have 1 of 2 possible values, either ENABLED or DISABLED.

A value of ENABLED means a backup index for an eligible ACTIVE recovery point has been created.

A value of DISABLED means a backup index was deleted.

" + } + } + }, "UpdateRecoveryPointLifecycleInput":{ "type":"structure", "required":[ diff --git a/botocore/data/backupsearch/2018-05-10/endpoint-rule-set-1.json b/botocore/data/backupsearch/2018-05-10/endpoint-rule-set-1.json new file mode 100644 index 0000000000..6bd2aba542 --- /dev/null +++ b/botocore/data/backupsearch/2018-05-10/endpoint-rule-set-1.json @@ -0,0 +1,151 @@ +{ + "version": "1.0", + "parameters": { + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + }, + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://backup-search-fips.{PartitionResult#implicitGlobalRegion}.{PartitionResult#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://backup-search.{PartitionResult#implicitGlobalRegion}.{PartitionResult#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff --git a/botocore/data/backupsearch/2018-05-10/paginators-1.json b/botocore/data/backupsearch/2018-05-10/paginators-1.json new file mode 100644 index 0000000000..bc482fde26 --- /dev/null +++ b/botocore/data/backupsearch/2018-05-10/paginators-1.json @@ -0,0 +1,28 @@ +{ + "pagination": { + "ListSearchJobBackups": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Results" + }, + "ListSearchJobResults": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Results" + }, + "ListSearchJobs": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "SearchJobs" + }, + "ListSearchResultExportJobs": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ExportJobs" + } + } +} diff --git a/botocore/data/backupsearch/2018-05-10/service-2.json b/botocore/data/backupsearch/2018-05-10/service-2.json new file mode 100644 index 0000000000..28b36780ab --- /dev/null +++ b/botocore/data/backupsearch/2018-05-10/service-2.json @@ -0,0 +1,1471 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2018-05-10", + "auth":["aws.auth#sigv4"], + "endpointPrefix":"backup-search", + "protocol":"rest-json", + "protocols":["rest-json"], + "serviceFullName":"AWS Backup Search", + "serviceId":"BackupSearch", + "signatureVersion":"v4", + "signingName":"backup-search", + "uid":"backupsearch-2018-05-10" + }, + "operations":{ + "GetSearchJob":{ + "name":"GetSearchJob", + "http":{ + "method":"GET", + "requestUri":"/search-jobs/{SearchJobIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetSearchJobInput"}, + "output":{"shape":"GetSearchJobOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

This operation retrieves metadata of a search job, including its progress.

" + }, + "GetSearchResultExportJob":{ + "name":"GetSearchResultExportJob", + "http":{ + "method":"GET", + "requestUri":"/export-search-jobs/{ExportJobIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetSearchResultExportJobInput"}, + "output":{"shape":"GetSearchResultExportJobOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

This operation retrieves the metadata of an export job.

An export job is an operation that transmits the results of a search job to a specified S3 bucket in a .csv file.

An export job allows you to retain results of a search beyond the search job's scheduled retention of 7 days.

" + }, + "ListSearchJobBackups":{ + "name":"ListSearchJobBackups", + "http":{ + "method":"GET", + "requestUri":"/search-jobs/{SearchJobIdentifier}/backups", + "responseCode":200 + }, + "input":{"shape":"ListSearchJobBackupsInput"}, + "output":{"shape":"ListSearchJobBackupsOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

This operation returns a list of all backups (recovery points) in a paginated format that were included in the search job.

If a search does not display an expected backup in the results, you can call this operation to display each backup included in the search. Any backups that were not included because they have a FAILED status from a permissions issue will be displayed, along with a status message.

Only recovery points with a backup index that has a status of ACTIVE will be included in search results. If the index has any other status, its status will be displayed along with a status message.

" + }, + "ListSearchJobResults":{ + "name":"ListSearchJobResults", + "http":{ + "method":"GET", + "requestUri":"/search-jobs/{SearchJobIdentifier}/search-results", + "responseCode":200 + }, + "input":{"shape":"ListSearchJobResultsInput"}, + "output":{"shape":"ListSearchJobResultsOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

This operation returns a list of a specified search job.

" + }, + "ListSearchJobs":{ + "name":"ListSearchJobs", + "http":{ + "method":"GET", + "requestUri":"/search-jobs", + "responseCode":200 + }, + "input":{"shape":"ListSearchJobsInput"}, + "output":{"shape":"ListSearchJobsOutput"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

This operation returns a list of search jobs belonging to an account.

" + }, + "ListSearchResultExportJobs":{ + "name":"ListSearchResultExportJobs", + "http":{ + "method":"GET", + "requestUri":"/export-search-jobs", + "responseCode":200 + }, + "input":{"shape":"ListSearchResultExportJobsInput"}, + "output":{"shape":"ListSearchResultExportJobsOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "documentation":"

This operation exports search results of a search job to a specified destination S3 bucket.

" + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{ResourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

This operation returns the tags for a resource type.

" + }, + "StartSearchJob":{ + "name":"StartSearchJob", + "http":{ + "method":"PUT", + "requestUri":"/search-jobs", + "responseCode":200 + }, + "input":{"shape":"StartSearchJobInput"}, + "output":{"shape":"StartSearchJobOutput"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ], + "documentation":"

This operation creates a search job which returns recovery points filtered by SearchScope and items filtered by ItemFilters.

You can optionally include ClientToken, EncryptionKeyArn, Name, and/or Tags.

", + "idempotent":true + }, + "StartSearchResultExportJob":{ + "name":"StartSearchResultExportJob", + "http":{ + "method":"PUT", + "requestUri":"/export-search-jobs", + "responseCode":200 + }, + "input":{"shape":"StartSearchResultExportJobInput"}, + "output":{"shape":"StartSearchResultExportJobOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"} + ], + "documentation":"

This operations starts a job to export the results of search job to a designated S3 bucket.

", + "idempotent":true + }, + "StopSearchJob":{ + "name":"StopSearchJob", + "http":{ + "method":"PUT", + "requestUri":"/search-jobs/{SearchJobIdentifier}/actions/cancel", + "responseCode":200 + }, + "input":{"shape":"StopSearchJobInput"}, + "output":{"shape":"StopSearchJobOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"} + ], + "documentation":"

This operations ends a search job.

Only a search job with a status of RUNNING can be stopped.

", + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{ResourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

This operation puts tags on the resource you indicate.

", + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{ResourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"

This operation removes tags from the specified resource.

", + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{ + "shape":"String", + "documentation":"

User does not have sufficient access to perform this action.

" + } + }, + "documentation":"

You do not have sufficient access to perform this action.

", + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "BackupCreationTimeFilter":{ + "type":"structure", + "members":{ + "CreatedAfter":{ + "shape":"Timestamp", + "documentation":"

This timestamp includes recovery points only created after the specified time.

" + }, + "CreatedBefore":{ + "shape":"Timestamp", + "documentation":"

This timestamp includes recovery points only created before the specified time.

" + } + }, + "documentation":"

This filters by recovery points within the CreatedAfter and CreatedBefore timestamps.

" + }, + "ConflictException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType" + ], + "members":{ + "message":{ + "shape":"String", + "documentation":"

Updating or deleting a resource can cause an inconsistent state.

" + }, + "resourceId":{ + "shape":"String", + "documentation":"

Identifier of the resource affected.

" + }, + "resourceType":{ + "shape":"String", + "documentation":"

Type of the resource affected.

" + } + }, + "documentation":"

This exception occurs when a conflict with a previous successful operation is detected. This generally occurs when the previous operation did not have time to propagate to the host serving the current request.

A retry (with appropriate backoff logic) is the recommended response to this exception.

", + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "CurrentSearchProgress":{ + "type":"structure", + "members":{ + "RecoveryPointsScannedCount":{ + "shape":"Integer", + "documentation":"

This number is the sum of all backups that have been scanned so far during a search job.

" + }, + "ItemsScannedCount":{ + "shape":"Long", + "documentation":"

This number is the sum of all items that have been scanned so far during a search job.

" + }, + "ItemsMatchedCount":{ + "shape":"Long", + "documentation":"

This number is the sum of all items that match the item filters in a search job in progress.

" + } + }, + "documentation":"

This contains information results retrieved from a search job that may not have completed.

" + }, + "EBSItemFilter":{ + "type":"structure", + "members":{ + "FilePaths":{ + "shape":"StringConditionList", + "documentation":"

You can include 1 to 10 values.

If one file path is included, the results will return only items that match the file path.

If more than one file path is included, the results will return all items that match any of the file paths.

" + }, + "Sizes":{ + "shape":"LongConditionList", + "documentation":"

You can include 1 to 10 values.

If one is included, the results will return only items that match.

If more than one is included, the results will return all items that match any of the included values.

" + }, + "CreationTimes":{ + "shape":"TimeConditionList", + "documentation":"

You can include 1 to 10 values.

If one is included, the results will return only items that match.

If more than one is included, the results will return all items that match any of the included values.

" + }, + "LastModificationTimes":{ + "shape":"TimeConditionList", + "documentation":"

You can include 1 to 10 values.

If one is included, the results will return only items that match.

If more than one is included, the results will return all items that match any of the included values.

" + } + }, + "documentation":"

This contains arrays of objects, which may include CreationTimes time condition objects, FilePaths string objects, LastModificationTimes time condition objects,

" + }, + "EBSItemFilters":{ + "type":"list", + "member":{"shape":"EBSItemFilter"}, + "max":10, + "min":0 + }, + "EBSResultItem":{ + "type":"structure", + "members":{ + "BackupResourceArn":{ + "shape":"String", + "documentation":"

These are one or more items in the results that match values for the Amazon Resource Name (ARN) of recovery points returned in a search of Amazon EBS backup metadata.

" + }, + "SourceResourceArn":{ + "shape":"String", + "documentation":"

These are one or more items in the results that match values for the Amazon Resource Name (ARN) of source resources returned in a search of Amazon EBS backup metadata.

" + }, + "BackupVaultName":{ + "shape":"String", + "documentation":"

The name of the backup vault.

" + }, + "FileSystemIdentifier":{ + "shape":"String", + "documentation":"

These are one or more items in the results that match values for file systems returned in a search of Amazon EBS backup metadata.

" + }, + "FilePath":{ + "shape":"FilePath", + "documentation":"

These are one or more items in the results that match values for file paths returned in a search of Amazon EBS backup metadata.

" + }, + "FileSize":{ + "shape":"Long", + "documentation":"

These are one or more items in the results that match values for file sizes returned in a search of Amazon EBS backup metadata.

" + }, + "CreationTime":{ + "shape":"Timestamp", + "documentation":"

These are one or more items in the results that match values for creation times returned in a search of Amazon EBS backup metadata.

" + }, + "LastModifiedTime":{ + "shape":"Timestamp", + "documentation":"

These are one or more items in the results that match values for Last Modified Time returned in a search of Amazon EBS backup metadata.

" + } + }, + "documentation":"

These are the items returned in the results of a search of Amazon EBS backup metadata.

" + }, + "EncryptionKeyArn":{"type":"string"}, + "ExportJobArn":{"type":"string"}, + "ExportJobStatus":{ + "type":"string", + "enum":[ + "RUNNING", + "FAILED", + "COMPLETED" + ] + }, + "ExportJobSummaries":{ + "type":"list", + "member":{"shape":"ExportJobSummary"} + }, + "ExportJobSummary":{ + "type":"structure", + "required":["ExportJobIdentifier"], + "members":{ + "ExportJobIdentifier":{ + "shape":"GenericId", + "documentation":"

This is the unique string that identifies a specific export job.

" + }, + "ExportJobArn":{ + "shape":"ExportJobArn", + "documentation":"

This is the unique ARN (Amazon Resource Name) that belongs to the new export job.

" + }, + "Status":{ + "shape":"ExportJobStatus", + "documentation":"

The status of the export job is one of the following:

CREATED; RUNNING; FAILED; or COMPLETED.

" + }, + "CreationTime":{ + "shape":"Timestamp", + "documentation":"

This is a timestamp of the time the export job was created.

" + }, + "CompletionTime":{ + "shape":"Timestamp", + "documentation":"

This is a timestamp of the time the export job compeleted.

" + }, + "StatusMessage":{ + "shape":"String", + "documentation":"

A status message is a string that is returned for an export job.

A status message is included for any status other than COMPLETED without issues.

" + }, + "SearchJobArn":{ + "shape":"SearchJobArn", + "documentation":"

The unique string that identifies the Amazon Resource Name (ARN) of the specified search job.

" + } + }, + "documentation":"

This is the summary of an export job.

" + }, + "ExportSpecification":{ + "type":"structure", + "members":{ + "s3ExportSpecification":{ + "shape":"S3ExportSpecification", + "documentation":"

This specifies the destination Amazon S3 bucket for the export job. And, if included, it also specifies the destination prefix.

" + } + }, + "documentation":"

This contains the export specification object.

", + "union":true + }, + "FilePath":{ + "type":"string", + "sensitive":true + }, + "GenericId":{"type":"string"}, + "GetSearchJobInput":{ + "type":"structure", + "required":["SearchJobIdentifier"], + "members":{ + "SearchJobIdentifier":{ + "shape":"GenericId", + "documentation":"

Required unique string that specifies the search job.

", + "location":"uri", + "locationName":"SearchJobIdentifier" + } + } + }, + "GetSearchJobOutput":{ + "type":"structure", + "required":[ + "Status", + "SearchScope", + "ItemFilters", + "CreationTime", + "SearchJobIdentifier", + "SearchJobArn" + ], + "members":{ + "Name":{ + "shape":"String", + "documentation":"

Returned name of the specified search job.

" + }, + "SearchScopeSummary":{ + "shape":"SearchScopeSummary", + "documentation":"

Returned summary of the specified search job scope, including:

" + }, + "CurrentSearchProgress":{ + "shape":"CurrentSearchProgress", + "documentation":"

Returns numbers representing BackupsScannedCount, ItemsScanned, and ItemsMatched.

" + }, + "StatusMessage":{ + "shape":"String", + "documentation":"

A status message will be returned for either a earch job with a status of ERRORED or a status of COMPLETED jobs with issues.

For example, a message may say that a search contained recovery points unable to be scanned because of a permissions issue.

" + }, + "EncryptionKeyArn":{ + "shape":"EncryptionKeyArn", + "documentation":"

The encryption key for the specified search job.

Example: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

" + }, + "CompletionTime":{ + "shape":"Timestamp", + "documentation":"

The date and time that a search job completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "Status":{ + "shape":"SearchJobState", + "documentation":"

The current status of the specified search job.

A search job may have one of the following statuses: RUNNING; COMPLETED; STOPPED; FAILED; TIMED_OUT; or EXPIRED .

" + }, + "SearchScope":{ + "shape":"SearchScope", + "documentation":"

The search scope is all backup properties input into a search.

" + }, + "ItemFilters":{ + "shape":"ItemFilters", + "documentation":"

Item Filters represent all input item properties specified when the search was created.

" + }, + "CreationTime":{ + "shape":"Timestamp", + "documentation":"

The date and time that a search job was created, in Unix format and Coordinated Universal Time (UTC). The value of CompletionTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "SearchJobIdentifier":{ + "shape":"GenericId", + "documentation":"

The unique string that identifies the specified search job.

" + }, + "SearchJobArn":{ + "shape":"SearchJobArn", + "documentation":"

The unique string that identifies the Amazon Resource Name (ARN) of the specified search job.

" + } + } + }, + "GetSearchResultExportJobInput":{ + "type":"structure", + "required":["ExportJobIdentifier"], + "members":{ + "ExportJobIdentifier":{ + "shape":"GenericId", + "documentation":"

This is the unique string that identifies a specific export job.

Required for this operation.

", + "location":"uri", + "locationName":"ExportJobIdentifier" + } + } + }, + "GetSearchResultExportJobOutput":{ + "type":"structure", + "required":["ExportJobIdentifier"], + "members":{ + "ExportJobIdentifier":{ + "shape":"GenericId", + "documentation":"

This is the unique string that identifies the specified export job.

" + }, + "ExportJobArn":{ + "shape":"ExportJobArn", + "documentation":"

The unique Amazon Resource Name (ARN) that uniquely identifies the export job.

" + }, + "Status":{ + "shape":"ExportJobStatus", + "documentation":"

This is the current status of the export job.

" + }, + "CreationTime":{ + "shape":"Timestamp", + "documentation":"

The date and time that an export job was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "CompletionTime":{ + "shape":"Timestamp", + "documentation":"

The date and time that an export job completed, in Unix format and Coordinated Universal Time (UTC). The value of CreationTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "StatusMessage":{ + "shape":"String", + "documentation":"

A status message is a string that is returned for search job with a status of FAILED, along with steps to remedy and retry the operation.

" + }, + "ExportSpecification":{ + "shape":"ExportSpecification", + "documentation":"

The export specification consists of the destination S3 bucket to which the search results were exported, along with the destination prefix.

" + }, + "SearchJobArn":{ + "shape":"SearchJobArn", + "documentation":"

The unique string that identifies the Amazon Resource Name (ARN) of the specified search job.

" + } + } + }, + "IamRoleArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:(?:aws|aws-cn|aws-us-gov):iam::[a-z0-9-]+:role/(.+)" + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{ + "shape":"String", + "documentation":"

Unexpected error during processing of request.

" + }, + "retryAfterSeconds":{ + "shape":"Integer", + "documentation":"

Retry the call after number of seconds.

", + "location":"header", + "locationName":"Retry-After" + } + }, + "documentation":"

An internal server error occurred. Retry your request.

", + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "ItemFilters":{ + "type":"structure", + "members":{ + "S3ItemFilters":{ + "shape":"S3ItemFilters", + "documentation":"

This array can contain CreationTimes, ETags, ObjectKeys, Sizes, or VersionIds objects.

" + }, + "EBSItemFilters":{ + "shape":"EBSItemFilters", + "documentation":"

This array can contain CreationTimes, FilePaths, LastModificationTimes, or Sizes objects.

" + } + }, + "documentation":"

Item Filters represent all input item properties specified when the search was created.

Contains either EBSItemFilters or S3ItemFilters

" + }, + "ListSearchJobBackupsInput":{ + "type":"structure", + "required":["SearchJobIdentifier"], + "members":{ + "SearchJobIdentifier":{ + "shape":"GenericId", + "documentation":"

The unique string that specifies the search job.

", + "location":"uri", + "locationName":"SearchJobIdentifier" + }, + "NextToken":{ + "shape":"String", + "documentation":"

The next item following a partial list of returned backups included in a search job.

For example, if a request is made to return MaxResults number of backups, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"ListSearchJobBackupsInputMaxResultsInteger", + "documentation":"

The maximum number of resource list items to be returned.

", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListSearchJobBackupsInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "ListSearchJobBackupsOutput":{ + "type":"structure", + "required":["Results"], + "members":{ + "Results":{ + "shape":"SearchJobBackupsResults", + "documentation":"

The recovery points returned the results of a search job

" + }, + "NextToken":{ + "shape":"String", + "documentation":"

The next item following a partial list of returned backups included in a search job.

For example, if a request is made to return MaxResults number of backups, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

" + } + } + }, + "ListSearchJobResultsInput":{ + "type":"structure", + "required":["SearchJobIdentifier"], + "members":{ + "SearchJobIdentifier":{ + "shape":"GenericId", + "documentation":"

The unique string that specifies the search job.

", + "location":"uri", + "locationName":"SearchJobIdentifier" + }, + "NextToken":{ + "shape":"String", + "documentation":"

The next item following a partial list of returned search job results.

For example, if a request is made to return MaxResults number of search job results, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"ListSearchJobResultsInputMaxResultsInteger", + "documentation":"

The maximum number of resource list items to be returned.

", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListSearchJobResultsInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "ListSearchJobResultsOutput":{ + "type":"structure", + "required":["Results"], + "members":{ + "Results":{ + "shape":"Results", + "documentation":"

The results consist of either EBSResultItem or S3ResultItem.

" + }, + "NextToken":{ + "shape":"String", + "documentation":"

The next item following a partial list of search job results.

For example, if a request is made to return MaxResults number of backups, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

" + } + } + }, + "ListSearchJobsInput":{ + "type":"structure", + "members":{ + "ByStatus":{ + "shape":"SearchJobState", + "documentation":"

Include this parameter to filter list by search job status.

", + "location":"querystring", + "locationName":"Status" + }, + "NextToken":{ + "shape":"String", + "documentation":"

The next item following a partial list of returned search jobs.

For example, if a request is made to return MaxResults number of backups, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"ListSearchJobsInputMaxResultsInteger", + "documentation":"

The maximum number of resource list items to be returned.

", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListSearchJobsInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "ListSearchJobsOutput":{ + "type":"structure", + "required":["SearchJobs"], + "members":{ + "SearchJobs":{ + "shape":"SearchJobs", + "documentation":"

The search jobs among the list, with details of the returned search jobs.

" + }, + "NextToken":{ + "shape":"String", + "documentation":"

The next item following a partial list of returned backups included in a search job.

For example, if a request is made to return MaxResults number of backups, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

" + } + } + }, + "ListSearchResultExportJobsInput":{ + "type":"structure", + "members":{ + "Status":{ + "shape":"ExportJobStatus", + "documentation":"

The search jobs to be included in the export job can be filtered by including this parameter.

", + "location":"querystring", + "locationName":"Status" + }, + "SearchJobIdentifier":{ + "shape":"GenericId", + "documentation":"

The unique string that specifies the search job.

", + "location":"querystring", + "locationName":"SearchJobIdentifier" + }, + "NextToken":{ + "shape":"String", + "documentation":"

The next item following a partial list of returned backups included in a search job.

For example, if a request is made to return MaxResults number of backups, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"ListSearchResultExportJobsInputMaxResultsInteger", + "documentation":"

The maximum number of resource list items to be returned.

", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListSearchResultExportJobsInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "ListSearchResultExportJobsOutput":{ + "type":"structure", + "required":["ExportJobs"], + "members":{ + "ExportJobs":{ + "shape":"ExportJobSummaries", + "documentation":"

The operation returns the included export jobs.

" + }, + "NextToken":{ + "shape":"String", + "documentation":"

The next item following a partial list of returned backups included in a search job.

For example, if a request is made to return MaxResults number of backups, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

" + } + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["ResourceArn"], + "members":{ + "ResourceArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) that uniquely identifies the resource.>

", + "location":"uri", + "locationName":"ResourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "Tags":{ + "shape":"TagMap", + "documentation":"

List of tags returned by the operation.

" + } + } + }, + "Long":{ + "type":"long", + "box":true + }, + "LongCondition":{ + "type":"structure", + "required":["Value"], + "members":{ + "Value":{ + "shape":"Long", + "documentation":"

The value of an item included in one of the search item filters.

" + }, + "Operator":{ + "shape":"LongConditionOperator", + "documentation":"

A string that defines what values will be returned.

If this is included, avoid combinations of operators that will return all possible values. For example, including both EQUALS_TO and NOT_EQUALS_TO with a value of 4 will return all values.

" + } + }, + "documentation":"

The long condition contains a Value and can optionally contain an Operator.

" + }, + "LongConditionList":{ + "type":"list", + "member":{"shape":"LongCondition"}, + "max":10, + "min":1 + }, + "LongConditionOperator":{ + "type":"string", + "enum":[ + "EQUALS_TO", + "NOT_EQUALS_TO", + "LESS_THAN_EQUAL_TO", + "GREATER_THAN_EQUAL_TO" + ] + }, + "ObjectKey":{ + "type":"string", + "sensitive":true + }, + "RecoveryPoint":{"type":"string"}, + "RecoveryPointArnList":{ + "type":"list", + "member":{"shape":"RecoveryPoint"}, + "max":50, + "min":0 + }, + "ResourceArnList":{ + "type":"list", + "member":{"shape":"String"}, + "max":50, + "min":0 + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType" + ], + "members":{ + "message":{ + "shape":"String", + "documentation":"

Request references a resource which does not exist.

" + }, + "resourceId":{ + "shape":"String", + "documentation":"

Hypothetical identifier of the resource affected.

" + }, + "resourceType":{ + "shape":"String", + "documentation":"

Hypothetical type of the resource affected.

" + } + }, + "documentation":"

The resource was not found for this request.

Confirm the resource information, such as the ARN or type is correct and exists, then retry the request.

", + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ResourceType":{ + "type":"string", + "enum":[ + "S3", + "EBS" + ] + }, + "ResourceTypeList":{ + "type":"list", + "member":{"shape":"ResourceType"}, + "max":1, + "min":1 + }, + "ResultItem":{ + "type":"structure", + "members":{ + "S3ResultItem":{ + "shape":"S3ResultItem", + "documentation":"

These are items returned in the search results of an Amazon S3 search.

" + }, + "EBSResultItem":{ + "shape":"EBSResultItem", + "documentation":"

These are items returned in the search results of an Amazon EBS search.

" + } + }, + "documentation":"

This is an object representing the item returned in the results of a search for a specific resource type.

", + "union":true + }, + "Results":{ + "type":"list", + "member":{"shape":"ResultItem"} + }, + "S3ExportSpecification":{ + "type":"structure", + "required":["DestinationBucket"], + "members":{ + "DestinationBucket":{ + "shape":"String", + "documentation":"

This specifies the destination Amazon S3 bucket for the export job.

" + }, + "DestinationPrefix":{ + "shape":"String", + "documentation":"

This specifies the prefix for the destination Amazon S3 bucket for the export job.

" + } + }, + "documentation":"

This specification contains a required string of the destination bucket; optionally, you can include the destination prefix.

" + }, + "S3ItemFilter":{ + "type":"structure", + "members":{ + "ObjectKeys":{ + "shape":"StringConditionList", + "documentation":"

You can include 1 to 10 values.

If one value is included, the results will return only items that match the value.

If more than one value is included, the results will return all items that match any of the values.

" + }, + "Sizes":{ + "shape":"LongConditionList", + "documentation":"

You can include 1 to 10 values.

If one value is included, the results will return only items that match the value.

If more than one value is included, the results will return all items that match any of the values.

" + }, + "CreationTimes":{ + "shape":"TimeConditionList", + "documentation":"

You can include 1 to 10 values.

If one value is included, the results will return only items that match the value.

If more than one value is included, the results will return all items that match any of the values.

" + }, + "VersionIds":{ + "shape":"StringConditionList", + "documentation":"

You can include 1 to 10 values.

If one value is included, the results will return only items that match the value.

If more than one value is included, the results will return all items that match any of the values.

" + }, + "ETags":{ + "shape":"StringConditionList", + "documentation":"

You can include 1 to 10 values.

If one value is included, the results will return only items that match the value.

If more than one value is included, the results will return all items that match any of the values.

" + } + }, + "documentation":"

This contains arrays of objects, which may include ObjectKeys, Sizes, CreationTimes, VersionIds, and/or Etags.

" + }, + "S3ItemFilters":{ + "type":"list", + "member":{"shape":"S3ItemFilter"}, + "max":10, + "min":0 + }, + "S3ResultItem":{ + "type":"structure", + "members":{ + "BackupResourceArn":{ + "shape":"String", + "documentation":"

These are items in the returned results that match recovery point Amazon Resource Names (ARN) input during a search of Amazon S3 backup metadata.

" + }, + "SourceResourceArn":{ + "shape":"String", + "documentation":"

These are items in the returned results that match source Amazon Resource Names (ARN) input during a search of Amazon S3 backup metadata.

" + }, + "BackupVaultName":{ + "shape":"String", + "documentation":"

The name of the backup vault.

" + }, + "ObjectKey":{ + "shape":"ObjectKey", + "documentation":"

This is one or more items returned in the results of a search of Amazon S3 backup metadata that match the values input for object key.

" + }, + "ObjectSize":{ + "shape":"Long", + "documentation":"

These are items in the returned results that match values for object size(s) input during a search of Amazon S3 backup metadata.

" + }, + "CreationTime":{ + "shape":"Timestamp", + "documentation":"

These are one or more items in the returned results that match values for item creation time input during a search of Amazon S3 backup metadata.

" + }, + "ETag":{ + "shape":"String", + "documentation":"

These are one or more items in the returned results that match values for ETags input during a search of Amazon S3 backup metadata.

" + }, + "VersionId":{ + "shape":"String", + "documentation":"

These are one or more items in the returned results that match values for version IDs input during a search of Amazon S3 backup metadata.

" + } + }, + "documentation":"

These are the items returned in the results of a search of Amazon S3 backup metadata.

" + }, + "SearchJobArn":{"type":"string"}, + "SearchJobBackupsResult":{ + "type":"structure", + "members":{ + "Status":{ + "shape":"SearchJobState", + "documentation":"

This is the status of the search job backup result.

" + }, + "StatusMessage":{ + "shape":"String", + "documentation":"

This is the status message included with the results.

" + }, + "ResourceType":{ + "shape":"ResourceType", + "documentation":"

This is the resource type of the search.

" + }, + "BackupResourceArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) that uniquely identifies the backup resources.

" + }, + "SourceResourceArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) that uniquely identifies the source resources.

" + }, + "IndexCreationTime":{ + "shape":"Timestamp", + "documentation":"

This is the creation time of the backup index.

" + }, + "BackupCreationTime":{ + "shape":"Timestamp", + "documentation":"

This is the creation time of the backup (recovery point).

" + } + }, + "documentation":"

This contains the information about recovery points returned in results of a search job.

" + }, + "SearchJobBackupsResults":{ + "type":"list", + "member":{"shape":"SearchJobBackupsResult"} + }, + "SearchJobState":{ + "type":"string", + "enum":[ + "RUNNING", + "COMPLETED", + "STOPPING", + "STOPPED", + "FAILED" + ] + }, + "SearchJobSummary":{ + "type":"structure", + "members":{ + "SearchJobIdentifier":{ + "shape":"GenericId", + "documentation":"

The unique string that specifies the search job.

" + }, + "SearchJobArn":{ + "shape":"SearchJobArn", + "documentation":"

The unique string that identifies the Amazon Resource Name (ARN) of the specified search job.

" + }, + "Name":{ + "shape":"String", + "documentation":"

This is the name of the search job.

" + }, + "Status":{ + "shape":"SearchJobState", + "documentation":"

This is the status of the search job.

" + }, + "CreationTime":{ + "shape":"Timestamp", + "documentation":"

This is the creation time of the search job.

" + }, + "CompletionTime":{ + "shape":"Timestamp", + "documentation":"

This is the completion time of the search job.

" + }, + "SearchScopeSummary":{ + "shape":"SearchScopeSummary", + "documentation":"

Returned summary of the specified search job scope, including:

" + }, + "StatusMessage":{ + "shape":"String", + "documentation":"

A status message will be returned for either a earch job with a status of ERRORED or a status of COMPLETED jobs with issues.

For example, a message may say that a search contained recovery points unable to be scanned because of a permissions issue.

" + } + }, + "documentation":"

This is information pertaining to a search job.

" + }, + "SearchJobs":{ + "type":"list", + "member":{"shape":"SearchJobSummary"} + }, + "SearchScope":{ + "type":"structure", + "required":["BackupResourceTypes"], + "members":{ + "BackupResourceTypes":{ + "shape":"ResourceTypeList", + "documentation":"

The resource types included in a search.

Eligible resource types include S3 and EBS.

" + }, + "BackupResourceCreationTime":{ + "shape":"BackupCreationTimeFilter", + "documentation":"

This is the time a backup resource was created.

" + }, + "SourceResourceArns":{ + "shape":"ResourceArnList", + "documentation":"

The Amazon Resource Name (ARN) that uniquely identifies the source resources.

" + }, + "BackupResourceArns":{ + "shape":"RecoveryPointArnList", + "documentation":"

The Amazon Resource Name (ARN) that uniquely identifies the backup resources.

" + }, + "BackupResourceTags":{ + "shape":"TagMap", + "documentation":"

These are one or more tags on the backup (recovery point).

" + } + }, + "documentation":"

The search scope is all backup properties input into a search.

" + }, + "SearchScopeSummary":{ + "type":"structure", + "members":{ + "TotalRecoveryPointsToScanCount":{ + "shape":"Integer", + "documentation":"

This is the count of the total number of backups that will be scanned in a search.

" + }, + "TotalItemsToScanCount":{ + "shape":"Long", + "documentation":"

This is the count of the total number of items that will be scanned in a search.

" + } + }, + "documentation":"

The summary of the specified search job scope, including:

" + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType", + "serviceCode", + "quotaCode" + ], + "members":{ + "message":{ + "shape":"String", + "documentation":"

This request was not successful due to a service quota exceeding limits.

" + }, + "resourceId":{ + "shape":"String", + "documentation":"

Identifier of the resource.

" + }, + "resourceType":{ + "shape":"String", + "documentation":"

Type of resource.

" + }, + "serviceCode":{ + "shape":"String", + "documentation":"

This is the code unique to the originating service with the quota.

" + }, + "quotaCode":{ + "shape":"String", + "documentation":"

This is the code specific to the quota type.

" + } + }, + "documentation":"

The request denied due to exceeding the quota limits permitted.

", + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "StartSearchJobInput":{ + "type":"structure", + "required":["SearchScope"], + "members":{ + "Tags":{ + "shape":"TagMap", + "documentation":"

List of tags returned by the operation.

" + }, + "Name":{ + "shape":"StartSearchJobInputNameString", + "documentation":"

Include alphanumeric characters to create a name for this search job.

" + }, + "EncryptionKeyArn":{ + "shape":"EncryptionKeyArn", + "documentation":"

The encryption key for the specified search job.

" + }, + "ClientToken":{ + "shape":"String", + "documentation":"

Include this parameter to allow multiple identical calls for idempotency.

A client token is valid for 8 hours after the first request that uses it is completed. After this time, any request with the same token is treated as a new request.

" + }, + "SearchScope":{ + "shape":"SearchScope", + "documentation":"

This object can contain BackupResourceTypes, BackupResourceArns, BackupResourceCreationTime, BackupResourceTags, and SourceResourceArns to filter the recovery points returned by the search job.

" + }, + "ItemFilters":{ + "shape":"ItemFilters", + "documentation":"

Item Filters represent all input item properties specified when the search was created.

Contains either EBSItemFilters or S3ItemFilters

" + } + } + }, + "StartSearchJobInputNameString":{ + "type":"string", + "max":500, + "min":0 + }, + "StartSearchJobOutput":{ + "type":"structure", + "members":{ + "SearchJobArn":{ + "shape":"SearchJobArn", + "documentation":"

The unique string that identifies the Amazon Resource Name (ARN) of the specified search job.

" + }, + "CreationTime":{ + "shape":"Timestamp", + "documentation":"

The date and time that a job was created, in Unix format and Coordinated Universal Time (UTC). The value of CompletionTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

" + }, + "SearchJobIdentifier":{ + "shape":"GenericId", + "documentation":"

The unique string that specifies the search job.

" + } + } + }, + "StartSearchResultExportJobInput":{ + "type":"structure", + "required":[ + "SearchJobIdentifier", + "ExportSpecification" + ], + "members":{ + "SearchJobIdentifier":{ + "shape":"GenericId", + "documentation":"

The unique string that specifies the search job.

" + }, + "ExportSpecification":{ + "shape":"ExportSpecification", + "documentation":"

This specification contains a required string of the destination bucket; optionally, you can include the destination prefix.

" + }, + "ClientToken":{ + "shape":"String", + "documentation":"

Include this parameter to allow multiple identical calls for idempotency.

A client token is valid for 8 hours after the first request that uses it is completed. After this time, any request with the same token is treated as a new request.

" + }, + "Tags":{ + "shape":"TagMap", + "documentation":"

Optional tags to include. A tag is a key-value pair you can use to manage, filter, and search for your resources. Allowed characters include UTF-8 letters, numbers, spaces, and the following characters: + - = . _ : /.

" + }, + "RoleArn":{ + "shape":"IamRoleArn", + "documentation":"

This parameter specifies the role ARN used to start the search results export jobs.

" + } + } + }, + "StartSearchResultExportJobOutput":{ + "type":"structure", + "required":["ExportJobIdentifier"], + "members":{ + "ExportJobArn":{ + "shape":"ExportJobArn", + "documentation":"

This is the unique ARN (Amazon Resource Name) that belongs to the new export job.

" + }, + "ExportJobIdentifier":{ + "shape":"GenericId", + "documentation":"

This is the unique identifier that specifies the new export job.

" + } + } + }, + "StopSearchJobInput":{ + "type":"structure", + "required":["SearchJobIdentifier"], + "members":{ + "SearchJobIdentifier":{ + "shape":"GenericId", + "documentation":"

The unique string that specifies the search job.

", + "location":"uri", + "locationName":"SearchJobIdentifier" + } + } + }, + "StopSearchJobOutput":{ + "type":"structure", + "members":{ + } + }, + "String":{"type":"string"}, + "StringCondition":{ + "type":"structure", + "required":["Value"], + "members":{ + "Value":{ + "shape":"String", + "documentation":"

The value of the string.

" + }, + "Operator":{ + "shape":"StringConditionOperator", + "documentation":"

A string that defines what values will be returned.

If this is included, avoid combinations of operators that will return all possible values. For example, including both EQUALS_TO and NOT_EQUALS_TO with a value of 4 will return all values.

" + } + }, + "documentation":"

This contains the value of the string and can contain one or more operators.

" + }, + "StringConditionList":{ + "type":"list", + "member":{"shape":"StringCondition"}, + "max":10, + "min":1 + }, + "StringConditionOperator":{ + "type":"string", + "enum":[ + "EQUALS_TO", + "NOT_EQUALS_TO", + "CONTAINS", + "DOES_NOT_CONTAIN", + "BEGINS_WITH", + "ENDS_WITH", + "DOES_NOT_BEGIN_WITH", + "DOES_NOT_END_WITH" + ] + }, + "TagKeys":{ + "type":"list", + "member":{"shape":"String"} + }, + "TagMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceArn", + "Tags" + ], + "members":{ + "ResourceArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) that uniquely identifies the resource.

This is the resource that will have the indicated tags.

", + "location":"uri", + "locationName":"ResourceArn" + }, + "Tags":{ + "shape":"TagMap", + "documentation":"

Required tags to include. A tag is a key-value pair you can use to manage, filter, and search for your resources. Allowed characters include UTF-8 letters, numbers, spaces, and the following characters: + - = . _ : /.

" + } + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{ + "shape":"String", + "documentation":"

Request was unsuccessful due to request throttling.

" + }, + "serviceCode":{ + "shape":"String", + "documentation":"

This is the code unique to the originating service.

" + }, + "quotaCode":{ + "shape":"String", + "documentation":"

This is the code unique to the originating service with the quota.

" + }, + "retryAfterSeconds":{ + "shape":"Integer", + "documentation":"

Retry the call after number of seconds.

", + "location":"header", + "locationName":"Retry-After" + } + }, + "documentation":"

The request was denied due to request throttling.

", + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":true} + }, + "TimeCondition":{ + "type":"structure", + "required":["Value"], + "members":{ + "Value":{ + "shape":"Timestamp", + "documentation":"

This is the timestamp value of the time condition.

" + }, + "Operator":{ + "shape":"TimeConditionOperator", + "documentation":"

A string that defines what values will be returned.

If this is included, avoid combinations of operators that will return all possible values. For example, including both EQUALS_TO and NOT_EQUALS_TO with a value of 4 will return all values.

" + } + }, + "documentation":"

A time condition denotes a creation time, last modification time, or other time.

" + }, + "TimeConditionList":{ + "type":"list", + "member":{"shape":"TimeCondition"}, + "max":10, + "min":1 + }, + "TimeConditionOperator":{ + "type":"string", + "enum":[ + "EQUALS_TO", + "NOT_EQUALS_TO", + "LESS_THAN_EQUAL_TO", + "GREATER_THAN_EQUAL_TO" + ] + }, + "Timestamp":{"type":"timestamp"}, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceArn", + "TagKeys" + ], + "members":{ + "ResourceArn":{ + "shape":"String", + "documentation":"

The Amazon Resource Name (ARN) that uniquely identifies the resource where you want to remove tags.

", + "location":"uri", + "locationName":"ResourceArn" + }, + "TagKeys":{ + "shape":"TagKeys", + "documentation":"

This required parameter contains the tag keys you want to remove from the source.

", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{ + "shape":"String", + "documentation":"

The input fails to satisfy the constraints specified by an Amazon service.

" + } + }, + "documentation":"

The input fails to satisfy the constraints specified by a service.

", + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + } + }, + "documentation":"

Backup Search

Backup Search is the recovery point and item level search for Backup.

For additional information, see:

" +} diff --git a/botocore/data/backupsearch/2018-05-10/waiters-2.json b/botocore/data/backupsearch/2018-05-10/waiters-2.json new file mode 100644 index 0000000000..13f60ee66b --- /dev/null +++ b/botocore/data/backupsearch/2018-05-10/waiters-2.json @@ -0,0 +1,5 @@ +{ + "version": 2, + "waiters": { + } +} diff --git a/botocore/data/batch/2016-08-10/service-2.json b/botocore/data/batch/2016-08-10/service-2.json index bdb73b7e2f..2f2550a1f2 100644 --- a/botocore/data/batch/2016-08-10/service-2.json +++ b/botocore/data/batch/2016-08-10/service-2.json @@ -1742,6 +1742,11 @@ }, "documentation":"

The properties for a task definition that describes the container and volume definitions of an Amazon ECS task. You can specify which Docker images to use, the required resources, and other configurations related to launching the task definition through an Amazon ECS service or task.

" }, + "EksAnnotationsMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"} + }, "EksAttemptContainerDetail":{ "type":"structure", "members":{ @@ -2037,6 +2042,10 @@ "shape":"String", "documentation":"

The path on the container where the volume is mounted.

" }, + "subPath":{ + "shape":"String", + "documentation":"

A sub-path inside the referenced volume instead of its root.

" + }, "readOnly":{ "shape":"Boolean", "documentation":"

If this value is true, the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is false.

" @@ -2092,9 +2101,32 @@ "labels":{ "shape":"EksLabelsMap", "documentation":"

Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object.

" + }, + "annotations":{ + "shape":"EksAnnotationsMap", + "documentation":"

Key-value pairs used to attach arbitrary, non-identifying metadata to Kubernetes objects. Valid annotation keys have two segments: an optional prefix and a name, separated by a slash (/).

Annotation values must be 255 characters or less.

Annotations can be added or modified at any time. Each resource can have multiple annotations.

" + }, + "namespace":{ + "shape":"String", + "documentation":"

The namespace of the Amazon EKS cluster. In Kubernetes, namespaces provide a mechanism for isolating groups of resources within a single cluster. Names of resources need to be unique within a namespace, but not across namespaces. Batch places Batch Job pods in this namespace. If this field is provided, the value can't be empty or null. It must meet the following requirements:

For more information, see Namespaces in the Kubernetes documentation. This namespace can be different from the kubernetesNamespace set in the compute environment's EksConfiguration, but must have identical role-based access control (RBAC) roles as the compute environment's kubernetesNamespace. For multi-node parallel jobs, the same value must be provided across all the node ranges.

" } }, - "documentation":"

Describes and uniquely identifies Kubernetes resources. For example, the compute environment that a pod runs in or the jobID for a job running in the pod. For more information, see Understanding Kubernetes Objects in the Kubernetes documentation.

" + "documentation":"

Describes and uniquely identifies Kubernetes resources. For example, the compute environment that a pod runs in or the jobID for a job running in the pod. For more information, see Understanding Kubernetes Objects in the Kubernetes documentation.

" + }, + "EksPersistentVolumeClaim":{ + "type":"structure", + "required":["claimName"], + "members":{ + "claimName":{ + "shape":"String", + "documentation":"

The name of the persistentVolumeClaim bounded to a persistentVolume. For more information, see Persistent Volume Claims in the Kubernetes documentation.

" + }, + "readOnly":{ + "shape":"Boolean", + "documentation":"

An optional boolean value indicating if the mount is read only. Default is false. For more information, see Read Only Mounts in the Kubernetes documentation.

" + } + }, + "documentation":"

A persistentVolumeClaim volume is used to mount a PersistentVolume into a Pod. PersistentVolumeClaims are a way for users to \"claim\" durable storage without knowing the details of the particular cloud environment. See the information about PersistentVolumes in the Kubernetes documentation.

" }, "EksPodProperties":{ "type":"structure", @@ -2275,6 +2307,10 @@ "secret":{ "shape":"EksSecret", "documentation":"

Specifies the configuration of a Kubernetes secret volume. For more information, see secret in the Kubernetes documentation.

" + }, + "persistentVolumeClaim":{ + "shape":"EksPersistentVolumeClaim", + "documentation":"

Specifies the configuration of a Kubernetes persistentVolumeClaim bounded to a persistentVolume. For more information, see Persistent Volume Claims in the Kubernetes documentation.

" } }, "documentation":"

Specifies an Amazon EKS volume for a job definition.

" diff --git a/botocore/data/cleanroomsml/2023-09-06/service-2.json b/botocore/data/cleanroomsml/2023-09-06/service-2.json index f0878885bc..d9804c45da 100644 --- a/botocore/data/cleanroomsml/2023-09-06/service-2.json +++ b/botocore/data/cleanroomsml/2023-09-06/service-2.json @@ -1094,7 +1094,8 @@ "sqlParameters":{ "shape":"ProtectedQuerySQLParameters", "documentation":"

The protected SQL query parameters.

" - } + }, + "sqlComputeConfiguration":{"shape":"ComputeConfiguration"} }, "documentation":"

Defines the Amazon S3 bucket where the seed audience for the generating audience is stored.

" }, @@ -5419,7 +5420,7 @@ }, "dataSource":{ "shape":"ModelInferenceDataSource", - "documentation":"

Defines he data source that is used for the trained model inference job.

" + "documentation":"

Defines the data source that is used for the trained model inference job.

" }, "description":{ "shape":"ResourceDescription", diff --git a/botocore/data/cloudfront/2020-05-31/service-2.json b/botocore/data/cloudfront/2020-05-31/service-2.json index 6f29f51d32..450b373251 100644 --- a/botocore/data/cloudfront/2020-05-31/service-2.json +++ b/botocore/data/cloudfront/2020-05-31/service-2.json @@ -4519,11 +4519,11 @@ }, "OriginReadTimeout":{ "shape":"integer", - "documentation":"

Specifies how long, in seconds, CloudFront waits for a response from the origin. This is also known as the origin response timeout. The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don't specify otherwise) is 30 seconds.

For more information, see Origin Response Timeout in the Amazon CloudFront Developer Guide.

" + "documentation":"

Specifies how long, in seconds, CloudFront waits for a response from the origin. This is also known as the origin response timeout. The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don't specify otherwise) is 30 seconds.

For more information, see Response timeout (custom origins only) in the Amazon CloudFront Developer Guide.

" }, "OriginKeepaliveTimeout":{ "shape":"integer", - "documentation":"

Specifies how long, in seconds, CloudFront persists its connection to the origin. The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don't specify otherwise) is 5 seconds.

For more information, see Origin Keep-alive Timeout in the Amazon CloudFront Developer Guide.

" + "documentation":"

Specifies how long, in seconds, CloudFront persists its connection to the origin. The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don't specify otherwise) is 5 seconds.

For more information, see Keep-alive timeout (custom origins only) in the Amazon CloudFront Developer Guide.

" } }, "documentation":"

A custom origin. A custom origin is any origin that is not an Amazon S3 bucket, with one exception. An Amazon S3 bucket that is configured with static website hosting is a custom origin.

" @@ -5113,7 +5113,7 @@ }, "DefaultRootObject":{ "shape":"string", - "documentation":"

The object that you want CloudFront to request from your origin (for example, index.html) when a viewer requests the root URL for your distribution (https://www.example.com) instead of an object in your distribution (https://www.example.com/product-description.html). Specifying a default root object avoids exposing the contents of your distribution.

Specify only the object name, for example, index.html. Don't add a / before the object name.

If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element.

To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element.

To replace the default root object, update the distribution configuration and specify the new object.

For more information about the default root object, see Creating a Default Root Object in the Amazon CloudFront Developer Guide.

" + "documentation":"

When a viewer requests the root URL for your distribution, the default root object is the object that you want CloudFront to request from your origin. For example, if your root URL is https://www.example.com, you can specify CloudFront to return the index.html file as the default root object. You can specify a default root object so that viewers see a specific file or object, instead of another object in your distribution (for example, https://www.example.com/product-description.html). A default root object avoids exposing the contents of your distribution.

You can specify the object name or a path to the object name (for example, index.html or exampleFolderName/index.html). Your string can't begin with a forward slash (/). Only specify the object name or the path to the object.

If you don't want to specify a default root object when you create a distribution, include an empty DefaultRootObject element.

To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element.

To replace the default root object, update the distribution configuration and specify the new object.

For more information about the default root object, see Specify a default root object in the Amazon CloudFront Developer Guide.

" }, "Origins":{ "shape":"Origins", @@ -12865,6 +12865,14 @@ "VpcOriginId":{ "shape":"string", "documentation":"

The VPC origin ID.

" + }, + "OriginReadTimeout":{ + "shape":"integer", + "documentation":"

Specifies how long, in seconds, CloudFront waits for a response from the origin. This is also known as the origin response timeout. The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don't specify otherwise) is 30 seconds.

For more information, see Response timeout (custom origins only) in the Amazon CloudFront Developer Guide.

" + }, + "OriginKeepaliveTimeout":{ + "shape":"integer", + "documentation":"

Specifies how long, in seconds, CloudFront persists its connection to the origin. The minimum timeout is 1 second, the maximum is 60 seconds, and the default (if you don't specify otherwise) is 5 seconds.

For more information, see Keep-alive timeout (custom origins only) in the Amazon CloudFront Developer Guide.

" } }, "documentation":"

An Amazon CloudFront VPC origin configuration.

" diff --git a/botocore/data/codepipeline/2015-07-09/service-2.json b/botocore/data/codepipeline/2015-07-09/service-2.json index 9ae1256b9b..f3b79d28d2 100644 --- a/botocore/data/codepipeline/2015-07-09/service-2.json +++ b/botocore/data/codepipeline/2015-07-09/service-2.json @@ -342,7 +342,7 @@ {"shape":"ValidationException"}, {"shape":"InvalidNextTokenException"} ], - "documentation":"

Lists the rules for the condition.

" + "documentation":"

Lists the rules for the condition. For more information about conditions, see Stage conditions. For more information about rules, see the CodePipeline rule reference.

" }, "ListTagsForResource":{ "name":"ListTagsForResource", @@ -1394,7 +1394,7 @@ "members":{ "category":{ "shape":"ActionCategory", - "documentation":"

A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the following values.

" + "documentation":"

A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the following values.

" }, "owner":{ "shape":"ActionOwner", @@ -1848,7 +1848,7 @@ "documentation":"

The rules that make up the condition.

" } }, - "documentation":"

The condition for the stage. A condition is made up of the rules and the result for the condition.

" + "documentation":"

The condition for the stage. A condition is made up of the rules and the result for the condition. For more information about conditions, see Stage conditions. For more information about rules, see the CodePipeline rule reference.

" }, "ConditionExecution":{ "type":"structure", @@ -2375,7 +2375,7 @@ "members":{ "category":{ "shape":"ActionCategory", - "documentation":"

Defines what kind of action can be taken in the stage. The following are the valid values:

" + "documentation":"

Defines what kind of action can be taken in the stage. The following are the valid values:

" }, "owner":{ "shape":"ActionTypeOwner", @@ -4426,7 +4426,7 @@ "members":{ "name":{ "shape":"RuleName", - "documentation":"

The name of the rule that is created for the condition, such as CheckAllResults.

" + "documentation":"

The name of the rule that is created for the condition, such as VariableCheck.

" }, "ruleTypeId":{ "shape":"RuleTypeId", @@ -4436,6 +4436,10 @@ "shape":"RuleConfigurationMap", "documentation":"

The action configuration fields for the rule.

" }, + "commands":{ + "shape":"CommandList", + "documentation":"

The shell commands to run with your commands rule in CodePipeline. All commands are supported except multi-line formats. While CodeBuild logs and permissions are used, you do not need to create any resources in CodeBuild.

Using compute time for this action will incur separate charges in CodeBuild.

" + }, "inputArtifacts":{ "shape":"InputArtifactList", "documentation":"

The input artifacts fields for the rule, such as specifying an input file for the rule.

" @@ -4453,7 +4457,7 @@ "documentation":"

The action timeout for the rule.

" } }, - "documentation":"

Represents information about the rule to be created for an associated condition. An example would be creating a new rule for an entry condition, such as a rule that checks for a test result before allowing the run to enter the deployment stage.

" + "documentation":"

Represents information about the rule to be created for an associated condition. An example would be creating a new rule for an entry condition, such as a rule that checks for a test result before allowing the run to enter the deployment stage. For more information about conditions, see Stage conditions. For more information about rules, see the CodePipeline rule reference.

" }, "RuleDeclarationList":{ "type":"list", diff --git a/botocore/data/ecs/2014-11-13/service-2.json b/botocore/data/ecs/2014-11-13/service-2.json index 8f5a1fdf9a..71db4e50d2 100644 --- a/botocore/data/ecs/2014-11-13/service-2.json +++ b/botocore/data/ecs/2014-11-13/service-2.json @@ -2646,7 +2646,7 @@ }, "maximumPercent":{ "shape":"BoxedInteger", - "documentation":"

If a service is using the rolling update (ECS) deployment type, the maximumPercent parameter represents an upper limit on the number of your service's tasks that are allowed in the RUNNING or PENDING state during a deployment, as a percentage of the desiredCount (rounded down to the nearest integer). This parameter enables you to define the deployment batch size. For example, if your service is using the REPLICA service scheduler and has a desiredCount of four tasks and a maximumPercent value of 200%, the scheduler may start four new tasks before stopping the four older tasks (provided that the cluster resources required to do this are available). The default maximumPercent value for a service using the REPLICA service scheduler is 200%.

The Amazon ECS scheduler uses this parameter to replace unhealthy tasks by starting replacement tasks first and then stopping the unhealthy tasks, as long as cluster resources for starting replacement tasks are available. For more information about how the scheduler replaces unhealthy tasks, see Amazon ECS services.

If a service is using either the blue/green (CODE_DEPLOY) or EXTERNAL deployment types, and tasks in the service use the EC2 launch type, the maximum percent value is set to the default value. The maximum percent value is used to define the upper limit on the number of the tasks in the service that remain in the RUNNING state while the container instances are in the DRAINING state.

You can't specify a custom maximumPercent value for a service that uses either the blue/green (CODE_DEPLOY) or EXTERNAL deployment types and has tasks that use the EC2 launch type.

If the tasks in the service use the Fargate launch type, the maximum percent value is not used, although it is returned when describing your service.

" + "documentation":"

If a service is using the rolling update (ECS) deployment type, the maximumPercent parameter represents an upper limit on the number of your service's tasks that are allowed in the RUNNING or PENDING state during a deployment, as a percentage of the desiredCount (rounded down to the nearest integer). This parameter enables you to define the deployment batch size. For example, if your service is using the REPLICA service scheduler and has a desiredCount of four tasks and a maximumPercent value of 200%, the scheduler may start four new tasks before stopping the four older tasks (provided that the cluster resources required to do this are available). The default maximumPercent value for a service using the REPLICA service scheduler is 200%.

The Amazon ECS scheduler uses this parameter to replace unhealthy tasks by starting replacement tasks first and then stopping the unhealthy tasks, as long as cluster resources for starting replacement tasks are available. For more information about how the scheduler replaces unhealthy tasks, see Amazon ECS services.

If a service is using either the blue/green (CODE_DEPLOY) or EXTERNAL deployment types, and tasks in the service use the EC2 launch type, the maximum percent value is set to the default value. The maximum percent value is used to define the upper limit on the number of the tasks in the service that remain in the RUNNING state while the container instances are in the DRAINING state.

You can't specify a custom maximumPercent value for a service that uses either the blue/green (CODE_DEPLOY) or EXTERNAL deployment types and has tasks that use the EC2 launch type.

If the service uses either the blue/green (CODE_DEPLOY) or EXTERNAL deployment types, and the tasks in the service use the Fargate launch type, the maximum percent value is not used. The value is still returned when describing your service.

" }, "minimumHealthyPercent":{ "shape":"BoxedInteger", @@ -3886,7 +3886,7 @@ }, "cluster":{ "shape":"String", - "documentation":"

The cluster that hosts the service. This can either be the cluster name or ARN. Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performanceIf you don't specify a cluster, default is used.

" + "documentation":"

The cluster that hosts the service. This can either be the cluster name or ARN. Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. If you don't specify a cluster, default is used.

" }, "status":{ "shape":"ServiceDeploymentStatusList", @@ -4169,7 +4169,7 @@ }, "options":{ "shape":"LogConfigurationOptionsMap", - "documentation":"

The configuration options to send to the log driver.

The options you can specify depend on the log driver. Some of the options you can specify when you use the awslogs log driver to route logs to Amazon CloudWatch include the following:

awslogs-create-group

Required: No

Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false.

Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group.

awslogs-region

Required: Yes

Specify the Amazon Web Services Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option.

awslogs-group

Required: Yes

Make sure to specify a log group that the awslogs log driver sends its log streams to.

awslogs-stream-prefix

Required: Yes, when using the Fargate launch type.Optional for the EC2 launch type, required for the Fargate launch type.

Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id.

If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option.

For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to.

You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console.

awslogs-datetime-format

Required: No

This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages.

One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry.

For more information, see awslogs-datetime-format.

You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options.

Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance.

awslogs-multiline-pattern

Required: No

This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages.

For more information, see awslogs-multiline-pattern.

This option is ignored if awslogs-datetime-format is also configured.

You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options.

Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance.

mode

Required: No

Valid values: non-blocking | blocking

This option defines the delivery mode of log messages from the container to CloudWatch Logs. The delivery mode you choose affects application availability when the flow of logs from container to CloudWatch is interrupted.

If you use the blocking mode and the flow of logs to CloudWatch is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure.

If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent to CloudWatch. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver.

max-buffer-size

Required: No

Default value: 1m

When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost.

To route logs using the splunk log router, you need to specify a splunk-token and a splunk-url.

When you use the awsfirelens log router to route logs to an Amazon Web Services Service or Amazon Web Services Partner Network destination for log storage and analytics, you can set the log-driver-buffer-limit option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.

Other options you can specify when using awsfirelens to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the Amazon Web Services Region with region and a name for the log stream with delivery_stream.

When you export logs to Amazon Kinesis Data Streams, you can specify an Amazon Web Services Region with region and a data stream name with stream.

When you export logs to Amazon OpenSearch Service, you can specify options like Name, Host (OpenSearch Service endpoint without protocol), Port, Index, Type, Aws_auth, Aws_region, Suppress_Type_Name, and tls.

When you export logs to Amazon S3, you can specify the bucket using the bucket option. You can also specify region, total_file_size, upload_timeout, and use_put_object as options.

This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'

" + "documentation":"

The configuration options to send to the log driver.

The options you can specify depend on the log driver. Some of the options you can specify when you use the awslogs log driver to route logs to Amazon CloudWatch include the following:

awslogs-create-group

Required: No

Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false.

Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group.

awslogs-region

Required: Yes

Specify the Amazon Web Services Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option.

awslogs-group

Required: Yes

Make sure to specify a log group that the awslogs log driver sends its log streams to.

awslogs-stream-prefix

Required: Yes, when using the Fargate launch type.Optional for the EC2 launch type, required for the Fargate launch type.

Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id.

If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option.

For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to.

You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console.

awslogs-datetime-format

Required: No

This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages.

One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry.

For more information, see awslogs-datetime-format.

You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options.

Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance.

awslogs-multiline-pattern

Required: No

This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages.

For more information, see awslogs-multiline-pattern.

This option is ignored if awslogs-datetime-format is also configured.

You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options.

Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance.

mode

Required: No

Valid values: non-blocking | blocking

This option defines the delivery mode of log messages from the container to CloudWatch Logs. The delivery mode you choose affects application availability when the flow of logs from container to CloudWatch is interrupted.

If you use the blocking mode and the flow of logs to CloudWatch is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure.

If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent to CloudWatch. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver.

max-buffer-size

Required: No

Default value: 1m

When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost.

To route logs using the splunk log router, you need to specify a splunk-token and a splunk-url.

When you use the awsfirelens log router to route logs to an Amazon Web Services Service or Amazon Web Services Partner Network destination for log storage and analytics, you can set the log-driver-buffer-limit option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.

Other options you can specify when using awsfirelens to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the Amazon Web Services Region with region and a name for the log stream with delivery_stream.

When you export logs to Amazon Kinesis Data Streams, you can specify an Amazon Web Services Region with region and a data stream name with stream.

When you export logs to Amazon OpenSearch Service, you can specify options like Name, Host (OpenSearch Service endpoint without protocol), Port, Index, Type, Aws_auth, Aws_region, Suppress_Type_Name, and tls. For more information, see Under the hood: FireLens for Amazon ECS Tasks.

When you export logs to Amazon S3, you can specify the bucket using the bucket option. You can also specify region, total_file_size, upload_timeout, and use_put_object as options.

This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'

" }, "secretOptions":{ "shape":"SecretList", @@ -4894,6 +4894,10 @@ "runtimePlatform":{ "shape":"RuntimePlatform", "documentation":"

The operating system that your tasks definitions run on. A platform family is specified only for tasks using the Fargate launch type.

" + }, + "enableFaultInjection":{ + "shape":"BoxedBoolean", + "documentation":"

Enables fault injection when you register your task definition and allows for fault injection requests to be accepted from the task's containers. The default value is false.

" } } }, @@ -6540,6 +6544,10 @@ "ephemeralStorage":{ "shape":"EphemeralStorage", "documentation":"

The ephemeral storage settings to use for tasks run with the task definition.

" + }, + "enableFaultInjection":{ + "shape":"BoxedBoolean", + "documentation":"

Enables fault injection and allows for fault injection requests to be accepted from the task's containers. The default value is false.

" } }, "documentation":"

The details of a task definition which describes the container and volume definitions of an Amazon Elastic Container Service task. You can specify which Docker images to use, the required resources, and other configurations related to launching the task definition through an Amazon ECS service or task.

" diff --git a/botocore/data/endpoints.json b/botocore/data/endpoints.json index 05a28b33ff..1c7d34cccf 100644 --- a/botocore/data/endpoints.json +++ b/botocore/data/endpoints.json @@ -2229,6 +2229,12 @@ "tags" : [ "dualstack" ] } ] }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "athena.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "athena-fips.ca-central-1.amazonaws.com", @@ -10698,37 +10704,81 @@ }, "endpoints" : { "af-south-1" : { - "hostname" : "internetmonitor.af-south-1.api.aws" + "hostname" : "internetmonitor.af-south-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-east-1" : { - "hostname" : "internetmonitor.ap-east-1.api.aws" + "hostname" : "internetmonitor.ap-east-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-northeast-1" : { - "hostname" : "internetmonitor.ap-northeast-1.api.aws" + "hostname" : "internetmonitor.ap-northeast-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-northeast-2" : { - "hostname" : "internetmonitor.ap-northeast-2.api.aws" + "hostname" : "internetmonitor.ap-northeast-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-northeast-3" : { - "hostname" : "internetmonitor.ap-northeast-3.api.aws" + "hostname" : "internetmonitor.ap-northeast-3.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-south-1" : { - "hostname" : "internetmonitor.ap-south-1.api.aws" + "hostname" : "internetmonitor.ap-south-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-south-2" : { - "hostname" : "internetmonitor.ap-south-2.api.aws" + "hostname" : "internetmonitor.ap-south-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-1" : { - "hostname" : "internetmonitor.ap-southeast-1.api.aws" + "hostname" : "internetmonitor.ap-southeast-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-2" : { - "hostname" : "internetmonitor.ap-southeast-2.api.aws" + "hostname" : "internetmonitor.ap-southeast-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-3" : { - "hostname" : "internetmonitor.ap-southeast-3.api.aws" + "hostname" : "internetmonitor.ap-southeast-3.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-4" : { - "hostname" : "internetmonitor.ap-southeast-4.api.aws" + "hostname" : "internetmonitor.ap-southeast-4.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-5" : { "hostname" : "internetmonitor.ap-southeast-5.api.aws" @@ -10738,52 +10788,108 @@ "variants" : [ { "hostname" : "internetmonitor-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-west-1" : { "hostname" : "internetmonitor.ca-west-1.api.aws" }, "eu-central-1" : { - "hostname" : "internetmonitor.eu-central-1.api.aws" + "hostname" : "internetmonitor.eu-central-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-central-2" : { - "hostname" : "internetmonitor.eu-central-2.api.aws" + "hostname" : "internetmonitor.eu-central-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-north-1" : { - "hostname" : "internetmonitor.eu-north-1.api.aws" + "hostname" : "internetmonitor.eu-north-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-south-1" : { - "hostname" : "internetmonitor.eu-south-1.api.aws" + "hostname" : "internetmonitor.eu-south-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-south-2" : { - "hostname" : "internetmonitor.eu-south-2.api.aws" + "hostname" : "internetmonitor.eu-south-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-west-1" : { - "hostname" : "internetmonitor.eu-west-1.api.aws" + "hostname" : "internetmonitor.eu-west-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-west-2" : { - "hostname" : "internetmonitor.eu-west-2.api.aws" + "hostname" : "internetmonitor.eu-west-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-west-3" : { - "hostname" : "internetmonitor.eu-west-3.api.aws" + "hostname" : "internetmonitor.eu-west-3.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] }, "il-central-1" : { "hostname" : "internetmonitor.il-central-1.api.aws" }, "me-central-1" : { - "hostname" : "internetmonitor.me-central-1.api.aws" + "hostname" : "internetmonitor.me-central-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "me-south-1" : { - "hostname" : "internetmonitor.me-south-1.api.aws" + "hostname" : "internetmonitor.me-south-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "sa-east-1" : { - "hostname" : "internetmonitor.sa-east-1.api.aws" + "hostname" : "internetmonitor.sa-east-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "us-east-1" : { "hostname" : "internetmonitor.us-east-1.api.aws", "variants" : [ { "hostname" : "internetmonitor-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { @@ -10791,6 +10897,12 @@ "variants" : [ { "hostname" : "internetmonitor-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { @@ -10798,6 +10910,12 @@ "variants" : [ { "hostname" : "internetmonitor-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { @@ -10805,6 +10923,12 @@ "variants" : [ { "hostname" : "internetmonitor-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -12392,28 +12516,138 @@ }, "lakeformation" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ap-southeast-5" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "lakeformation.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "lakeformation.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "lakeformation.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "lakeformation.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "lakeformation.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "lakeformation.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "lakeformation.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "lakeformation.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "lakeformation.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "lakeformation.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "lakeformation.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "lakeformation.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "lakeformation.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "lakeformation.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "lakeformation.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "lakeformation.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "lakeformation.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -12442,32 +12676,76 @@ "deprecated" : true, "hostname" : "lakeformation-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "lakeformation.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "lakeformation.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "lakeformation.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "lakeformation.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "lakeformation-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "lakeformation-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "lakeformation-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "lakeformation-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -22318,10 +22596,12 @@ "ap-southeast-3" : { }, "ap-southeast-4" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -24505,8 +24785,18 @@ }, "lakeformation" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "lakeformation.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "lakeformation.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "lambda" : { diff --git a/botocore/data/m2/2021-04-28/service-2.json b/botocore/data/m2/2021-04-28/service-2.json index f42b9c245d..129a76a80d 100644 --- a/botocore/data/m2/2021-04-28/service-2.json +++ b/botocore/data/m2/2021-04-28/service-2.json @@ -1228,6 +1228,10 @@ "shape":"EntityName", "documentation":"

The name of the runtime environment. Must be unique within the account.

" }, + "networkType":{ + "shape":"NetworkType", + "documentation":"

The network type required for the runtime environment.

" + }, "preferredMaintenanceWindow":{ "shape":"String50", "documentation":"

Configures the maintenance window that you want for the runtime environment. The maintenance window must have the format ddd:hh24:mi-ddd:hh24:mi and must be less than 24 hours. The following two examples are valid maintenance windows: sun:23:45-mon:00:15 or sat:01:00-sat:03:00.

If you do not provide a value, a random system-generated value will be assigned.

" @@ -1760,6 +1764,10 @@ "shape":"EntityName", "documentation":"

The name of the runtime environment.

" }, + "networkType":{ + "shape":"NetworkType", + "documentation":"

The network type supported by the runtime environment.

" + }, "status":{ "shape":"EnvironmentLifecycle", "documentation":"

The status of the runtime environment

" @@ -2368,6 +2376,10 @@ "shape":"EntityName", "documentation":"

The name of the runtime environment. Must be unique within the account.

" }, + "networkType":{ + "shape":"NetworkType", + "documentation":"

The network type supported by the runtime environment.

" + }, "pendingMaintenance":{ "shape":"PendingMaintenance", "documentation":"

Indicates the pending maintenance scheduled on this environment.

" @@ -3036,6 +3048,13 @@ "max":2000, "min":1 }, + "NetworkType":{ + "type":"string", + "enum":[ + "ipv4", + "dual" + ] + }, "NextToken":{ "type":"string", "pattern":"^\\S{1,2000}$" diff --git a/botocore/data/synthetics/2017-10-11/service-2.json b/botocore/data/synthetics/2017-10-11/service-2.json index e241625299..dc279bb736 100644 --- a/botocore/data/synthetics/2017-10-11/service-2.json +++ b/botocore/data/synthetics/2017-10-11/service-2.json @@ -513,7 +513,7 @@ "type":"string", "max":2048, "min":1, - "pattern":"arn:(aws[a-zA-Z-]*)?:synthetics:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\\d{1}:\\d{12}:canary:[0-9a-z_\\-]{1,255}" + "pattern":"arn:(aws[a-zA-Z-]*)?:synthetics:[a-z]{2,4}(-[a-z]{2,4})?-[a-z]+-\\d{1}:\\d{12}:canary:[0-9a-z_\\-]{1,255}" }, "CanaryCodeInput":{ "type":"structure", @@ -1093,7 +1093,7 @@ "type":"string", "max":2048, "min":1, - "pattern":"arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?" + "pattern":"arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2,4}(-[a-z]{2,4})?-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?" }, "GetCanaryRequest":{ "type":"structure", @@ -1204,7 +1204,7 @@ "type":"string", "max":128, "min":1, - "pattern":"arn:(aws[a-zA-Z-]*)?:synthetics:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\\d{1}:\\d{12}:group:[0-9a-z]+" + "pattern":"arn:(aws[a-zA-Z-]*)?:synthetics:[a-z]{2,4}(-[a-z]{2,4})?-[a-z]+-\\d{1}:\\d{12}:group:[0-9a-z]+" }, "GroupIdentifier":{ "type":"string", @@ -1260,7 +1260,7 @@ "type":"string", "max":2048, "min":1, - "pattern":"arn:(aws[a-zA-Z-]*)?:kms:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\\d{1}:\\d{12}:key/[\\w\\-\\/]+" + "pattern":"arn:(aws[a-zA-Z-]*)?:kms:[a-z]{2,4}(-[a-z]{2,4})?-[a-z]+-\\d{1}:\\d{12}:key/[\\w\\-\\/]+" }, "ListAssociatedGroupsRequest":{ "type":"structure", @@ -1446,7 +1446,7 @@ "type":"string", "max":2048, "min":1, - "pattern":"arn:(aws[a-zA-Z-]*)?:synthetics:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\\d{1}:\\d{12}:(canary|group):[0-9a-z_\\-]+" + "pattern":"arn:(aws[a-zA-Z-]*)?:synthetics:[a-z]{2,4}(-[a-z]{2,4})?-[a-z]+-\\d{1}:\\d{12}:(canary|group):[0-9a-z_\\-]+" }, "ResourceList":{ "type":"list", @@ -1755,7 +1755,7 @@ }, "BaseCanaryRunId":{ "shape":"String", - "documentation":"

Specifies which canary run to use the screenshots from as the baseline for future visual monitoring with this canary. Valid values are nextrun to use the screenshots from the next run after this update is made, lastrun to use the screenshots from the most recent run before this update was made, or the value of Id in the CanaryRun from any past run of this canary.

" + "documentation":"

Specifies which canary run to use the screenshots from as the baseline for future visual monitoring with this canary. Valid values are nextrun to use the screenshots from the next run after this update is made, lastrun to use the screenshots from the most recent run before this update was made, or the value of Id in the CanaryRun from a run of this a canary in the past 31 days. If you specify the Id of a canary run older than 31 days, the operation returns a 400 validation exception error..

" } }, "documentation":"

An object that specifies what screenshots to use as a baseline for visual monitoring by this canary. It can optionally also specify parts of the screenshots to ignore during the visual monitoring comparison.

Visual monitoring is supported only on canaries running the syn-puppeteer-node-3.2 runtime or later. For more information, see Visual monitoring and Visual monitoring blueprint

" @@ -1784,6 +1784,10 @@ "SecurityGroupIds":{ "shape":"SecurityGroupIds", "documentation":"

The IDs of the security groups for this canary.

" + }, + "Ipv6AllowedForDualStack":{ + "shape":"NullableBoolean", + "documentation":"

Set this to true to allow outbound IPv6 traffic on VPC canaries that are connected to dual-stack subnets. The default is false

" } }, "documentation":"

If this canary is to test an endpoint in a VPC, this structure contains information about the subnets and security groups of the VPC endpoint. For more information, see Running a Canary in a VPC.

" @@ -1802,6 +1806,10 @@ "SecurityGroupIds":{ "shape":"SecurityGroupIds", "documentation":"

The IDs of the security groups for this canary.

" + }, + "Ipv6AllowedForDualStack":{ + "shape":"NullableBoolean", + "documentation":"

Indicates whether this canary allows outbound IPv6 traffic if it is connected to dual-stack subnets.

" } }, "documentation":"

If this canary is to test an endpoint in a VPC, this structure contains information about the subnets and security groups of the VPC endpoint. For more information, see Running a Canary in a VPC.

" diff --git a/docs/source/conf.py b/docs/source/conf.py index 5349359f96..25e3bb5e4a 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -59,7 +59,7 @@ # The short X.Y version. version = '1.35.' # The full version, including alpha/beta/rc tags. -release = '1.35.82' +release = '1.35.83' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/tests/functional/endpoint-rules/account/endpoint-tests-1.json b/tests/functional/endpoint-rules/account/endpoint-tests-1.json index ac318cb0f9..640b9eadf6 100644 --- a/tests/functional/endpoint-rules/account/endpoint-tests-1.json +++ b/tests/functional/endpoint-rules/account/endpoint-tests-1.json @@ -1,31 +1,50 @@ { "testCases": [ { - "documentation": "For region aws-global with FIPS disabled and DualStack disabled", + "documentation": "For custom endpoint with region not set and fips disabled", "expect": { "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "account", - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://account.us-east-1.amazonaws.com" + "url": "https://example.com" } }, "params": { - "Region": "aws-global", + "Endpoint": "https://example.com", + "UseFIPS": false + } + }, + { + "documentation": "For custom endpoint with fips enabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Endpoint": "https://example.com", + "UseFIPS": true + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Endpoint": "https://example.com", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": true } }, { "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1" + } + ] + }, "url": "https://account-fips.us-east-1.api.aws" } }, @@ -39,6 +58,14 @@ "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1" + } + ] + }, "url": "https://account-fips.us-east-1.amazonaws.com" } }, @@ -52,6 +79,14 @@ "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1" + } + ] + }, "url": "https://account.us-east-1.api.aws" } }, @@ -69,7 +104,6 @@ "authSchemes": [ { "name": "sigv4", - "signingName": "account", "signingRegion": "us-east-1" } ] @@ -84,75 +118,76 @@ } }, { - "documentation": "For region aws-cn-global with FIPS disabled and DualStack disabled", + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "account", "signingRegion": "cn-northwest-1" } ] }, - "url": "https://account.cn-northwest-1.amazonaws.com.cn" + "url": "https://account-fips.cn-northwest-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "aws-cn-global", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://account-fips.cn-north-1.api.amazonwebservices.com.cn" - } - }, - "params": { - "Region": "cn-north-1", + "Region": "cn-northwest-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://account-fips.cn-north-1.amazonaws.com.cn" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "cn-northwest-1" + } + ] + }, + "url": "https://account-fips.cn-northwest-1.amazonaws.com.cn" } }, "params": { - "Region": "cn-north-1", + "Region": "cn-northwest-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://account.cn-north-1.api.amazonwebservices.com.cn" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "cn-northwest-1" + } + ] + }, + "url": "https://account.cn-northwest-1.api.amazonwebservices.com.cn" } }, "params": { - "Region": "cn-north-1", + "Region": "cn-northwest-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "account", "signingRegion": "cn-northwest-1" } ] @@ -161,59 +196,91 @@ } }, "params": { - "Region": "cn-north-1", + "Region": "cn-northwest-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://account-fips.us-gov-east-1.api.aws" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } + ] + }, + "url": "https://account-fips.us-gov-west-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-gov-west-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://account-fips.us-gov-east-1.amazonaws.com" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } + ] + }, + "url": "https://account-fips.us-gov-west-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-gov-west-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://account.us-gov-east-1.api.aws" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } + ] + }, + "url": "https://account.us-gov-west-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-gov-west-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://account.us-gov-east-1.amazonaws.com" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } + ] + }, + "url": "https://account.us-gov-west-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-gov-west-1", "UseFIPS": false, "UseDualStack": false } @@ -233,6 +300,14 @@ "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-iso-east-1" + } + ] + }, "url": "https://account-fips.us-iso-east-1.c2s.ic.gov" } }, @@ -257,6 +332,14 @@ "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-iso-east-1" + } + ] + }, "url": "https://account.us-iso-east-1.c2s.ic.gov" } }, @@ -281,6 +364,14 @@ "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isob-east-1" + } + ] + }, "url": "https://account-fips.us-isob-east-1.sc2s.sgov.gov" } }, @@ -305,6 +396,14 @@ "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isob-east-1" + } + ] + }, "url": "https://account.us-isob-east-1.sc2s.sgov.gov" } }, @@ -315,54 +414,131 @@ } }, { - "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "documentation": "For region eu-isoe-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "eu-isoe-west-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-isoe-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://example.com" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "eu-isoe-west-1" + } + ] + }, + "url": "https://account-fips.eu-isoe-west-1.cloud.adc-e.uk" } }, "params": { - "Region": "us-east-1", + "Region": "eu-isoe-west-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-isoe-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "eu-isoe-west-1", "UseFIPS": false, - "UseDualStack": false, - "Endpoint": "https://example.com" + "UseDualStack": true } }, { - "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "documentation": "For region eu-isoe-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://example.com" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "eu-isoe-west-1" + } + ] + }, + "url": "https://account.eu-isoe-west-1.cloud.adc-e.uk" } }, "params": { + "Region": "eu-isoe-west-1", "UseFIPS": false, - "UseDualStack": false, - "Endpoint": "https://example.com" + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "documentation": "For region us-isof-south-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "Region": "us-east-1", + "Region": "us-isof-south-1", "UseFIPS": true, - "UseDualStack": false, - "Endpoint": "https://example.com" + "UseDualStack": true } }, { - "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "documentation": "For region us-isof-south-1 with FIPS enabled and DualStack disabled", "expect": { - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isof-south-1" + } + ] + }, + "url": "https://account-fips.us-isof-south-1.csp.hci.ic.gov" + } }, "params": { - "Region": "us-east-1", + "Region": "us-isof-south-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isof-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isof-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isof-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isof-south-1" + } + ] + }, + "url": "https://account.us-isof-south-1.csp.hci.ic.gov" + } + }, + "params": { + "Region": "us-isof-south-1", "UseFIPS": false, - "UseDualStack": true, - "Endpoint": "https://example.com" + "UseDualStack": false } }, { diff --git a/tests/functional/endpoint-rules/backupsearch/endpoint-tests-1.json b/tests/functional/endpoint-rules/backupsearch/endpoint-tests-1.json new file mode 100644 index 0000000000..5986f9074b --- /dev/null +++ b/tests/functional/endpoint-rules/backupsearch/endpoint-tests-1.json @@ -0,0 +1,313 @@ +{ + "testCases": [ + { + "documentation": "For custom endpoint with region not set and fips disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Endpoint": "https://example.com", + "UseFIPS": false + } + }, + { + "documentation": "For custom endpoint with fips enabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Endpoint": "https://example.com", + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://backup-search-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://backup-search.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "cn-northwest-1" + } + ] + }, + "url": "https://backup-search-fips.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": true + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "cn-northwest-1" + } + ] + }, + "url": "https://backup-search.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-northwest-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } + ] + }, + "url": "https://backup-search-fips.us-gov-west-1.api.aws" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } + ] + }, + "url": "https://backup-search.us-gov-west-1.api.aws" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-iso-east-1" + } + ] + }, + "url": "https://backup-search-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-iso-east-1" + } + ] + }, + "url": "https://backup-search.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isob-east-1" + } + ] + }, + "url": "https://backup-search-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isob-east-1" + } + ] + }, + "url": "https://backup-search.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false + } + }, + { + "documentation": "For region eu-isoe-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "eu-isoe-west-1" + } + ] + }, + "url": "https://backup-search-fips.eu-isoe-west-1.cloud.adc-e.uk" + } + }, + "params": { + "Region": "eu-isoe-west-1", + "UseFIPS": true + } + }, + { + "documentation": "For region eu-isoe-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "eu-isoe-west-1" + } + ] + }, + "url": "https://backup-search.eu-isoe-west-1.cloud.adc-e.uk" + } + }, + "params": { + "Region": "eu-isoe-west-1", + "UseFIPS": false + } + }, + { + "documentation": "For region us-isof-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isof-south-1" + } + ] + }, + "url": "https://backup-search-fips.us-isof-south-1.csp.hci.ic.gov" + } + }, + "params": { + "Region": "us-isof-south-1", + "UseFIPS": true + } + }, + { + "documentation": "For region us-isof-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isof-south-1" + } + ] + }, + "url": "https://backup-search.us-isof-south-1.csp.hci.ic.gov" + } + }, + "params": { + "Region": "us-isof-south-1", + "UseFIPS": false + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file