diff --git a/CHANGELOG.md b/CHANGELOG.md index 61bce478006..7ff1083627c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,20 @@ +Release v1.45.9 (2023-09-13) +=== + +### Service Client Updates +* `service/cloud9`: Updates service documentation + * Update to include information on Ubuntu 18 deprecation. +* `service/drs`: Updates service API, documentation, and paginators +* `service/firehose`: Updates service API and documentation + * DocumentIdOptions has been added for the Amazon OpenSearch destination. +* `service/guardduty`: Updates service API and documentation + * Add `managementType` field to ListCoverage API response. +* `service/internetmonitor`: Adds new service +* `service/ivs-realtime`: Updates service documentation +* `service/simspaceweaver`: Updates service documentation +* `service/xray`: Updates service API and documentation + * Add StartTime field in GetTraceSummaries API response for each TraceSummary. + Release v1.45.8 (2023-09-12) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index cdd22f0ea6c..d6a3377b15b 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -8788,6 +8788,9 @@ var awsPartition = partition{ endpointKey{ Region: "eu-west-3", }: endpoint{}, + endpointKey{ + Region: "il-central-1", + }: endpoint{}, endpointKey{ Region: "me-central-1", }: endpoint{}, @@ -18282,6 +18285,13 @@ var awsPartition = partition{ }: endpoint{}, }, }, + "managedblockchain-query": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + }, + }, "marketplacecommerceanalytics": service{ Endpoints: serviceEndpoints{ endpointKey{ diff --git a/aws/version.go b/aws/version.go index 09c15d42459..24b220b987c 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.45.8" +const SDKVersion = "1.45.9" diff --git a/models/apis/cloud9/2017-09-23/docs-2.json b/models/apis/cloud9/2017-09-23/docs-2.json index 6cef3f9c2ca..ff61c82f6a8 100644 --- a/models/apis/cloud9/2017-09-23/docs-2.json +++ b/models/apis/cloud9/2017-09-23/docs-2.json @@ -232,7 +232,7 @@ "ImageId": { "base": null, "refs": { - "CreateEnvironmentEC2Request$imageId": "
The identifier for the Amazon Machine Image (AMI) that's used to create the EC2 instance. To choose an AMI for the instance, you must specify a valid AMI alias or a valid Amazon EC2 Systems Manager (SSM) path.
The default Amazon Linux AMI is currently used if the parameter isn't explicitly assigned a value in the request. Because Amazon Linux AMI has ended standard support as of December 31, 2020, we recommend you choose Amazon Linux 2, which includes long term support through 2023.
From December 31, 2023, the parameter for Amazon Linux will no longer be available when you specify an AMI for your instance. Amazon Linux 2 will then become the default AMI, which is used to launch your instance if no parameter is explicitly defined.
AMI aliases
Amazon Linux (default): amazonlinux-1-x86_64
Amazon Linux 2: amazonlinux-2-x86_64
Ubuntu 18.04: ubuntu-18.04-x86_64
Ubuntu 22.04: ubuntu-22.04-x86_64
SSM paths
Amazon Linux (default): resolve:ssm:/aws/service/cloud9/amis/amazonlinux-1-x86_64
Amazon Linux 2: resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64
Ubuntu 18.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-18.04-x86_64
Ubuntu 22.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-22.04-x86_64
The identifier for the Amazon Machine Image (AMI) that's used to create the EC2 instance. To choose an AMI for the instance, you must specify a valid AMI alias or a valid Amazon EC2 Systems Manager (SSM) path.
The default Amazon Linux AMI is currently used if the parameter isn't explicitly assigned a value in the request. Because Amazon Linux AMI has ended standard support as of December 31, 2020, we recommend you choose Amazon Linux 2, which includes long term support through 2023.
From December 31, 2023, the parameter for Amazon Linux will no longer be available when you specify an AMI for your instance. Amazon Linux 2 will then become the default AMI, which is used to launch your instance if no parameter is explicitly defined.
Since Ubuntu 18.04 has ended standard support as of May 31, 2023, we recommend you choose Ubuntu 22.04.
AMI aliases
Amazon Linux (default): amazonlinux-1-x86_64
Amazon Linux 2: amazonlinux-2-x86_64
Ubuntu 18.04: ubuntu-18.04-x86_64
Ubuntu 22.04: ubuntu-22.04-x86_64
SSM paths
Amazon Linux (default): resolve:ssm:/aws/service/cloud9/amis/amazonlinux-1-x86_64
Amazon Linux 2: resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64
Ubuntu 18.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-18.04-x86_64
Ubuntu 22.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-22.04-x86_64
Creates a new ReplicationConfigurationTemplate.
", "CreateSourceNetwork": "Create a new Source Network resource for a provided VPC ID.
", "DeleteJob": "Deletes a single Job by ID.
", + "DeleteLaunchAction": "Deletes a resource launch action.
", "DeleteLaunchConfigurationTemplate": "Deletes a single Launch Configuration Template by ID.
", "DeleteRecoveryInstance": "Deletes a single Recovery Instance by ID. This deletes the Recovery Instance resource from Elastic Disaster Recovery. The Recovery Instance must be disconnected first in order to delete it.
", "DeleteReplicationConfigurationTemplate": "Deletes a single Replication Configuration Template by ID
", @@ -29,8 +30,10 @@ "GetReplicationConfiguration": "Gets a ReplicationConfiguration, filtered by Source Server ID.
", "InitializeService": "Initialize Elastic Disaster Recovery.
", "ListExtensibleSourceServers": "Returns a list of source servers on a staging account that are extensible, which means that: a. The source server is not already extended into this Account. b. The source server on the Account we’re reading from is not an extension of another source server.
", + "ListLaunchActions": "Lists resource launch actions.
", "ListStagingAccounts": "Returns an array of staging accounts for existing extended source servers.
", "ListTagsForResource": "List all tags for your Elastic Disaster Recovery resources.
", + "PutLaunchAction": "Puts a resource launch action.
", "RetryDataReplication": "WARNING: RetryDataReplication is deprecated. Causes the data replication initiation sequence to begin immediately upon next Handshake for the specified Source Server ID, regardless of when the previous initiation started. This command will work only if the Source Server is stalled or is in a DISCONNECTED or STOPPED state.
", "ReverseReplication": "Start replication to origin / target region - applies only to protected instances that originated in EC2. For recovery instances on target region - starts replication back to origin region. For failback instances on origin region - starts replication to target region to re-protect them.
", "StartFailbackLaunch": "Initiates a Job for launching the machine that is being failed back to from the specified Recovery Instance. This will run conversion on the failback client and will reboot your machine, thus completing the failback process.
", @@ -145,18 +148,27 @@ "ConversionProperties$forceUefi": "Whether the volume being converted uses UEFI or not
", "CreateLaunchConfigurationTemplateRequest$copyPrivateIp": "Copy private IP.
", "CreateLaunchConfigurationTemplateRequest$copyTags": "Copy tags.
", + "CreateLaunchConfigurationTemplateRequest$postLaunchEnabled": "Whether we want to activate post-launch actions.
", "CreateReplicationConfigurationTemplateRequest$associateDefaultSecurityGroup": "Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template.
", "CreateReplicationConfigurationTemplateRequest$autoReplicateNewDisks": "Whether to allow the AWS replication agent to automatically replicate newly added disks.
", "CreateReplicationConfigurationTemplateRequest$createPublicIP": "Whether to create a Public IP for the Recovery Instance by default.
", "CreateReplicationConfigurationTemplateRequest$useDedicatedReplicationServer": "Whether to use a dedicated Replication Server in the replication staging area.
", "GetFailbackReplicationConfigurationResponse$usePrivateIP": "Whether to use Private IP for the failback replication of the Recovery Instance.
", + "LaunchAction$active": "Whether the launch action is active.
", + "LaunchAction$optional": "Whether the launch will not be marked as failed if this action fails.
", "LaunchConfiguration$copyPrivateIp": "Whether we should copy the Private IP of the Source Server to the Recovery Instance.
", "LaunchConfiguration$copyTags": "Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
", + "LaunchConfiguration$postLaunchEnabled": "Whether we want to activate post-launch actions for the Source Server.
", "LaunchConfigurationTemplate$copyPrivateIp": "Copy private IP.
", "LaunchConfigurationTemplate$copyTags": "Copy tags.
", + "LaunchConfigurationTemplate$postLaunchEnabled": "Post-launch actions activated.
", "Licensing$osByol": "Whether to enable \"Bring your own license\" or not.
", "NetworkInterface$isPrimary": "Whether this is the primary network interface.
", "PITPolicyRule$enabled": "Whether this rule is enabled or not.
", + "PutLaunchActionRequest$active": "Whether the launch action is active.
", + "PutLaunchActionRequest$optional": "Whether the launch will not be marked as failed if this action fails.
", + "PutLaunchActionResponse$active": "Whether the launch action is active.
", + "PutLaunchActionResponse$optional": "Whether the launch will not be marked as failed if this action fails.
", "RecoveryInstance$isDrill": "Whether this Recovery Instance was created for a drill or for an actual Recovery event.
", "RecoveryInstanceFailback$failbackToOriginalServer": "Whether we are failing back to the original Source Server for this Recovery Instance.
", "ReplicationConfiguration$associateDefaultSecurityGroup": "Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.
", @@ -174,8 +186,10 @@ "UpdateFailbackReplicationConfigurationRequest$usePrivateIP": "Whether to use Private IP for the failback replication of the Recovery Instance.
", "UpdateLaunchConfigurationRequest$copyPrivateIp": "Whether we should copy the Private IP of the Source Server to the Recovery Instance.
", "UpdateLaunchConfigurationRequest$copyTags": "Whether we want to copy the tags of the Source Server to the EC2 machine of the Recovery Instance.
", + "UpdateLaunchConfigurationRequest$postLaunchEnabled": "Whether we want to enable post-launch actions for the Source Server.
", "UpdateLaunchConfigurationTemplateRequest$copyPrivateIp": "Copy private IP.
", "UpdateLaunchConfigurationTemplateRequest$copyTags": "Copy tags.
", + "UpdateLaunchConfigurationTemplateRequest$postLaunchEnabled": "Whether we want to activate post-launch actions.
", "UpdateReplicationConfigurationRequest$associateDefaultSecurityGroup": "Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.
", "UpdateReplicationConfigurationRequest$autoReplicateNewDisks": "Whether to allow the AWS replication agent to automatically replicate newly added disks.
", "UpdateReplicationConfigurationRequest$createPublicIP": "Whether to create a Public IP for the Recovery Instance by default.
", @@ -358,6 +372,16 @@ "refs": { } }, + "DeleteLaunchActionRequest": { + "base": null, + "refs": { + } + }, + "DeleteLaunchActionResponse": { + "base": null, + "refs": { + } + }, "DeleteLaunchConfigurationTemplateRequest": { "base": null, "refs": { @@ -645,6 +669,12 @@ "RecoveryInstanceFailback$state": "The state of the failback process that this Recovery Instance is in.
" } }, + "FailureReason": { + "base": null, + "refs": { + "LaunchActionRun$failureReason": "Failure reason.
" + } + }, "GetFailbackReplicationConfigurationRequest": { "base": null, "refs": { @@ -684,6 +714,7 @@ "Job$creationDateTime": "The date and time of when the Job was created.
", "Job$endDateTime": "The date and time of when the Job ended.
", "JobLog$logDateTime": "The date and time the log was taken.
", + "LaunchActionsStatus$ssmAgentDiscoveryDatetime": "Time where the AWS Systems Manager was detected as running on the launched instance.
", "LifeCycle$addedToServiceDateTime": "The date and time of when the Source Server was added to the service.
", "LifeCycle$firstByteDateTime": "The date and time of the first byte that was replicated from the Source Server.
", "LifeCycle$lastSeenByServiceDateTime": "The date and time this Source Server was last seen by the service.
", @@ -858,6 +889,159 @@ "LifeCycleLastLaunchInitiated$type": "The Job type that was used to last launch the Source Server.
" } }, + "LaunchAction": { + "base": "Launch action.
", + "refs": { + "LaunchActionRun$action": "Action.
", + "LaunchActions$member": null + } + }, + "LaunchActionCategory": { + "base": "Launch action category.
", + "refs": { + "LaunchAction$category": null, + "PutLaunchActionRequest$category": null, + "PutLaunchActionResponse$category": null + } + }, + "LaunchActionDescription": { + "base": "Launch action description.
", + "refs": { + "LaunchAction$description": null, + "PutLaunchActionRequest$description": null, + "PutLaunchActionResponse$description": null + } + }, + "LaunchActionId": { + "base": "Launch action Id.
", + "refs": { + "DeleteLaunchActionRequest$actionId": null, + "LaunchAction$actionId": null, + "LaunchActionIds$member": null, + "PutLaunchActionRequest$actionId": null, + "PutLaunchActionResponse$actionId": null + } + }, + "LaunchActionIds": { + "base": null, + "refs": { + "LaunchActionsRequestFilters$actionIds": "Launch actions Ids.
" + } + }, + "LaunchActionName": { + "base": "Launch action name.
", + "refs": { + "LaunchAction$name": null, + "PutLaunchActionRequest$name": null, + "PutLaunchActionResponse$name": null + } + }, + "LaunchActionOrder": { + "base": "Launch action order.
", + "refs": { + "LaunchAction$order": null, + "PutLaunchActionRequest$order": null, + "PutLaunchActionResponse$order": null + } + }, + "LaunchActionParameter": { + "base": "Launch action parameter.
", + "refs": { + "LaunchActionParameters$value": null + } + }, + "LaunchActionParameterName": { + "base": null, + "refs": { + "LaunchActionParameters$key": null + } + }, + "LaunchActionParameterType": { + "base": null, + "refs": { + "LaunchActionParameter$type": "Type.
" + } + }, + "LaunchActionParameterValue": { + "base": null, + "refs": { + "LaunchActionParameter$value": "Value.
" + } + }, + "LaunchActionParameters": { + "base": "Launch action parameters.
", + "refs": { + "LaunchAction$parameters": null, + "PutLaunchActionRequest$parameters": null, + "PutLaunchActionResponse$parameters": null + } + }, + "LaunchActionResourceId": { + "base": "Launch configuration template Id or Source Server Id
", + "refs": { + "DeleteLaunchActionRequest$resourceId": null, + "ListLaunchActionsRequest$resourceId": null, + "PutLaunchActionRequest$resourceId": null, + "PutLaunchActionResponse$resourceId": null + } + }, + "LaunchActionRun": { + "base": "Launch action run.
", + "refs": { + "LaunchActionRuns$member": null + } + }, + "LaunchActionRunId": { + "base": null, + "refs": { + "LaunchActionRun$runId": "Run Id.
" + } + }, + "LaunchActionRunStatus": { + "base": null, + "refs": { + "LaunchActionRun$status": "Run status.
" + } + }, + "LaunchActionRuns": { + "base": null, + "refs": { + "LaunchActionsStatus$runs": "List of post launch action status.
" + } + }, + "LaunchActionType": { + "base": null, + "refs": { + "LaunchAction$type": "Launch action type.
", + "PutLaunchActionResponse$type": "Launch action type.
" + } + }, + "LaunchActionVersion": { + "base": "Launch action version.
", + "refs": { + "LaunchAction$actionVersion": null, + "PutLaunchActionRequest$actionVersion": null, + "PutLaunchActionResponse$actionVersion": null + } + }, + "LaunchActions": { + "base": null, + "refs": { + "ListLaunchActionsResponse$items": "List of resource launch actions.
" + } + }, + "LaunchActionsRequestFilters": { + "base": "Resource launch actions filter.
", + "refs": { + "ListLaunchActionsRequest$filters": "Filters to apply when listing resource launch actions.
" + } + }, + "LaunchActionsStatus": { + "base": "Launch actions status.
", + "refs": { + "ParticipatingServer$launchActionsStatus": "The post-launch action runs of a participating server.
" + } + }, "LaunchConfiguration": { "base": null, "refs": { @@ -948,6 +1132,16 @@ "refs": { } }, + "ListLaunchActionsRequest": { + "base": null, + "refs": { + } + }, + "ListLaunchActionsResponse": { + "base": null, + "refs": { + } + }, "ListStagingAccountsRequest": { "base": null, "refs": { @@ -983,7 +1177,8 @@ "MaxResultsType": { "base": null, "refs": { - "DescribeLaunchConfigurationTemplatesRequest$maxResults": "Maximum results to be returned in DescribeLaunchConfigurationTemplates.
" + "DescribeLaunchConfigurationTemplatesRequest$maxResults": "Maximum results to be returned in DescribeLaunchConfigurationTemplates.
", + "ListLaunchActionsRequest$maxResults": "Maximum amount of items to return when listing resource launch actions.
" } }, "NetworkInterface": { @@ -1055,6 +1250,8 @@ "DescribeSourceServersResponse$nextToken": "The token of the next Source Server to retrieve.
", "ListExtensibleSourceServersRequest$nextToken": "The token of the next extensible source server to retrieve.
", "ListExtensibleSourceServersResponse$nextToken": "The token of the next extensible source server to retrieve.
", + "ListLaunchActionsRequest$nextToken": "Next token to use when listing resource launch actions.
", + "ListLaunchActionsResponse$nextToken": "Next token returned when listing resource launch actions.
", "ListStagingAccountsRequest$nextToken": "The token of the next staging Account to retrieve.
", "ListStagingAccountsResponse$nextToken": "The token of the next staging Account to retrieve.
" } @@ -1119,6 +1316,16 @@ "VolumeToSizeMap$value": null } }, + "PutLaunchActionRequest": { + "base": null, + "refs": { + } + }, + "PutLaunchActionResponse": { + "base": null, + "refs": { + } + }, "RecoveryInstance": { "base": "A Recovery Instance is a replica of a Source Server running on EC2.
", "refs": { @@ -1530,6 +1737,14 @@ "DescribeSourceServersResponse$items": "An array of Source Servers.
" } }, + "SsmDocumentName": { + "base": null, + "refs": { + "LaunchAction$actionCode": "Launch action code.
", + "PutLaunchActionRequest$actionCode": "Launch action code.
", + "PutLaunchActionResponse$actionCode": "Launch action code.
" + } + }, "StagingArea": { "base": "Staging information related to source server.
", "refs": { diff --git a/models/apis/drs/2020-02-26/endpoint-rule-set-1.json b/models/apis/drs/2020-02-26/endpoint-rule-set-1.json index 2d8239a87a9..28091fefced 100644 --- a/models/apis/drs/2020-02-26/endpoint-rule-set-1.json +++ b/models/apis/drs/2020-02-26/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://drs-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://drs-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://drs-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://drs-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://drs.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://drs.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://drs.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://drs.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/drs/2020-02-26/paginators-1.json b/models/apis/drs/2020-02-26/paginators-1.json index bf7f0e978df..5a7deb487d8 100644 --- a/models/apis/drs/2020-02-26/paginators-1.json +++ b/models/apis/drs/2020-02-26/paginators-1.json @@ -54,6 +54,12 @@ "limit_key": "maxResults", "result_key": "items" }, + "ListLaunchActions": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, "ListStagingAccounts": { "input_token": "nextToken", "output_token": "nextToken", diff --git a/models/apis/firehose/2015-08-04/api-2.json b/models/apis/firehose/2015-08-04/api-2.json index eef3e6c7d0e..bcec64710ff 100644 --- a/models/apis/firehose/2015-08-04/api-2.json +++ b/models/apis/firehose/2015-08-04/api-2.json @@ -328,7 +328,8 @@ "S3Configuration":{"shape":"S3DestinationConfiguration"}, "ProcessingConfiguration":{"shape":"ProcessingConfiguration"}, "CloudWatchLoggingOptions":{"shape":"CloudWatchLoggingOptions"}, - "VpcConfiguration":{"shape":"VpcConfiguration"} + "VpcConfiguration":{"shape":"VpcConfiguration"}, + "DocumentIdOptions":{"shape":"DocumentIdOptions"} } }, "AmazonopensearchserviceDestinationDescription":{ @@ -346,7 +347,8 @@ "S3DestinationDescription":{"shape":"S3DestinationDescription"}, "ProcessingConfiguration":{"shape":"ProcessingConfiguration"}, "CloudWatchLoggingOptions":{"shape":"CloudWatchLoggingOptions"}, - "VpcConfigurationDescription":{"shape":"VpcConfigurationDescription"} + "VpcConfigurationDescription":{"shape":"VpcConfigurationDescription"}, + "DocumentIdOptions":{"shape":"DocumentIdOptions"} } }, "AmazonopensearchserviceDestinationUpdate":{ @@ -362,7 +364,8 @@ "RetryOptions":{"shape":"AmazonopensearchserviceRetryOptions"}, "S3Update":{"shape":"S3DestinationUpdate"}, "ProcessingConfiguration":{"shape":"ProcessingConfiguration"}, - "CloudWatchLoggingOptions":{"shape":"CloudWatchLoggingOptions"} + "CloudWatchLoggingOptions":{"shape":"CloudWatchLoggingOptions"}, + "DocumentIdOptions":{"shape":"DocumentIdOptions"} } }, "AmazonopensearchserviceDomainARN":{ @@ -541,6 +544,13 @@ "min":1, "pattern":".*" }, + "DefaultDocumentIdFormat":{ + "type":"string", + "enum":[ + "FIREHOSE_DEFAULT", + "NO_DOCUMENT_ID" + ] + }, "DeleteDeliveryStreamInput":{ "type":"structure", "required":["DeliveryStreamName"], @@ -721,6 +731,13 @@ "min":1, "pattern":"[a-zA-Z0-9-]+" }, + "DocumentIdOptions":{ + "type":"structure", + "required":["DefaultDocumentIdFormat"], + "members":{ + "DefaultDocumentIdFormat":{"shape":"DefaultDocumentIdFormat"} + } + }, "DynamicPartitioningConfiguration":{ "type":"structure", "members":{ @@ -771,7 +788,8 @@ "S3Configuration":{"shape":"S3DestinationConfiguration"}, "ProcessingConfiguration":{"shape":"ProcessingConfiguration"}, "CloudWatchLoggingOptions":{"shape":"CloudWatchLoggingOptions"}, - "VpcConfiguration":{"shape":"VpcConfiguration"} + "VpcConfiguration":{"shape":"VpcConfiguration"}, + "DocumentIdOptions":{"shape":"DocumentIdOptions"} } }, "ElasticsearchDestinationDescription":{ @@ -789,7 +807,8 @@ "S3DestinationDescription":{"shape":"S3DestinationDescription"}, "ProcessingConfiguration":{"shape":"ProcessingConfiguration"}, "CloudWatchLoggingOptions":{"shape":"CloudWatchLoggingOptions"}, - "VpcConfigurationDescription":{"shape":"VpcConfigurationDescription"} + "VpcConfigurationDescription":{"shape":"VpcConfigurationDescription"}, + "DocumentIdOptions":{"shape":"DocumentIdOptions"} } }, "ElasticsearchDestinationUpdate":{ @@ -805,7 +824,8 @@ "RetryOptions":{"shape":"ElasticsearchRetryOptions"}, "S3Update":{"shape":"S3DestinationUpdate"}, "ProcessingConfiguration":{"shape":"ProcessingConfiguration"}, - "CloudWatchLoggingOptions":{"shape":"CloudWatchLoggingOptions"} + "CloudWatchLoggingOptions":{"shape":"CloudWatchLoggingOptions"}, + "DocumentIdOptions":{"shape":"DocumentIdOptions"} } }, "ElasticsearchDomainARN":{ diff --git a/models/apis/firehose/2015-08-04/docs-2.json b/models/apis/firehose/2015-08-04/docs-2.json index 983b3dbcee2..09f2b13ba2a 100644 --- a/models/apis/firehose/2015-08-04/docs-2.json +++ b/models/apis/firehose/2015-08-04/docs-2.json @@ -2,7 +2,7 @@ "version": "2.0", "service": "Amazon Kinesis Data Firehose is a fully managed service that delivers real-time streaming data to destinations such as Amazon Simple Storage Service (Amazon S3), Amazon OpenSearch Service, Amazon Redshift, Splunk, and various other supportd destinations.
", "operations": { - "CreateDeliveryStream": "Creates a Kinesis Data Firehose delivery stream.
By default, you can create up to 50 delivery streams per Amazon Web Services Region.
This is an asynchronous operation that immediately returns. The initial status of the delivery stream is CREATING
. After the delivery stream is created, its status is ACTIVE
and it now accepts data. If the delivery stream creation fails, the status transitions to CREATING_FAILED
. Attempts to send data to a delivery stream that is not in the ACTIVE
state cause an exception. To check the state of a delivery stream, use DescribeDeliveryStream.
If the status of a delivery stream is CREATING_FAILED
, this status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However, you can invoke the DeleteDeliveryStream operation to delete it.
A Kinesis Data Firehose delivery stream can be configured to receive records directly from providers using PutRecord or PutRecordBatch, or it can be configured to use an existing Kinesis stream as its source. To specify a Kinesis data stream as input, set the DeliveryStreamType
parameter to KinesisStreamAsSource
, and provide the Kinesis stream Amazon Resource Name (ARN) and role ARN in the KinesisStreamSourceConfiguration
parameter.
To create a delivery stream with server-side encryption (SSE) enabled, include DeliveryStreamEncryptionConfigurationInput in your request. This is optional. You can also invoke StartDeliveryStreamEncryption to turn on SSE for an existing delivery stream that doesn't have SSE enabled.
A delivery stream is configured with a single destination: Amazon S3, Amazon ES, Amazon Redshift, or Splunk. You must specify only one of the following destination configuration parameters: ExtendedS3DestinationConfiguration
, S3DestinationConfiguration
, ElasticsearchDestinationConfiguration
, RedshiftDestinationConfiguration
, or SplunkDestinationConfiguration
.
When you specify S3DestinationConfiguration
, you can also provide the following optional values: BufferingHints, EncryptionConfiguration
, and CompressionFormat
. By default, if no BufferingHints
value is provided, Kinesis Data Firehose buffers data up to 5 MB or for 5 minutes, whichever condition is satisfied first. BufferingHints
is a hint, so there are some cases where the service cannot adhere to these conditions strictly. For example, record boundaries might be such that the size is a little over or under the configured buffering size. By default, no encryption is performed. We strongly recommend that you enable encryption to ensure secure data storage in Amazon S3.
A few notes about Amazon Redshift as a destination:
An Amazon Redshift destination requires an S3 bucket as intermediate location. Kinesis Data Firehose first delivers data to Amazon S3 and then uses COPY
syntax to load data into an Amazon Redshift table. This is specified in the RedshiftDestinationConfiguration.S3Configuration
parameter.
The compression formats SNAPPY
or ZIP
cannot be specified in RedshiftDestinationConfiguration.S3Configuration
because the Amazon Redshift COPY
operation that reads from the S3 bucket doesn't support these compression formats.
We strongly recommend that you use the user name and password you provide exclusively with Kinesis Data Firehose, and that the permissions for the account are restricted for Amazon Redshift INSERT
permissions.
Kinesis Data Firehose assumes the IAM role that is configured as part of the destination. The role should allow the Kinesis Data Firehose principal to assume the role, and the role should have permissions that allow the service to deliver the data. For more information, see Grant Kinesis Data Firehose Access to an Amazon S3 Destination in the Amazon Kinesis Data Firehose Developer Guide.
", + "CreateDeliveryStream": "Creates a Kinesis Data Firehose delivery stream.
By default, you can create up to 50 delivery streams per Amazon Web Services Region.
This is an asynchronous operation that immediately returns. The initial status of the delivery stream is CREATING
. After the delivery stream is created, its status is ACTIVE
and it now accepts data. If the delivery stream creation fails, the status transitions to CREATING_FAILED
. Attempts to send data to a delivery stream that is not in the ACTIVE
state cause an exception. To check the state of a delivery stream, use DescribeDeliveryStream.
If the status of a delivery stream is CREATING_FAILED
, this status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However, you can invoke the DeleteDeliveryStream operation to delete it.
A Kinesis Data Firehose delivery stream can be configured to receive records directly from providers using PutRecord or PutRecordBatch, or it can be configured to use an existing Kinesis stream as its source. To specify a Kinesis data stream as input, set the DeliveryStreamType
parameter to KinesisStreamAsSource
, and provide the Kinesis stream Amazon Resource Name (ARN) and role ARN in the KinesisStreamSourceConfiguration
parameter.
To create a delivery stream with server-side encryption (SSE) enabled, include DeliveryStreamEncryptionConfigurationInput in your request. This is optional. You can also invoke StartDeliveryStreamEncryption to turn on SSE for an existing delivery stream that doesn't have SSE enabled.
A delivery stream is configured with a single destination, such as Amazon Simple Storage Service (Amazon S3), Amazon Redshift, Amazon OpenSearch Service, Amazon OpenSearch Serverless, Splunk, and any custom HTTP endpoint or HTTP endpoints owned by or supported by third-party service providers, including Datadog, Dynatrace, LogicMonitor, MongoDB, New Relic, and Sumo Logic. You must specify only one of the following destination configuration parameters: ExtendedS3DestinationConfiguration
, S3DestinationConfiguration
, ElasticsearchDestinationConfiguration
, RedshiftDestinationConfiguration
, or SplunkDestinationConfiguration
.
When you specify S3DestinationConfiguration
, you can also provide the following optional values: BufferingHints, EncryptionConfiguration
, and CompressionFormat
. By default, if no BufferingHints
value is provided, Kinesis Data Firehose buffers data up to 5 MB or for 5 minutes, whichever condition is satisfied first. BufferingHints
is a hint, so there are some cases where the service cannot adhere to these conditions strictly. For example, record boundaries might be such that the size is a little over or under the configured buffering size. By default, no encryption is performed. We strongly recommend that you enable encryption to ensure secure data storage in Amazon S3.
A few notes about Amazon Redshift as a destination:
An Amazon Redshift destination requires an S3 bucket as intermediate location. Kinesis Data Firehose first delivers data to Amazon S3 and then uses COPY
syntax to load data into an Amazon Redshift table. This is specified in the RedshiftDestinationConfiguration.S3Configuration
parameter.
The compression formats SNAPPY
or ZIP
cannot be specified in RedshiftDestinationConfiguration.S3Configuration
because the Amazon Redshift COPY
operation that reads from the S3 bucket doesn't support these compression formats.
We strongly recommend that you use the user name and password you provide exclusively with Kinesis Data Firehose, and that the permissions for the account are restricted for Amazon Redshift INSERT
permissions.
Kinesis Data Firehose assumes the IAM role that is configured as part of the destination. The role should allow the Kinesis Data Firehose principal to assume the role, and the role should have permissions that allow the service to deliver the data. For more information, see Grant Kinesis Data Firehose Access to an Amazon S3 Destination in the Amazon Kinesis Data Firehose Developer Guide.
", "DeleteDeliveryStream": "Deletes a delivery stream and its data.
To check the state of a delivery stream, use DescribeDeliveryStream. You can delete a delivery stream only if it is in one of the following states: ACTIVE
, DELETING
, CREATING_FAILED
, or DELETING_FAILED
. You can't delete a delivery stream that is in the CREATING
state. While the deletion request is in process, the delivery stream is in the DELETING
state.
While the delivery stream is in the DELETING
state, the service might continue to accept records, but it doesn't make any guarantees with respect to delivering the data. Therefore, as a best practice, first stop any applications that are sending records before you delete a delivery stream.
Describes the specified delivery stream and its status. For example, after your delivery stream is created, call DescribeDeliveryStream
to see whether the delivery stream is ACTIVE
and therefore ready for data to be sent to it.
If the status of a delivery stream is CREATING_FAILED
, this status doesn't change, and you can't invoke CreateDeliveryStream again on it. However, you can invoke the DeleteDeliveryStream operation to delete it. If the status is DELETING_FAILED
, you can force deletion by invoking DeleteDeliveryStream again but with DeleteDeliveryStreamInput$AllowForceDelete set to true.
Lists your delivery streams in alphabetical order of their names.
The number of delivery streams might be too large to return using a single call to ListDeliveryStreams
. You can limit the number of delivery streams returned, using the Limit
parameter. To determine whether there are more delivery streams to list, check the value of HasMoreDeliveryStreams
in the output. If there are more delivery streams to list, you can request them by calling this operation again and setting the ExclusiveStartDeliveryStreamName
parameter to the name of the last delivery stream returned in the last call.
Disables server-side encryption (SSE) for the delivery stream.
This operation is asynchronous. It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream to DISABLING
, and then to DISABLED
. You can continue to read and write data to your stream while its status is DISABLING
. It can take up to 5 seconds after the encryption status changes to DISABLED
before all records written to the delivery stream are no longer subject to encryption. To find out whether a record or a batch of records was encrypted, check the response elements PutRecordOutput$Encrypted and PutRecordBatchOutput$Encrypted, respectively.
To check the encryption state of a delivery stream, use DescribeDeliveryStream.
If SSE is enabled using a customer managed CMK and then you invoke StopDeliveryStreamEncryption
, Kinesis Data Firehose schedules the related KMS grant for retirement and then retires it after it ensures that it is finished delivering records to the destination.
The StartDeliveryStreamEncryption
and StopDeliveryStreamEncryption
operations have a combined limit of 25 calls per delivery stream per 24 hours. For example, you reach the limit if you call StartDeliveryStreamEncryption
13 times and StopDeliveryStreamEncryption
12 times for the same delivery stream in a 24-hour period.
Adds or updates tags for the specified delivery stream. A tag is a key-value pair that you can define and assign to Amazon Web Services resources. If you specify a tag that already exists, the tag value is replaced with the value that you specify in the request. Tags are metadata. For example, you can add friendly names and descriptions or other types of information that can help you distinguish the delivery stream. For more information about tags, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide.
Each delivery stream can have up to 50 tags.
This operation has a limit of five transactions per second per account.
", "UntagDeliveryStream": "Removes tags from the specified delivery stream. Removed tags are deleted, and you can't recover them after this operation successfully completes.
If you specify a tag that doesn't exist, the operation ignores it.
This operation has a limit of five transactions per second per account.
", - "UpdateDestination": "Updates the specified destination of the specified delivery stream.
Use this operation to change the destination type (for example, to replace the Amazon S3 destination with Amazon Redshift) or change the parameters associated with a destination (for example, to change the bucket name of the Amazon S3 destination). The update might not occur immediately. The target delivery stream remains active while the configurations are updated, so data writes to the delivery stream can continue during this process. The updated configurations are usually effective within a few minutes.
Switching between Amazon ES and other services is not supported. For an Amazon ES destination, you can only update to another Amazon ES destination.
If the destination type is the same, Kinesis Data Firehose merges the configuration parameters specified with the destination configuration that already exists on the delivery stream. If any of the parameters are not specified in the call, the existing values are retained. For example, in the Amazon S3 destination, if EncryptionConfiguration is not specified, then the existing EncryptionConfiguration
is maintained on the destination.
If the destination type is not the same, for example, changing the destination from Amazon S3 to Amazon Redshift, Kinesis Data Firehose does not merge any parameters. In this case, all parameters must be specified.
Kinesis Data Firehose uses CurrentDeliveryStreamVersionId
to avoid race conditions and conflicting merges. This is a required field, and the service updates the configuration only if the existing configuration has a version ID that matches. After the update is applied successfully, the version ID is updated, and can be retrieved using DescribeDeliveryStream. Use the new version ID to set CurrentDeliveryStreamVersionId
in the next call.
Updates the specified destination of the specified delivery stream.
Use this operation to change the destination type (for example, to replace the Amazon S3 destination with Amazon Redshift) or change the parameters associated with a destination (for example, to change the bucket name of the Amazon S3 destination). The update might not occur immediately. The target delivery stream remains active while the configurations are updated, so data writes to the delivery stream can continue during this process. The updated configurations are usually effective within a few minutes.
Switching between Amazon OpenSearch Service and other services is not supported. For an Amazon OpenSearch Service destination, you can only update to another Amazon OpenSearch Service destination.
If the destination type is the same, Kinesis Data Firehose merges the configuration parameters specified with the destination configuration that already exists on the delivery stream. If any of the parameters are not specified in the call, the existing values are retained. For example, in the Amazon S3 destination, if EncryptionConfiguration is not specified, then the existing EncryptionConfiguration
is maintained on the destination.
If the destination type is not the same, for example, changing the destination from Amazon S3 to Amazon Redshift, Kinesis Data Firehose does not merge any parameters. In this case, all parameters must be specified.
Kinesis Data Firehose uses CurrentDeliveryStreamVersionId
to avoid race conditions and conflicting merges. This is a required field, and the service updates the configuration only if the existing configuration has a version ID that matches. After the update is applied successfully, the version ID is updated, and can be retrieved using DescribeDeliveryStream. Use the new version ID to set CurrentDeliveryStreamVersionId
in the next call.
The name of the target table. The table must already exist in the database.
" } }, + "DefaultDocumentIdFormat": { + "base": null, + "refs": { + "DocumentIdOptions$DefaultDocumentIdFormat": "When the FIREHOSE_DEFAULT
option is chosen, Kinesis Data Firehose generates a unique document ID for each record based on a unique internal identifier. The generated document ID is stable across multiple delivery attempts, which helps prevent the same record from being indexed multiple times with different document IDs.
When the NO_DOCUMENT_ID
option is chosen, Kinesis Data Firehose does not include any document IDs in the requests it sends to the Amazon OpenSearch Service. This causes the Amazon OpenSearch Service domain to generate document IDs. In case of multiple delivery attempts, this may cause the same record to be indexed more than once with different document IDs. This option enables write-heavy operations, such as the ingestion of logs and observability data, to consume less resources in the Amazon OpenSearch Service domain, resulting in improved performance.
The ID of the destination.
" } }, + "DocumentIdOptions": { + "base": "Indicates the method for setting up document ID. The supported methods are Kinesis Data Firehose generated document ID and OpenSearch Service generated document ID.
", + "refs": { + "AmazonopensearchserviceDestinationConfiguration$DocumentIdOptions": "Indicates the method for setting up document ID. The supported methods are Kinesis Data Firehose generated document ID and OpenSearch Service generated document ID.
", + "AmazonopensearchserviceDestinationDescription$DocumentIdOptions": "Indicates the method for setting up document ID. The supported methods are Kinesis Data Firehose generated document ID and OpenSearch Service generated document ID.
", + "AmazonopensearchserviceDestinationUpdate$DocumentIdOptions": "Indicates the method for setting up document ID. The supported methods are Kinesis Data Firehose generated document ID and OpenSearch Service generated document ID.
", + "ElasticsearchDestinationConfiguration$DocumentIdOptions": "Indicates the method for setting up document ID. The supported methods are Kinesis Data Firehose generated document ID and OpenSearch Service generated document ID.
", + "ElasticsearchDestinationDescription$DocumentIdOptions": "Indicates the method for setting up document ID. The supported methods are Kinesis Data Firehose generated document ID and OpenSearch Service generated document ID.
", + "ElasticsearchDestinationUpdate$DocumentIdOptions": "Indicates the method for setting up document ID. The supported methods are Kinesis Data Firehose generated document ID and OpenSearch Service generated document ID.
" + } + }, "DynamicPartitioningConfiguration": { "base": "The configuration of the dynamic partitioning mechanism that creates smaller data sets from the streaming data by partitioning it based on partition keys. Currently, dynamic partitioning is only supported for Amazon S3 destinations.
", "refs": { @@ -1276,7 +1293,7 @@ "base": null, "refs": { "AmazonOpenSearchServerlessDestinationConfiguration$RoleARN": "The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Serverless offering for Amazon OpenSearch Service Configuration API and for indexing documents.
", - "AmazonOpenSearchServerlessDestinationDescription$RoleARN": "The Amazon Resource Name (ARN) of the AWS credentials.
", + "AmazonOpenSearchServerlessDestinationDescription$RoleARN": "The Amazon Resource Name (ARN) of the Amazon Web Services credentials.
", "AmazonOpenSearchServerlessDestinationUpdate$RoleARN": "The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Serverless offering for Amazon OpenSearch Service Configuration API and for indexing documents.
", "AmazonopensearchserviceDestinationConfiguration$RoleARN": "The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Amazon OpenSearch Service Configuration API and for indexing documents.
", "AmazonopensearchserviceDestinationDescription$RoleARN": "The Amazon Resource Name (ARN) of the Amazon Web Services credentials.
", @@ -1535,11 +1552,11 @@ } }, "VpcConfiguration": { - "base": "The details of the VPC of the Amazon ES destination.
", + "base": "The details of the VPC of the Amazon OpenSearch or Amazon OpenSearch Serverless destination.
", "refs": { "AmazonOpenSearchServerlessDestinationConfiguration$VpcConfiguration": null, "AmazonopensearchserviceDestinationConfiguration$VpcConfiguration": null, - "ElasticsearchDestinationConfiguration$VpcConfiguration": "The details of the VPC of the Amazon ES destination.
" + "ElasticsearchDestinationConfiguration$VpcConfiguration": "The details of the VPC of the Amazon destination.
" } }, "VpcConfigurationDescription": { @@ -1547,7 +1564,7 @@ "refs": { "AmazonOpenSearchServerlessDestinationDescription$VpcConfigurationDescription": null, "AmazonopensearchserviceDestinationDescription$VpcConfigurationDescription": null, - "ElasticsearchDestinationDescription$VpcConfigurationDescription": "The details of the VPC of the Amazon ES destination.
" + "ElasticsearchDestinationDescription$VpcConfigurationDescription": "The details of the VPC of the Amazon OpenSearch or the Amazon OpenSearch Serverless destination.
" } } } diff --git a/models/apis/firehose/2015-08-04/endpoint-rule-set-1.json b/models/apis/firehose/2015-08-04/endpoint-rule-set-1.json index 09b6d78fdb5..7e1ccd992db 100644 --- a/models/apis/firehose/2015-08-04/endpoint-rule-set-1.json +++ b/models/apis/firehose/2015-08-04/endpoint-rule-set-1.json @@ -32,13 +32,12 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], "type": "tree", @@ -46,21 +45,69 @@ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "parseURL", + "ref": "Region" + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", "argv": [ { - "ref": "Endpoint" + "ref": "Region" } ], - "assign": "url" + "assign": "PartitionResult" } ], "type": "tree", @@ -75,13 +122,17 @@ }, true ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], "type": "tree", "rules": [ { @@ -89,143 +140,86 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ + true, { - "ref": "PartitionResult" - }, - "supportsFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } ] } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, + ], + "type": "tree", + "rules": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] + "conditions": [], + "endpoint": { + "url": "https://firehose-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - } - ], - "type": "tree", - "rules": [ + }, { "conditions": [], - "endpoint": { - "url": "https://firehose-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } ] }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] } ], "type": "tree", "rules": [ { - "conditions": [], + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], "type": "tree", "rules": [ { @@ -238,78 +232,83 @@ "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } ] }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], "type": "tree", "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://firehose.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, { "conditions": [], - "endpoint": { - "url": "https://firehose.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://firehose.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "endpoint": { - "url": "https://firehose.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/firehose/2015-08-04/endpoint-tests-1.json b/models/apis/firehose/2015-08-04/endpoint-tests-1.json index ab71fd49ec1..0fbff4392bd 100644 --- a/models/apis/firehose/2015-08-04/endpoint-tests-1.json +++ b/models/apis/firehose/2015-08-04/endpoint-tests-1.json @@ -1,1555 +1,558 @@ { "testCases": [ { - "documentation": "For region ap-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ap-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-south-1" - } - }, - { - "documentation": "For region ap-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ap-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-south-1" - } - }, - { - "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.ap-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "ap-south-1" - } - }, - { - "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.ap-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "ap-south-1" - } - }, - { - "documentation": "For region eu-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-south-1" - } - }, - { - "documentation": "For region eu-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-south-1" - } - }, - { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-south-1" - } - }, - { - "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "eu-south-1" - } - }, - { - "documentation": "For region eu-south-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-south-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-south-2" - } - }, - { - "documentation": "For region eu-south-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-south-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-south-2" - } - }, - { - "documentation": "For region eu-south-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-south-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-south-2" - } - }, - { - "documentation": "For region eu-south-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-south-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "eu-south-2" - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.us-gov-east-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-gov-east-1" - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.us-gov-east-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-gov-east-1" - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.us-gov-east-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "us-gov-east-1" - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.us-gov-east-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-gov-east-1" - } - }, - { - "documentation": "For region me-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.me-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "me-central-1" - } - }, - { - "documentation": "For region me-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.me-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "me-central-1" - } - }, - { - "documentation": "For region me-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.me-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "me-central-1" - } - }, - { - "documentation": "For region me-central-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.me-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "me-central-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ca-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ca-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.ca-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.ca-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "ca-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-central-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-central-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "eu-central-1" - } - }, - { - "documentation": "For region us-iso-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": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-iso-west-1" - } - }, - { - "documentation": "For region us-iso-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.us-iso-west-1.c2s.ic.gov" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-iso-west-1" - } - }, - { - "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "us-iso-west-1" - } - }, - { - "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.us-iso-west-1.c2s.ic.gov" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-iso-west-1" - } - }, - { - "documentation": "For region us-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.us-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-west-1" - } - }, - { - "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.us-west-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-west-1" - } - }, - { - "documentation": "For region us-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.us-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "us-west-1" - } - }, - { - "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.us-west-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-west-1" - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.us-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.us-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.us-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "us-west-2" - } - }, - { - "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.us-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-west-2" - } - }, - { - "documentation": "For region af-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.af-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "af-south-1" - } - }, - { - "documentation": "For region af-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.af-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "af-south-1" - } - }, - { - "documentation": "For region af-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.af-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "af-south-1" - } - }, - { - "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.af-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "af-south-1" - } - }, - { - "documentation": "For region eu-north-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-north-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-north-1" - } - }, - { - "documentation": "For region eu-north-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-north-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-north-1" - } - }, - { - "documentation": "For region eu-north-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-north-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-north-1" - } - }, - { - "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-north-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "eu-north-1" - } - }, - { - "documentation": "For region eu-west-3 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-west-3.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-west-3" - } - }, - { - "documentation": "For region eu-west-3 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-west-3.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-west-3" - } - }, - { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-west-3.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-west-3" - } - }, - { - "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-west-3.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "eu-west-3" - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-west-2" - } - }, - { - "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-west-2" - } - }, - { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-west-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-west-2" - } - }, - { - "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-west-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "eu-west-2" - } - }, - { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.eu-west-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-west-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.eu-west-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "eu-west-1" - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ap-northeast-3.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-northeast-3" - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ap-northeast-3.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-northeast-3" - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.ap-northeast-3.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "ap-northeast-3" - } - }, - { - "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.ap-northeast-3.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "ap-northeast-3" - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ap-northeast-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-northeast-2" - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ap-northeast-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-northeast-2" - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.ap-northeast-2.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "ap-northeast-2" - } - }, - { - "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.ap-northeast-2.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "ap-northeast-2" - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ap-northeast-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-northeast-1" - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.ap-northeast-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-northeast-1" - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.ap-northeast-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "ap-northeast-1" - } - }, - { - "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.ap-northeast-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "ap-northeast-1" - } - }, - { - "documentation": "For region me-south-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.me-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "me-south-1" - } - }, - { - "documentation": "For region me-south-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.me-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "me-south-1" - } - }, - { - "documentation": "For region me-south-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose.me-south-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "me-south-1" - } - }, - { - "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose.me-south-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "me-south-1" - } - }, - { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.sa-east-1.api.aws" - } - }, - "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "sa-east-1" - } - }, - { - "documentation": "For region sa-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { - "url": "https://firehose-fips.sa-east-1.amazonaws.com" - } - }, - "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "sa-east-1" - } - }, - { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.sa-east-1.api.aws" + "url": "https://firehose.af-south-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "af-south-1", "UseFIPS": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { - "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.sa-east-1.amazonaws.com" + "url": "https://firehose.ap-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "ap-east-1", "UseFIPS": false, - "Region": "sa-east-1" + "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.ap-east-1.api.aws" + "url": "https://firehose.ap-northeast-1.amazonaws.com" } }, "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-east-1" + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.ap-east-1.amazonaws.com" + "url": "https://firehose.ap-northeast-2.amazonaws.com" } }, "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-east-1" + "Region": "ap-northeast-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.ap-east-1.api.aws" + "url": "https://firehose.ap-northeast-3.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "ap-northeast-3", "UseFIPS": false, - "Region": "ap-east-1" + "UseDualStack": false } }, { - "documentation": "For region ap-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.ap-east-1.amazonaws.com" + "url": "https://firehose.ap-south-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "ap-south-1", "UseFIPS": false, - "Region": "ap-east-1" + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://firehose.ap-southeast-1.amazonaws.com" } }, "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "cn-north-1" + "Region": "ap-southeast-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.cn-north-1.amazonaws.com.cn" + "url": "https://firehose.ap-southeast-2.amazonaws.com" } }, "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "cn-north-1" + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://firehose.ap-southeast-3.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "ap-southeast-3", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.cn-north-1.amazonaws.com.cn" + "url": "https://firehose.ca-central-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "ca-central-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.us-gov-west-1.api.aws" + "url": "https://firehose.eu-central-1.amazonaws.com" } }, "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-gov-west-1" + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.us-gov-west-1.amazonaws.com" + "url": "https://firehose.eu-north-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-gov-west-1" + "Region": "eu-north-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.us-gov-west-1.api.aws" + "url": "https://firehose.eu-south-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "eu-south-1", "UseFIPS": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.us-gov-west-1.amazonaws.com" + "url": "https://firehose.eu-west-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "eu-west-1", "UseFIPS": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.ap-southeast-1.api.aws" + "url": "https://firehose.eu-west-2.amazonaws.com" } }, "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-southeast-1" + "Region": "eu-west-2", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.ap-southeast-1.amazonaws.com" + "url": "https://firehose.eu-west-3.amazonaws.com" } }, "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-southeast-1" + "Region": "eu-west-3", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.ap-southeast-1.api.aws" + "url": "https://firehose.me-south-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "me-south-1", "UseFIPS": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.ap-southeast-1.amazonaws.com" + "url": "https://firehose.sa-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "sa-east-1", "UseFIPS": false, - "Region": "ap-southeast-1" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.ap-southeast-2.api.aws" + "url": "https://firehose.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "ap-southeast-2" + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.ap-southeast-2.amazonaws.com" + "url": "https://firehose-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": true, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.ap-southeast-2.api.aws" + "url": "https://firehose.us-east-2.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "us-east-2", "UseFIPS": false, - "Region": "ap-southeast-2" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.ap-southeast-2.amazonaws.com" + "url": "https://firehose-fips.us-east-2.amazonaws.com" } }, "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "ap-southeast-2" + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://firehose.us-west-1.amazonaws.com" + } }, "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "us-iso-east-1" + "Region": "us-west-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://firehose-fips.us-west-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-west-1", "UseFIPS": true, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://firehose.us-west-2.amazonaws.com" + } }, "params": { - "UseDualStack": true, + "Region": "us-west-2", "UseFIPS": false, - "Region": "us-iso-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.us-iso-east-1.c2s.ic.gov" + "url": "https://firehose-fips.us-west-2.amazonaws.com" } }, "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-iso-east-1" + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://firehose-fips.ap-southeast-3.api.aws" + "url": "https://firehose-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", "UseFIPS": true, - "Region": "ap-southeast-3" + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://firehose-fips.ap-southeast-3.amazonaws.com" + "url": "https://firehose.us-east-1.api.aws" } }, "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "ap-southeast-3" + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.ap-southeast-3.api.aws" + "url": "https://firehose.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "ap-southeast-3" + "UseDualStack": false } }, { - "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.ap-southeast-3.amazonaws.com" + "url": "https://firehose.cn-northwest-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": false, + "Region": "cn-northwest-1", "UseFIPS": false, - "Region": "ap-southeast-3" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://firehose-fips.us-east-1.api.aws" + "url": "https://firehose-fips.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.us-east-1.amazonaws.com" + "url": "https://firehose-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://firehose.us-east-1.api.aws" + "url": "https://firehose.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.us-east-1.amazonaws.com" + "url": "https://firehose.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.us-east-2.api.aws" + "url": "https://firehose-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-east-2" + "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.us-east-2.amazonaws.com" + "url": "https://firehose.us-gov-west-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "UseFIPS": true, - "Region": "us-east-2" + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.us-east-2.api.aws" + "url": "https://firehose-fips.us-gov-west-1.amazonaws.com" } }, "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "us-east-2" + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://firehose.us-east-2.amazonaws.com" + "url": "https://firehose-fips.us-gov-east-1.api.aws" } }, "params": { - "UseDualStack": false, - "UseFIPS": false, - "Region": "us-east-2" + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://firehose-fips.cn-northwest-1.api.amazonwebservices.com.cn" + "url": "https://firehose.us-gov-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "UseFIPS": true, - "Region": "cn-northwest-1" + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose-fips.cn-northwest-1.amazonaws.com.cn" + "url": "https://firehose.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-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": "us-iso-east-1", "UseFIPS": true, - "Region": "cn-northwest-1" + "UseDualStack": true } }, { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://firehose.cn-northwest-1.api.amazonwebservices.com.cn" + "url": "https://firehose-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": true, - "UseFIPS": false, - "Region": "cn-northwest-1" + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://firehose.cn-northwest-1.amazonaws.com.cn" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": false, - "Region": "cn-northwest-1" + "UseDualStack": true } }, { @@ -1558,9 +561,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -1571,9 +574,9 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { @@ -1582,9 +585,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { @@ -1595,22 +598,35 @@ } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "us-isob-east-1" + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { + "Region": "us-east-1", + "UseFIPS": false, "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { "UseFIPS": false, - "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1620,9 +636,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1632,11 +648,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff --git a/models/apis/guardduty/2017-11-28/api-2.json b/models/apis/guardduty/2017-11-28/api-2.json index 5b9961067b2..7ab3dc8d679 100644 --- a/models/apis/guardduty/2017-11-28/api-2.json +++ b/models/apis/guardduty/2017-11-28/api-2.json @@ -1571,6 +1571,10 @@ "AddonDetails":{ "shape":"AddonDetails", "locationName":"addonDetails" + }, + "ManagementType":{ + "shape":"ManagementType", + "locationName":"managementType" } } }, @@ -1616,7 +1620,8 @@ "CLUSTER_NAME", "RESOURCE_TYPE", "COVERAGE_STATUS", - "ADDON_VERSION" + "ADDON_VERSION", + "MANAGEMENT_TYPE" ] }, "CoverageFilterCriterionList":{ @@ -4738,6 +4743,13 @@ } } }, + "ManagementType":{ + "type":"string", + "enum":[ + "AUTO_MANAGED", + "MANUAL" + ] + }, "MapEquals":{ "type":"list", "member":{"shape":"ScanConditionPair"} diff --git a/models/apis/guardduty/2017-11-28/docs-2.json b/models/apis/guardduty/2017-11-28/docs-2.json index c5785040bbf..14707270a3e 100644 --- a/models/apis/guardduty/2017-11-28/docs-2.json +++ b/models/apis/guardduty/2017-11-28/docs-2.json @@ -23,12 +23,12 @@ "DescribeMalwareScans": "Returns a list of malware scans. Each member account can view the malware scans for their own accounts. An administrator can view the malware scans for all the member accounts.
There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.
", "DescribeOrganizationConfiguration": "Returns information about the account selected as the delegated administrator for GuardDuty.
There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.
", "DescribePublishingDestination": "Returns information about the publishing destination specified by the provided destinationId
.
Disables an Amazon Web Services account within the Organization as the GuardDuty delegated administrator.
", + "DisableOrganizationAdminAccount": "Removes the existing GuardDuty delegated administrator of the organization. Only the organization's management account can run this API operation.
", "DisassociateFromAdministratorAccount": "Disassociates the current GuardDuty member account from its administrator account.
When you disassociate an invited member from a GuardDuty delegated administrator, the member account details obtained from the CreateMembers API, including the associated email addresses, are retained. This is done so that the delegated administrator can invoke the InviteMembers API without the need to invoke the CreateMembers API again. To remove the details associated with a member account, the delegated administrator must invoke the DeleteMembers API.
With autoEnableOrganizationMembers
configuration for your organization set to ALL
, you'll receive an error if you attempt to disable GuardDuty in a member account.
Disassociates the current GuardDuty member account from its administrator account.
When you disassociate an invited member from a GuardDuty delegated administrator, the member account details obtained from the CreateMembers API, including the associated email addresses, are retained. This is done so that the delegated administrator can invoke the InviteMembers API without the need to invoke the CreateMembers API again. To remove the details associated with a member account, the delegated administrator must invoke the DeleteMembers API.
", - "DisassociateMembers": "Disassociates GuardDuty member accounts (from the current administrator account) specified by the account IDs.
When you disassociate an invited member from a GuardDuty delegated administrator, the member account details obtained from the CreateMembers API, including the associated email addresses, are retained. This is done so that the delegated administrator can invoke the InviteMembers API without the need to invoke the CreateMembers API again. To remove the details associated with a member account, the delegated administrator must invoke the DeleteMembers API.
With autoEnableOrganizationMembers
configuration for your organization set to ALL
, you'll receive an error if you attempt to disassociate a member account before removing them from your Amazon Web Services organization.
Enables an Amazon Web Services account within the organization as the GuardDuty delegated administrator.
", - "GetAdministratorAccount": "Provides the details for the GuardDuty administrator account associated with the current GuardDuty member account.
", + "DisassociateMembers": "Disassociates GuardDuty member accounts (from the current administrator account) specified by the account IDs.
When you disassociate an invited member from a GuardDuty delegated administrator, the member account details obtained from the CreateMembers API, including the associated email addresses, are retained. This is done so that the delegated administrator can invoke the InviteMembers API without the need to invoke the CreateMembers API again. To remove the details associated with a member account, the delegated administrator must invoke the DeleteMembers API.
With autoEnableOrganizationMembers
configuration for your organization set to ALL
, you'll receive an error if you attempt to disassociate a member account before removing them from your organization.
Designates an Amazon Web Services account within the organization as your GuardDuty delegated administrator. Only the organization's management account can run this API operation.
", + "GetAdministratorAccount": "Provides the details of the GuardDuty administrator account associated with the current GuardDuty member account.
If the organization's management account or a delegated administrator runs this API, it will return success (HTTP 200
) but no content.
Retrieves aggregated statistics for your account. If you are a GuardDuty administrator, you can retrieve the statistics for all the resources associated with the active member accounts in your organization who have enabled EKS Runtime Monitoring and have the GuardDuty agent running on their EKS nodes.
", "GetDetector": "Retrieves an Amazon GuardDuty detector specified by the detectorId.
There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.
", "GetFilter": "Returns the details of the filter specified by the filter name.
", @@ -43,7 +43,7 @@ "GetRemainingFreeTrialDays": "Provides the number of days left for each data source used in the free trial period.
", "GetThreatIntelSet": "Retrieves the ThreatIntelSet that is specified by the ThreatIntelSet ID.
", "GetUsageStatistics": "Lists Amazon GuardDuty usage statistics over the last 30 days for the specified detector ID. For newly enabled detectors or data sources, the cost returned will include only the usage so far under 30 days. This may differ from the cost metrics in the console, which project usage over 30 days to provide a monthly cost estimate. For more information, see Understanding How Usage Costs are Calculated.
", - "InviteMembers": "Invites Amazon Web Services accounts to become members of an organization administered by the Amazon Web Services account that invokes this API. If you are using Amazon Web Services Organizations to manager your GuardDuty environment, this step is not needed. For more information, see Managing accounts with Amazon Web Services Organizations.
To invite Amazon Web Services accounts, the first step is to ensure that GuardDuty has been enabled in the potential member accounts. You can now invoke this API to add accounts by invitation. The invited accounts can either accept or decline the invitation from their GuardDuty accounts. Each invited Amazon Web Services account can choose to accept the invitation from only one Amazon Web Services account. For more information, see Managing GuardDuty accounts by invitation.
After the invite has been accepted and you choose to disassociate a member account (by using DisassociateMembers) from your account, the details of the member account obtained by invoking CreateMembers, including the associated email addresses, will be retained. This is done so that you can invoke InviteMembers without the need to invoke CreateMembers again. To remove the details associated with a member account, you must also invoke DeleteMembers.
", + "InviteMembers": "Invites Amazon Web Services accounts to become members of an organization administered by the Amazon Web Services account that invokes this API. If you are using organizations to manager your GuardDuty environment, this step is not needed. For more information, see Managing accounts with organizations.
To invite Amazon Web Services accounts, the first step is to ensure that GuardDuty has been enabled in the potential member accounts. You can now invoke this API to add accounts by invitation. The invited accounts can either accept or decline the invitation from their GuardDuty accounts. Each invited Amazon Web Services account can choose to accept the invitation from only one Amazon Web Services account. For more information, see Managing GuardDuty accounts by invitation.
After the invite has been accepted and you choose to disassociate a member account (by using DisassociateMembers) from your account, the details of the member account obtained by invoking CreateMembers, including the associated email addresses, will be retained. This is done so that you can invoke InviteMembers without the need to invoke CreateMembers again. To remove the details associated with a member account, you must also invoke DeleteMembers.
", "ListCoverage": "Lists coverage details for your GuardDuty account. If you're a GuardDuty administrator, you can retrieve all resources associated with the active member accounts in your organization.
Make sure the accounts have EKS Runtime Monitoring enabled and GuardDuty agent running on their EKS nodes.
", "ListDetectors": "Lists detectorIds of all the existing Amazon GuardDuty detector resources.
", "ListFilters": "Returns a paginated list of the current filters.
", @@ -51,9 +51,9 @@ "ListIPSets": "Lists the IPSets of the GuardDuty service specified by the detector ID. If you use this operation from a member account, the IPSets returned are the IPSets from the associated administrator account.
", "ListInvitations": "Lists all GuardDuty membership invitations that were sent to the current Amazon Web Services account.
", "ListMembers": "Lists details about all member accounts for the current GuardDuty administrator account.
", - "ListOrganizationAdminAccounts": "Lists the accounts configured as GuardDuty delegated administrators.
", + "ListOrganizationAdminAccounts": "Lists the accounts configured as GuardDuty delegated administrators. Only the organization's management account can run this API operation.
", "ListPublishingDestinations": "Returns a list of publishing destinations associated with the specified detectorId
.
Lists tags for a resource. Tagging is currently supported for detectors, finding filters, IP sets, threat intel sets, and publishing destination, with a limit of 50 tags per each resource. When invoked, this operation returns all assigned tags for a given resource.
", + "ListTagsForResource": "Lists tags for a resource. Tagging is currently supported for detectors, finding filters, IP sets, threat intel sets, and publishing destination, with a limit of 50 tags per resource. When invoked, this operation returns all assigned tags for a given resource.
", "ListThreatIntelSets": "Lists the ThreatIntelSets of the GuardDuty service specified by the detector ID. If you use this operation from a member account, the ThreatIntelSets associated with the administrator account are returned.
", "StartMalwareScan": "Initiates the malware scan. Invoking this API will automatically create the Service-linked role in the corresponding account.
", "StartMonitoringMembers": "Turns on GuardDuty monitoring of the specified member accounts. Use this operation to restart monitoring of accounts that you stopped monitoring with the StopMonitoringMembers operation.
", @@ -67,7 +67,7 @@ "UpdateIPSet": "Updates the IPSet specified by the IPSet ID.
", "UpdateMalwareScanSettings": "Updates the malware scan settings.
There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.
", "UpdateMemberDetectors": "Contains information on member accounts to be updated.
There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.
", - "UpdateOrganizationConfiguration": "Configures the delegated administrator account with the provided values. You must provide the value for either autoEnableOrganizationMembers
or autoEnable
.
There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.
", + "UpdateOrganizationConfiguration": "Configures the delegated administrator account with the provided values. You must provide a value for either autoEnableOrganizationMembers
or autoEnable
, but not both.
There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.
", "UpdatePublishingDestination": "Updates information about the publishing destination specified by the destinationId
.
Updates the ThreatIntelSet specified by the ThreatIntelSet ID.
" }, @@ -227,8 +227,8 @@ "AutoEnableMembers": { "base": null, "refs": { - "DescribeOrganizationConfigurationResponse$AutoEnableOrganizationMembers": "Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization.
NEW
: Indicates that when a new account joins the organization, they will have GuardDuty enabled automatically.
ALL
: Indicates that all accounts in the Amazon Web Services Organization have GuardDuty enabled automatically. This includes NEW
accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.
NONE
: Indicates that GuardDuty will not be automatically enabled for any accounts in the organization. GuardDuty must be managed for each account individually by the administrator.
Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization.
NEW
: Indicates that when a new account joins the organization, they will have GuardDuty enabled automatically.
ALL
: Indicates that all accounts in the Amazon Web Services Organization have GuardDuty enabled automatically. This includes NEW
accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.
NONE
: Indicates that GuardDuty will not be automatically enabled for any accounts in the organization. GuardDuty must be managed for each account individually by the administrator.
Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization.
NEW
: Indicates that when a new account joins the organization, they will have GuardDuty enabled automatically.
ALL
: Indicates that all accounts in the organization have GuardDuty enabled automatically. This includes NEW
accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.
NONE
: Indicates that GuardDuty will not be automatically enabled for any account in the organization. The administrator must manage GuardDuty for each account in the organization individually.
Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. You must provide a value for either autoEnableOrganizationMembers
or autoEnable
.
Use one of the following configuration values for autoEnableOrganizationMembers
:
NEW
: Indicates that when a new account joins the organization, they will have GuardDuty enabled automatically.
ALL
: Indicates that all accounts in the organization have GuardDuty enabled automatically. This includes NEW
accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.
It may take up to 24 hours to update the configuration for all the member accounts.
NONE
: Indicates that GuardDuty will not be automatically enabled for any account in the organization. The administrator must manage GuardDuty for each account in the organization individually.
Flag to determine if the finding contains every single infected file-path and/or every threat.
", "UpdateDetectorRequest$Enable": "Specifies whether the detector is enabled or not enabled.
", "UpdateIPSetRequest$Activate": "The updated Boolean value that specifies whether the IPSet is active or not.
", - "UpdateOrganizationConfigurationRequest$AutoEnable": "Indicates whether to automatically enable member accounts in the organization.
Even though this is still supported, we recommend using AutoEnableOrganizationMembers
to achieve the similar results.
Indicates whether to automatically enable member accounts in the organization.
Even though this is still supported, we recommend using AutoEnableOrganizationMembers
to achieve the similar results. You must provide the value for either autoEnableOrganizationMembers
or autoEnable
.
The updated Boolean value that specifies whether the ThreateIntelSet is active or not.
" } }, @@ -1792,6 +1792,12 @@ "DataSourcesFreeTrial$MalwareProtection": "Describes whether Malware Protection is enabled as a data source.
" } }, + "ManagementType": { + "base": null, + "refs": { + "CoverageEksClusterDetails$ManagementType": "Indicates how the Amazon EKS add-on GuardDuty agent is managed for this EKS cluster.
AUTO_MANAGED
indicates GuardDuty deploys and manages updates for this resource.
MANUAL
indicates that you are responsible to deploy, update, and manage the Amazon EKS add-on GuardDuty agent for this resource.
The status of the additional configuration that will be configured for the organization.
", - "OrganizationAdditionalConfigurationResult$AutoEnable": "Describes how The status of the additional configuration that are configured for the member accounts within the organization.
If you set AutoEnable
to NEW
, a feature will be configured for only the new accounts when they join the organization.
If you set AutoEnable
to NONE
, no feature will be configured for the accounts when they join the organization.
The status of the feature that will be configured for the organization.
", - "OrganizationFeatureConfigurationResult$AutoEnable": "Describes how The status of the feature that are configured for the member accounts within the organization.
If you set AutoEnable
to NEW
, a feature will be configured for only the new accounts when they join the organization.
If you set AutoEnable
to NONE
, no feature will be configured for the accounts when they join the organization.
The status of the additional configuration that will be configured for the organization. Use one of the following values to configure the feature status for the entire organization:
NEW
: Indicates that when a new account joins the organization, they will have the additional configuration enabled automatically.
ALL
: Indicates that all accounts in the organization have the additional configuration enabled automatically. This includes NEW
accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.
It may take up to 24 hours to update the configuration for all the member accounts.
NONE
: Indicates that the additional configuration will not be automatically enabled for any account in the organization. The administrator must manage the additional configuration for each account individually.
Describes the status of the additional configuration that is configured for the member accounts within the organization. One of the following values is the status for the entire organization:
NEW
: Indicates that when a new account joins the organization, they will have the additional configuration enabled automatically.
ALL
: Indicates that all accounts in the organization have the additional configuration enabled automatically. This includes NEW
accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.
It may take up to 24 hours to update the configuration for all the member accounts.
NONE
: Indicates that the additional configuration will not be automatically enabled for any account in the organization. The administrator must manage the additional configuration for each account individually.
The status of the feature that will be configured for the organization. Use one of the following values to configure the feature status for the entire organization:
NEW
: Indicates that when a new account joins the organization, they will have the feature enabled automatically.
ALL
: Indicates that all accounts in the organization have the feature enabled automatically. This includes NEW
accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.
It may take up to 24 hours to update the configuration for all the member accounts.
NONE
: Indicates that the feature will not be automatically enabled for any account in the organization. The administrator must manage the feature for each account individually.
Describes the status of the feature that is configured for the member accounts within the organization.
NEW
: Indicates that when a new account joins the organization, they will have the feature enabled automatically.
ALL
: Indicates that all accounts in the organization have the feature enabled automatically. This includes NEW
accounts that join the organization and accounts that may have been suspended or removed from the organization in GuardDuty.
NONE
: Indicates that the feature will not be automatically enabled for any account in the organization. In this case, each account will be managed individually by the administrator.
A list of additional configurations which will be configured for the organization.
", + "base": "A list of additional configurations which will be configured for the organization.
", "refs": { "OrganizationAdditionalConfigurations$member": null } diff --git a/models/apis/internetmonitor/2021-06-03/endpoint-rule-set-1.json b/models/apis/internetmonitor/2021-06-03/endpoint-rule-set-1.json index 3de3fac3112..83d730fc6c7 100644 --- a/models/apis/internetmonitor/2021-06-03/endpoint-rule-set-1.json +++ b/models/apis/internetmonitor/2021-06-03/endpoint-rule-set-1.json @@ -7,6 +7,13 @@ "documentation": "The AWS region used to dispatch the request.", "type": "String" }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, "UseFIPS": { "builtIn": "AWS::UseFIPS", "required": true, @@ -50,6 +57,21 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported", "type": "error" }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, { "conditions": [], "endpoint": { @@ -95,16 +117,19 @@ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true ] } ], @@ -115,61 +140,51 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] - } - ], - "type": "tree", - "rules": [ + }, { - "conditions": [ + "fn": "booleanEquals", + "argv": [ + true, { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://internetmonitor-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://internetmonitor-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { "conditions": [], - "endpoint": { - "url": "https://internetmonitor.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } ] }, @@ -225,6 +240,58 @@ } ] }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://internetmonitor.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, { "conditions": [], "endpoint": { diff --git a/models/apis/internetmonitor/2021-06-03/endpoint-tests-1.json b/models/apis/internetmonitor/2021-06-03/endpoint-tests-1.json index 9bc42f05190..15406716b4b 100644 --- a/models/apis/internetmonitor/2021-06-03/endpoint-tests-1.json +++ b/models/apis/internetmonitor/2021-06-03/endpoint-tests-1.json @@ -9,7 +9,21 @@ }, "params": { "Region": "us-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { @@ -21,7 +35,21 @@ }, "params": { "Region": "us-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -33,7 +61,21 @@ }, "params": { "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false } }, { @@ -45,7 +87,21 @@ }, "params": { "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -57,7 +113,21 @@ }, "params": { "Region": "us-gov-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { @@ -69,7 +139,117 @@ }, "params": { "Region": "us-gov-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-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": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-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": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://internetmonitor.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -82,6 +262,7 @@ "params": { "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -94,6 +275,7 @@ }, "params": { "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -105,6 +287,19 @@ "params": { "Region": "us-east-1", "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } }, diff --git a/models/apis/ivs-realtime/2020-07-14/docs-2.json b/models/apis/ivs-realtime/2020-07-14/docs-2.json index caad87f88d3..49447ecc9ec 100644 --- a/models/apis/ivs-realtime/2020-07-14/docs-2.json +++ b/models/apis/ivs-realtime/2020-07-14/docs-2.json @@ -265,7 +265,7 @@ } }, "ParticipantToken": { - "base": "Object specifying a participant token in a stage.
", + "base": "Object specifying a participant token in a stage.
Important: Treat tokens as opaque; i.e., do not build functionality based on token contents. The format of tokens could change in the future.
", "refs": { "CreateParticipantTokenResponse$participantToken": "The participant token that was created.
", "ParticipantTokenList$member": null diff --git a/models/apis/simspaceweaver/2022-10-28/docs-2.json b/models/apis/simspaceweaver/2022-10-28/docs-2.json index 7efefd163b8..6ded9aebfda 100644 --- a/models/apis/simspaceweaver/2022-10-28/docs-2.json +++ b/models/apis/simspaceweaver/2022-10-28/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "SimSpace Weaver (SimSpace Weaver) is a managed service that you can use to build and operate large-scale spatial simulations in the Amazon Web Services Cloud. For example, you can create a digital twin of a city, crowd simulations with millions of people and objects, and massively multiplayer games with hundreds of thousands of connected players. For more information about SimSpace Weaver, see the SimSpace Weaver User Guide .
This API reference describes the API operations and data types that you can use to communicate directly with SimSpace Weaver.
SimSpace Weaver also provides the SimSpace Weaver app SDK, which you use for app development. The SimSpace Weaver app SDK API reference is included in the SimSpace Weaver app SDK documentation. This documentation is part of the SimSpace Weaver app SDK distributable package.
", + "service": "SimSpace Weaver (SimSpace Weaver) is a service that you can use to build and run large-scale spatial simulations in the Amazon Web Services Cloud. For example, you can create crowd simulations, large real-world environments, and immersive and interactive experiences. For more information about SimSpace Weaver, see the SimSpace Weaver User Guide .
This API reference describes the API operations and data types that you can use to communicate directly with SimSpace Weaver.
SimSpace Weaver also provides the SimSpace Weaver app SDK, which you use for app development. The SimSpace Weaver app SDK API reference is included in the SimSpace Weaver app SDK documentation. This documentation is part of the SimSpace Weaver app SDK distributable package.
", "operations": { "CreateSnapshot": "Creates a snapshot of the specified simulation. A snapshot is a file that contains simulation state data at a specific time. The state data saved in a snapshot includes entity data from the State Fabric, the simulation configuration specified in the schema, and the clock tick number. You can use the snapshot to initialize a new simulation. For more information about snapshots, see Snapshots in the SimSpace Weaver User Guide.
You specify a Destination
when you create a snapshot. The Destination
is the name of an Amazon S3 bucket and an optional ObjectKeyPrefix
. The ObjectKeyPrefix
is usually the name of a folder in the bucket. SimSpace Weaver creates a snapshot
folder inside the Destination
and places the snapshot file there.
The snapshot file is an Amazon S3 object. It has an object key with the form: object-key-prefix/snapshot/simulation-name-YYMMdd-HHmm-ss.zip
, where:
YY
is the 2-digit year
MM
is the 2-digit month
dd
is the 2-digit day of the month
HH
is the 2-digit hour (24-hour clock)
mm
is the 2-digit minutes
ss
is the 2-digit seconds
Deletes the instance of the given custom app.
", diff --git a/models/apis/xray/2016-04-12/api-2.json b/models/apis/xray/2016-04-12/api-2.json index 7d2f01c8ba3..ce4b78c4c63 100644 --- a/models/apis/xray/2016-04-12/api-2.json +++ b/models/apis/xray/2016-04-12/api-2.json @@ -1818,6 +1818,7 @@ "type":"structure", "members":{ "Id":{"shape":"TraceId"}, + "StartTime":{"shape":"Timestamp"}, "Duration":{"shape":"NullableDouble"}, "ResponseTime":{"shape":"NullableDouble"}, "HasFault":{"shape":"NullableBoolean"}, diff --git a/models/apis/xray/2016-04-12/docs-2.json b/models/apis/xray/2016-04-12/docs-2.json index 8fc8c309cc2..1634fdf243c 100644 --- a/models/apis/xray/2016-04-12/docs-2.json +++ b/models/apis/xray/2016-04-12/docs-2.json @@ -1460,6 +1460,7 @@ "Service$EndTime": "The end time of the last segment that the service generated.
", "TelemetryRecord$Timestamp": "", "TimeSeriesServiceStatistics$Timestamp": "Timestamp of the window for which statistics are aggregated.
", + "TraceSummary$StartTime": "The start time of a trace, based on the earliest trace segment start time.
", "TraceSummary$MatchedEventTime": "The matched time stamp of a defined event.
" } }, diff --git a/models/apis/xray/2016-04-12/endpoint-rule-set-1.json b/models/apis/xray/2016-04-12/endpoint-rule-set-1.json index 327f0b1148d..1d5bbea62cc 100644 --- a/models/apis/xray/2016-04-12/endpoint-rule-set-1.json +++ b/models/apis/xray/2016-04-12/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://xray-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://xray-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://xray-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://xray-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://xray.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://xray.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://xray.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://xray.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index da902e454b0..4217c18bbdf 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -4888,6 +4888,7 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, @@ -10593,6 +10594,11 @@ "us-east-1" : { } } }, + "managedblockchain-query" : { + "endpoints" : { + "us-east-1" : { } + } + }, "marketplacecommerceanalytics" : { "endpoints" : { "us-east-1" : { } diff --git a/service/cloud9/api.go b/service/cloud9/api.go index 1a71a210d70..fefe84ce383 100644 --- a/service/cloud9/api.go +++ b/service/cloud9/api.go @@ -1611,6 +1611,9 @@ type CreateEnvironmentEC2Input struct { // then become the default AMI, which is used to launch your instance if no // parameter is explicitly defined. // + // Since Ubuntu 18.04 has ended standard support as of May 31, 2023, we recommend + // you choose Ubuntu 22.04. + // // AMI aliases // // * Amazon Linux (default): amazonlinux-1-x86_64 diff --git a/service/drs/api.go b/service/drs/api.go index cc059979d0d..583ccd6b284 100644 --- a/service/drs/api.go +++ b/service/drs/api.go @@ -596,6 +596,99 @@ func (c *Drs) DeleteJobWithContext(ctx aws.Context, input *DeleteJobInput, opts return out, req.Send() } +const opDeleteLaunchAction = "DeleteLaunchAction" + +// DeleteLaunchActionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLaunchAction operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteLaunchAction for more information on using the DeleteLaunchAction +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteLaunchActionRequest method. +// req, resp := client.DeleteLaunchActionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/DeleteLaunchAction +func (c *Drs) DeleteLaunchActionRequest(input *DeleteLaunchActionInput) (req *request.Request, output *DeleteLaunchActionOutput) { + op := &request.Operation{ + Name: opDeleteLaunchAction, + HTTPMethod: "POST", + HTTPPath: "/DeleteLaunchAction", + } + + if input == nil { + input = &DeleteLaunchActionInput{} + } + + output = &DeleteLaunchActionOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteLaunchAction API operation for Elastic Disaster Recovery Service. +// +// Deletes a resource launch action. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Elastic Disaster Recovery Service's +// API operation DeleteLaunchAction for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource for this operation was not found. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the AWS service. +// +// - UninitializedAccountException +// The account performing the request has not been initialized. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/DeleteLaunchAction +func (c *Drs) DeleteLaunchAction(input *DeleteLaunchActionInput) (*DeleteLaunchActionOutput, error) { + req, out := c.DeleteLaunchActionRequest(input) + return out, req.Send() +} + +// DeleteLaunchActionWithContext is the same as DeleteLaunchAction with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteLaunchAction for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Drs) DeleteLaunchActionWithContext(ctx aws.Context, input *DeleteLaunchActionInput, opts ...request.Option) (*DeleteLaunchActionOutput, error) { + req, out := c.DeleteLaunchActionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteLaunchConfigurationTemplate = "DeleteLaunchConfigurationTemplate" // DeleteLaunchConfigurationTemplateRequest generates a "aws/request.Request" representing the @@ -3072,6 +3165,155 @@ func (c *Drs) ListExtensibleSourceServersPagesWithContext(ctx aws.Context, input return p.Err() } +const opListLaunchActions = "ListLaunchActions" + +// ListLaunchActionsRequest generates a "aws/request.Request" representing the +// client's request for the ListLaunchActions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListLaunchActions for more information on using the ListLaunchActions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListLaunchActionsRequest method. +// req, resp := client.ListLaunchActionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ListLaunchActions +func (c *Drs) ListLaunchActionsRequest(input *ListLaunchActionsInput) (req *request.Request, output *ListLaunchActionsOutput) { + op := &request.Operation{ + Name: opListLaunchActions, + HTTPMethod: "POST", + HTTPPath: "/ListLaunchActions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLaunchActionsInput{} + } + + output = &ListLaunchActionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLaunchActions API operation for Elastic Disaster Recovery Service. +// +// Lists resource launch actions. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Elastic Disaster Recovery Service's +// API operation ListLaunchActions for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource for this operation was not found. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ServiceQuotaExceededException +// The request could not be completed because its exceeded the service quota. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - UninitializedAccountException +// The account performing the request has not been initialized. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ListLaunchActions +func (c *Drs) ListLaunchActions(input *ListLaunchActionsInput) (*ListLaunchActionsOutput, error) { + req, out := c.ListLaunchActionsRequest(input) + return out, req.Send() +} + +// ListLaunchActionsWithContext is the same as ListLaunchActions with the addition of +// the ability to pass a context and additional request options. +// +// See ListLaunchActions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Drs) ListLaunchActionsWithContext(ctx aws.Context, input *ListLaunchActionsInput, opts ...request.Option) (*ListLaunchActionsOutput, error) { + req, out := c.ListLaunchActionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLaunchActionsPages iterates over the pages of a ListLaunchActions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLaunchActions method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListLaunchActions operation. +// pageNum := 0 +// err := client.ListLaunchActionsPages(params, +// func(page *drs.ListLaunchActionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Drs) ListLaunchActionsPages(input *ListLaunchActionsInput, fn func(*ListLaunchActionsOutput, bool) bool) error { + return c.ListLaunchActionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLaunchActionsPagesWithContext same as ListLaunchActionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Drs) ListLaunchActionsPagesWithContext(ctx aws.Context, input *ListLaunchActionsInput, fn func(*ListLaunchActionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListLaunchActionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLaunchActionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLaunchActionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListStagingAccounts = "ListStagingAccounts" // ListStagingAccountsRequest generates a "aws/request.Request" representing the @@ -3313,66 +3555,57 @@ func (c *Drs) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsFor return out, req.Send() } -const opRetryDataReplication = "RetryDataReplication" +const opPutLaunchAction = "PutLaunchAction" -// RetryDataReplicationRequest generates a "aws/request.Request" representing the -// client's request for the RetryDataReplication operation. The "output" return +// PutLaunchActionRequest generates a "aws/request.Request" representing the +// client's request for the PutLaunchAction operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See RetryDataReplication for more information on using the RetryDataReplication +// See PutLaunchAction for more information on using the PutLaunchAction // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the RetryDataReplicationRequest method. -// req, resp := client.RetryDataReplicationRequest(params) +// // Example sending a request using the PutLaunchActionRequest method. +// req, resp := client.PutLaunchActionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/RetryDataReplication -// -// Deprecated: WARNING: RetryDataReplication is deprecated -func (c *Drs) RetryDataReplicationRequest(input *RetryDataReplicationInput) (req *request.Request, output *RetryDataReplicationOutput) { - if c.Client.Config.Logger != nil { - c.Client.Config.Logger.Log("This operation, RetryDataReplication, has been deprecated") - } +// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/PutLaunchAction +func (c *Drs) PutLaunchActionRequest(input *PutLaunchActionInput) (req *request.Request, output *PutLaunchActionOutput) { op := &request.Operation{ - Name: opRetryDataReplication, + Name: opPutLaunchAction, HTTPMethod: "POST", - HTTPPath: "/RetryDataReplication", + HTTPPath: "/PutLaunchAction", } if input == nil { - input = &RetryDataReplicationInput{} + input = &PutLaunchActionInput{} } - output = &RetryDataReplicationOutput{} + output = &PutLaunchActionOutput{} req = c.newRequest(op, input, output) return } -// RetryDataReplication API operation for Elastic Disaster Recovery Service. +// PutLaunchAction API operation for Elastic Disaster Recovery Service. // -// WARNING: RetryDataReplication is deprecated. Causes the data replication -// initiation sequence to begin immediately upon next Handshake for the specified -// Source Server ID, regardless of when the previous initiation started. This -// command will work only if the Source Server is stalled or is in a DISCONNECTED -// or STOPPED state. +// Puts a resource launch action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Elastic Disaster Recovery Service's -// API operation RetryDataReplication for usage and error information. +// API operation PutLaunchAction for usage and error information. // // Returned Error Types: // @@ -3383,6 +3616,10 @@ func (c *Drs) RetryDataReplicationRequest(input *RetryDataReplicationInput) (req // The request processing has failed because of an unknown error, exception // or failure. // +// - ConflictException +// The request could not be completed due to a conflict with the current state +// of the target resource. +// // - ThrottlingException // The request was denied due to request throttling. // @@ -3392,74 +3629,175 @@ func (c *Drs) RetryDataReplicationRequest(input *RetryDataReplicationInput) (req // - UninitializedAccountException // The account performing the request has not been initialized. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/RetryDataReplication -// -// Deprecated: WARNING: RetryDataReplication is deprecated -func (c *Drs) RetryDataReplication(input *RetryDataReplicationInput) (*RetryDataReplicationOutput, error) { - req, out := c.RetryDataReplicationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/PutLaunchAction +func (c *Drs) PutLaunchAction(input *PutLaunchActionInput) (*PutLaunchActionOutput, error) { + req, out := c.PutLaunchActionRequest(input) return out, req.Send() } -// RetryDataReplicationWithContext is the same as RetryDataReplication with the addition of +// PutLaunchActionWithContext is the same as PutLaunchAction with the addition of // the ability to pass a context and additional request options. // -// See RetryDataReplication for details on how to use this API operation. +// See PutLaunchAction for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -// -// Deprecated: WARNING: RetryDataReplication is deprecated -func (c *Drs) RetryDataReplicationWithContext(ctx aws.Context, input *RetryDataReplicationInput, opts ...request.Option) (*RetryDataReplicationOutput, error) { - req, out := c.RetryDataReplicationRequest(input) +func (c *Drs) PutLaunchActionWithContext(ctx aws.Context, input *PutLaunchActionInput, opts ...request.Option) (*PutLaunchActionOutput, error) { + req, out := c.PutLaunchActionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opReverseReplication = "ReverseReplication" +const opRetryDataReplication = "RetryDataReplication" -// ReverseReplicationRequest generates a "aws/request.Request" representing the -// client's request for the ReverseReplication operation. The "output" return +// RetryDataReplicationRequest generates a "aws/request.Request" representing the +// client's request for the RetryDataReplication operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ReverseReplication for more information on using the ReverseReplication +// See RetryDataReplication for more information on using the RetryDataReplication // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ReverseReplicationRequest method. -// req, resp := client.ReverseReplicationRequest(params) +// // Example sending a request using the RetryDataReplicationRequest method. +// req, resp := client.RetryDataReplicationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ReverseReplication -func (c *Drs) ReverseReplicationRequest(input *ReverseReplicationInput) (req *request.Request, output *ReverseReplicationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/RetryDataReplication +// +// Deprecated: WARNING: RetryDataReplication is deprecated +func (c *Drs) RetryDataReplicationRequest(input *RetryDataReplicationInput) (req *request.Request, output *RetryDataReplicationOutput) { + if c.Client.Config.Logger != nil { + c.Client.Config.Logger.Log("This operation, RetryDataReplication, has been deprecated") + } op := &request.Operation{ - Name: opReverseReplication, + Name: opRetryDataReplication, HTTPMethod: "POST", - HTTPPath: "/ReverseReplication", + HTTPPath: "/RetryDataReplication", } if input == nil { - input = &ReverseReplicationInput{} + input = &RetryDataReplicationInput{} } - output = &ReverseReplicationOutput{} + output = &RetryDataReplicationOutput{} req = c.newRequest(op, input, output) return } -// ReverseReplication API operation for Elastic Disaster Recovery Service. +// RetryDataReplication API operation for Elastic Disaster Recovery Service. +// +// WARNING: RetryDataReplication is deprecated. Causes the data replication +// initiation sequence to begin immediately upon next Handshake for the specified +// Source Server ID, regardless of when the previous initiation started. This +// command will work only if the Source Server is stalled or is in a DISCONNECTED +// or STOPPED state. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Elastic Disaster Recovery Service's +// API operation RetryDataReplication for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource for this operation was not found. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by the AWS service. +// +// - UninitializedAccountException +// The account performing the request has not been initialized. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/RetryDataReplication +// +// Deprecated: WARNING: RetryDataReplication is deprecated +func (c *Drs) RetryDataReplication(input *RetryDataReplicationInput) (*RetryDataReplicationOutput, error) { + req, out := c.RetryDataReplicationRequest(input) + return out, req.Send() +} + +// RetryDataReplicationWithContext is the same as RetryDataReplication with the addition of +// the ability to pass a context and additional request options. +// +// See RetryDataReplication for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +// +// Deprecated: WARNING: RetryDataReplication is deprecated +func (c *Drs) RetryDataReplicationWithContext(ctx aws.Context, input *RetryDataReplicationInput, opts ...request.Option) (*RetryDataReplicationOutput, error) { + req, out := c.RetryDataReplicationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opReverseReplication = "ReverseReplication" + +// ReverseReplicationRequest generates a "aws/request.Request" representing the +// client's request for the ReverseReplication operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ReverseReplication for more information on using the ReverseReplication +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ReverseReplicationRequest method. +// req, resp := client.ReverseReplicationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ReverseReplication +func (c *Drs) ReverseReplicationRequest(input *ReverseReplicationInput) (req *request.Request, output *ReverseReplicationOutput) { + op := &request.Operation{ + Name: opReverseReplication, + HTTPMethod: "POST", + HTTPPath: "/ReverseReplication", + } + + if input == nil { + input = &ReverseReplicationInput{} + } + + output = &ReverseReplicationOutput{} + req = c.newRequest(op, input, output) + return +} + +// ReverseReplication API operation for Elastic Disaster Recovery Service. // // Start replication to origin / target region - applies only to protected instances // that originated in EC2. For recovery instances on target region - starts @@ -5539,6 +5877,9 @@ type CreateLaunchConfigurationTemplateInput struct { // Licensing. Licensing *Licensing `locationName:"licensing" type:"structure"` + // Whether we want to activate post-launch actions. + PostLaunchEnabled *bool `locationName:"postLaunchEnabled" type:"boolean"` + // Request to associate tags during creation of a Launch Configuration Template. // // Tags is a sensitive parameter and its value will be @@ -5611,6 +5952,12 @@ func (s *CreateLaunchConfigurationTemplateInput) SetLicensing(v *Licensing) *Cre return s } +// SetPostLaunchEnabled sets the PostLaunchEnabled field's value. +func (s *CreateLaunchConfigurationTemplateInput) SetPostLaunchEnabled(v bool) *CreateLaunchConfigurationTemplateInput { + s.PostLaunchEnabled = &v + return s +} + // SetTags sets the Tags field's value. func (s *CreateLaunchConfigurationTemplateInput) SetTags(v map[string]*string) *CreateLaunchConfigurationTemplateInput { s.Tags = v @@ -6583,6 +6930,91 @@ func (s DeleteJobOutput) GoString() string { return s.String() } +type DeleteLaunchActionInput struct { + _ struct{} `type:"structure"` + + // Launch action Id. + // + // ActionId is a required field + ActionId *string `locationName:"actionId" min:"1" type:"string" required:"true"` + + // Launch configuration template Id or Source Server Id + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLaunchActionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLaunchActionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLaunchActionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLaunchActionInput"} + if s.ActionId == nil { + invalidParams.Add(request.NewErrParamRequired("ActionId")) + } + if s.ActionId != nil && len(*s.ActionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionId", 1)) + } + if s.ResourceId == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionId sets the ActionId field's value. +func (s *DeleteLaunchActionInput) SetActionId(v string) *DeleteLaunchActionInput { + s.ActionId = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *DeleteLaunchActionInput) SetResourceId(v string) *DeleteLaunchActionInput { + s.ResourceId = &v + return s +} + +type DeleteLaunchActionOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLaunchActionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteLaunchActionOutput) GoString() string { + return s.String() +} + type DeleteLaunchConfigurationTemplateInput struct { _ struct{} `type:"structure"` @@ -8691,6 +9123,9 @@ type GetLaunchConfigurationOutput struct { // The name of the launch configuration. Name *string `locationName:"name" type:"string"` + // Whether we want to activate post-launch actions for the Source Server. + PostLaunchEnabled *bool `locationName:"postLaunchEnabled" type:"boolean"` + // The ID of the Source Server for this launch configuration. SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"` @@ -8753,6 +9188,12 @@ func (s *GetLaunchConfigurationOutput) SetName(v string) *GetLaunchConfiguration return s } +// SetPostLaunchEnabled sets the PostLaunchEnabled field's value. +func (s *GetLaunchConfigurationOutput) SetPostLaunchEnabled(v bool) *GetLaunchConfigurationOutput { + s.PostLaunchEnabled = &v + return s +} + // SetSourceServerID sets the SourceServerID field's value. func (s *GetLaunchConfigurationOutput) SetSourceServerID(v string) *GetLaunchConfigurationOutput { s.SourceServerID = &v @@ -9415,6 +9856,315 @@ func (s *JobLogEventData) SetTargetInstanceID(v string) *JobLogEventData { return s } +// Launch action. +type LaunchAction struct { + _ struct{} `type:"structure"` + + // Launch action code. + ActionCode *string `locationName:"actionCode" min:"1" type:"string"` + + // Launch action Id. + ActionId *string `locationName:"actionId" min:"1" type:"string"` + + // Launch action version. + ActionVersion *string `locationName:"actionVersion" min:"1" type:"string"` + + // Whether the launch action is active. + Active *bool `locationName:"active" type:"boolean"` + + // Launch action category. + Category *string `locationName:"category" type:"string" enum:"LaunchActionCategory"` + + // Launch action description. + Description *string `locationName:"description" type:"string"` + + // Launch action name. + Name *string `locationName:"name" min:"1" type:"string"` + + // Whether the launch will not be marked as failed if this action fails. + Optional *bool `locationName:"optional" type:"boolean"` + + // Launch action order. + Order *int64 `locationName:"order" min:"2" type:"integer"` + + // Launch action parameters. + Parameters map[string]*LaunchActionParameter `locationName:"parameters" type:"map"` + + // Launch action type. + Type *string `locationName:"type" type:"string" enum:"LaunchActionType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchAction) GoString() string { + return s.String() +} + +// SetActionCode sets the ActionCode field's value. +func (s *LaunchAction) SetActionCode(v string) *LaunchAction { + s.ActionCode = &v + return s +} + +// SetActionId sets the ActionId field's value. +func (s *LaunchAction) SetActionId(v string) *LaunchAction { + s.ActionId = &v + return s +} + +// SetActionVersion sets the ActionVersion field's value. +func (s *LaunchAction) SetActionVersion(v string) *LaunchAction { + s.ActionVersion = &v + return s +} + +// SetActive sets the Active field's value. +func (s *LaunchAction) SetActive(v bool) *LaunchAction { + s.Active = &v + return s +} + +// SetCategory sets the Category field's value. +func (s *LaunchAction) SetCategory(v string) *LaunchAction { + s.Category = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *LaunchAction) SetDescription(v string) *LaunchAction { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *LaunchAction) SetName(v string) *LaunchAction { + s.Name = &v + return s +} + +// SetOptional sets the Optional field's value. +func (s *LaunchAction) SetOptional(v bool) *LaunchAction { + s.Optional = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *LaunchAction) SetOrder(v int64) *LaunchAction { + s.Order = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *LaunchAction) SetParameters(v map[string]*LaunchActionParameter) *LaunchAction { + s.Parameters = v + return s +} + +// SetType sets the Type field's value. +func (s *LaunchAction) SetType(v string) *LaunchAction { + s.Type = &v + return s +} + +// Launch action parameter. +type LaunchActionParameter struct { + _ struct{} `type:"structure"` + + // Type. + Type *string `locationName:"type" type:"string" enum:"LaunchActionParameterType"` + + // Value. + Value *string `locationName:"value" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchActionParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchActionParameter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LaunchActionParameter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LaunchActionParameter"} + if s.Value != nil && len(*s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetType sets the Type field's value. +func (s *LaunchActionParameter) SetType(v string) *LaunchActionParameter { + s.Type = &v + return s +} + +// SetValue sets the Value field's value. +func (s *LaunchActionParameter) SetValue(v string) *LaunchActionParameter { + s.Value = &v + return s +} + +// Launch action run. +type LaunchActionRun struct { + _ struct{} `type:"structure"` + + // Action. + Action *LaunchAction `locationName:"action" type:"structure"` + + // Failure reason. + FailureReason *string `locationName:"failureReason" type:"string"` + + // Run Id. + RunId *string `locationName:"runId" min:"1" type:"string"` + + // Run status. + Status *string `locationName:"status" type:"string" enum:"LaunchActionRunStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchActionRun) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchActionRun) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *LaunchActionRun) SetAction(v *LaunchAction) *LaunchActionRun { + s.Action = v + return s +} + +// SetFailureReason sets the FailureReason field's value. +func (s *LaunchActionRun) SetFailureReason(v string) *LaunchActionRun { + s.FailureReason = &v + return s +} + +// SetRunId sets the RunId field's value. +func (s *LaunchActionRun) SetRunId(v string) *LaunchActionRun { + s.RunId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *LaunchActionRun) SetStatus(v string) *LaunchActionRun { + s.Status = &v + return s +} + +// Resource launch actions filter. +type LaunchActionsRequestFilters struct { + _ struct{} `type:"structure"` + + // Launch actions Ids. + ActionIds []*string `locationName:"actionIds" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchActionsRequestFilters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchActionsRequestFilters) GoString() string { + return s.String() +} + +// SetActionIds sets the ActionIds field's value. +func (s *LaunchActionsRequestFilters) SetActionIds(v []*string) *LaunchActionsRequestFilters { + s.ActionIds = v + return s +} + +// Launch actions status. +type LaunchActionsStatus struct { + _ struct{} `type:"structure"` + + // List of post launch action status. + Runs []*LaunchActionRun `locationName:"runs" type:"list"` + + // Time where the AWS Systems Manager was detected as running on the launched + // instance. + SsmAgentDiscoveryDatetime *string `locationName:"ssmAgentDiscoveryDatetime" min:"19" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchActionsStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LaunchActionsStatus) GoString() string { + return s.String() +} + +// SetRuns sets the Runs field's value. +func (s *LaunchActionsStatus) SetRuns(v []*LaunchActionRun) *LaunchActionsStatus { + s.Runs = v + return s +} + +// SetSsmAgentDiscoveryDatetime sets the SsmAgentDiscoveryDatetime field's value. +func (s *LaunchActionsStatus) SetSsmAgentDiscoveryDatetime(v string) *LaunchActionsStatus { + s.SsmAgentDiscoveryDatetime = &v + return s +} + // Account level Launch Configuration Template. type LaunchConfigurationTemplate struct { _ struct{} `type:"structure"` @@ -9440,6 +10190,9 @@ type LaunchConfigurationTemplate struct { // Licensing. Licensing *Licensing `locationName:"licensing" type:"structure"` + // Post-launch actions activated. + PostLaunchEnabled *bool `locationName:"postLaunchEnabled" type:"boolean"` + // Tags of the Launch Configuration Template. // // Tags is a sensitive parameter and its value will be @@ -9511,6 +10264,12 @@ func (s *LaunchConfigurationTemplate) SetLicensing(v *Licensing) *LaunchConfigur return s } +// SetPostLaunchEnabled sets the PostLaunchEnabled field's value. +func (s *LaunchConfigurationTemplate) SetPostLaunchEnabled(v bool) *LaunchConfigurationTemplate { + s.PostLaunchEnabled = &v + return s +} + // SetTags sets the Tags field's value. func (s *LaunchConfigurationTemplate) SetTags(v map[string]*string) *LaunchConfigurationTemplate { s.Tags = v @@ -9751,16 +10510,126 @@ func (s ListExtensibleSourceServersInput) GoString() string { } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListExtensibleSourceServersInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListExtensibleSourceServersInput"} +func (s *ListExtensibleSourceServersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExtensibleSourceServersInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.StagingAccountID == nil { + invalidParams.Add(request.NewErrParamRequired("StagingAccountID")) + } + if s.StagingAccountID != nil && len(*s.StagingAccountID) < 12 { + invalidParams.Add(request.NewErrParamMinLen("StagingAccountID", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListExtensibleSourceServersInput) SetMaxResults(v int64) *ListExtensibleSourceServersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExtensibleSourceServersInput) SetNextToken(v string) *ListExtensibleSourceServersInput { + s.NextToken = &v + return s +} + +// SetStagingAccountID sets the StagingAccountID field's value. +func (s *ListExtensibleSourceServersInput) SetStagingAccountID(v string) *ListExtensibleSourceServersInput { + s.StagingAccountID = &v + return s +} + +type ListExtensibleSourceServersOutput struct { + _ struct{} `type:"structure"` + + // A list of source servers on a staging Account that are extensible. + Items []*StagingSourceServer `locationName:"items" type:"list"` + + // The token of the next extensible source server to retrieve. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExtensibleSourceServersOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExtensibleSourceServersOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListExtensibleSourceServersOutput) SetItems(v []*StagingSourceServer) *ListExtensibleSourceServersOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExtensibleSourceServersOutput) SetNextToken(v string) *ListExtensibleSourceServersOutput { + s.NextToken = &v + return s +} + +type ListLaunchActionsInput struct { + _ struct{} `type:"structure"` + + // Filters to apply when listing resource launch actions. + Filters *LaunchActionsRequestFilters `locationName:"filters" type:"structure"` + + // Maximum amount of items to return when listing resource launch actions. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // Next token to use when listing resource launch actions. + NextToken *string `locationName:"nextToken" type:"string"` + + // Launch configuration template Id or Source Server Id + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLaunchActionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListLaunchActionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLaunchActionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLaunchActionsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.StagingAccountID == nil { - invalidParams.Add(request.NewErrParamRequired("StagingAccountID")) - } - if s.StagingAccountID != nil && len(*s.StagingAccountID) < 12 { - invalidParams.Add(request.NewErrParamMinLen("StagingAccountID", 12)) + if s.ResourceId == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if invalidParams.Len() > 0 { @@ -9769,31 +10638,37 @@ func (s *ListExtensibleSourceServersInput) Validate() error { return nil } +// SetFilters sets the Filters field's value. +func (s *ListLaunchActionsInput) SetFilters(v *LaunchActionsRequestFilters) *ListLaunchActionsInput { + s.Filters = v + return s +} + // SetMaxResults sets the MaxResults field's value. -func (s *ListExtensibleSourceServersInput) SetMaxResults(v int64) *ListExtensibleSourceServersInput { +func (s *ListLaunchActionsInput) SetMaxResults(v int64) *ListLaunchActionsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListExtensibleSourceServersInput) SetNextToken(v string) *ListExtensibleSourceServersInput { +func (s *ListLaunchActionsInput) SetNextToken(v string) *ListLaunchActionsInput { s.NextToken = &v return s } -// SetStagingAccountID sets the StagingAccountID field's value. -func (s *ListExtensibleSourceServersInput) SetStagingAccountID(v string) *ListExtensibleSourceServersInput { - s.StagingAccountID = &v +// SetResourceId sets the ResourceId field's value. +func (s *ListLaunchActionsInput) SetResourceId(v string) *ListLaunchActionsInput { + s.ResourceId = &v return s } -type ListExtensibleSourceServersOutput struct { +type ListLaunchActionsOutput struct { _ struct{} `type:"structure"` - // A list of source servers on a staging Account that are extensible. - Items []*StagingSourceServer `locationName:"items" type:"list"` + // List of resource launch actions. + Items []*LaunchAction `locationName:"items" type:"list"` - // The token of the next extensible source server to retrieve. + // Next token returned when listing resource launch actions. NextToken *string `locationName:"nextToken" type:"string"` } @@ -9802,7 +10677,7 @@ type ListExtensibleSourceServersOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListExtensibleSourceServersOutput) String() string { +func (s ListLaunchActionsOutput) String() string { return awsutil.Prettify(s) } @@ -9811,18 +10686,18 @@ func (s ListExtensibleSourceServersOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListExtensibleSourceServersOutput) GoString() string { +func (s ListLaunchActionsOutput) GoString() string { return s.String() } // SetItems sets the Items field's value. -func (s *ListExtensibleSourceServersOutput) SetItems(v []*StagingSourceServer) *ListExtensibleSourceServersOutput { +func (s *ListLaunchActionsOutput) SetItems(v []*LaunchAction) *ListLaunchActionsOutput { s.Items = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListExtensibleSourceServersOutput) SetNextToken(v string) *ListExtensibleSourceServersOutput { +func (s *ListLaunchActionsOutput) SetNextToken(v string) *ListLaunchActionsOutput { s.NextToken = &v return s } @@ -10263,6 +11138,9 @@ func (s *ParticipatingResourceID) SetSourceNetworkID(v string) *ParticipatingRes type ParticipatingServer struct { _ struct{} `type:"structure"` + // The post-launch action runs of a participating server. + LaunchActionsStatus *LaunchActionsStatus `locationName:"launchActionsStatus" type:"structure"` + // The launch status of a participating server. LaunchStatus *string `locationName:"launchStatus" type:"string" enum:"LaunchStatus"` @@ -10291,6 +11169,12 @@ func (s ParticipatingServer) GoString() string { return s.String() } +// SetLaunchActionsStatus sets the LaunchActionsStatus field's value. +func (s *ParticipatingServer) SetLaunchActionsStatus(v *LaunchActionsStatus) *ParticipatingServer { + s.LaunchActionsStatus = v + return s +} + // SetLaunchStatus sets the LaunchStatus field's value. func (s *ParticipatingServer) SetLaunchStatus(v string) *ParticipatingServer { s.LaunchStatus = &v @@ -10309,6 +11193,337 @@ func (s *ParticipatingServer) SetSourceServerID(v string) *ParticipatingServer { return s } +type PutLaunchActionInput struct { + _ struct{} `type:"structure"` + + // Launch action code. + // + // ActionCode is a required field + ActionCode *string `locationName:"actionCode" min:"1" type:"string" required:"true"` + + // Launch action Id. + // + // ActionId is a required field + ActionId *string `locationName:"actionId" min:"1" type:"string" required:"true"` + + // Launch action version. + // + // ActionVersion is a required field + ActionVersion *string `locationName:"actionVersion" min:"1" type:"string" required:"true"` + + // Whether the launch action is active. + // + // Active is a required field + Active *bool `locationName:"active" type:"boolean" required:"true"` + + // Launch action category. + // + // Category is a required field + Category *string `locationName:"category" type:"string" required:"true" enum:"LaunchActionCategory"` + + // Launch action description. + Description *string `locationName:"description" type:"string"` + + // Launch action name. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Whether the launch will not be marked as failed if this action fails. + // + // Optional is a required field + Optional *bool `locationName:"optional" type:"boolean" required:"true"` + + // Launch action order. + // + // Order is a required field + Order *int64 `locationName:"order" min:"2" type:"integer" required:"true"` + + // Launch action parameters. + Parameters map[string]*LaunchActionParameter `locationName:"parameters" type:"map"` + + // Launch configuration template Id or Source Server Id + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutLaunchActionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutLaunchActionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutLaunchActionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutLaunchActionInput"} + if s.ActionCode == nil { + invalidParams.Add(request.NewErrParamRequired("ActionCode")) + } + if s.ActionCode != nil && len(*s.ActionCode) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionCode", 1)) + } + if s.ActionId == nil { + invalidParams.Add(request.NewErrParamRequired("ActionId")) + } + if s.ActionId != nil && len(*s.ActionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionId", 1)) + } + if s.ActionVersion == nil { + invalidParams.Add(request.NewErrParamRequired("ActionVersion")) + } + if s.ActionVersion != nil && len(*s.ActionVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ActionVersion", 1)) + } + if s.Active == nil { + invalidParams.Add(request.NewErrParamRequired("Active")) + } + if s.Category == nil { + invalidParams.Add(request.NewErrParamRequired("Category")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Optional == nil { + invalidParams.Add(request.NewErrParamRequired("Optional")) + } + if s.Order == nil { + invalidParams.Add(request.NewErrParamRequired("Order")) + } + if s.Order != nil && *s.Order < 2 { + invalidParams.Add(request.NewErrParamMinValue("Order", 2)) + } + if s.ResourceId == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceId")) + } + if s.Parameters != nil { + for i, v := range s.Parameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Parameters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActionCode sets the ActionCode field's value. +func (s *PutLaunchActionInput) SetActionCode(v string) *PutLaunchActionInput { + s.ActionCode = &v + return s +} + +// SetActionId sets the ActionId field's value. +func (s *PutLaunchActionInput) SetActionId(v string) *PutLaunchActionInput { + s.ActionId = &v + return s +} + +// SetActionVersion sets the ActionVersion field's value. +func (s *PutLaunchActionInput) SetActionVersion(v string) *PutLaunchActionInput { + s.ActionVersion = &v + return s +} + +// SetActive sets the Active field's value. +func (s *PutLaunchActionInput) SetActive(v bool) *PutLaunchActionInput { + s.Active = &v + return s +} + +// SetCategory sets the Category field's value. +func (s *PutLaunchActionInput) SetCategory(v string) *PutLaunchActionInput { + s.Category = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *PutLaunchActionInput) SetDescription(v string) *PutLaunchActionInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *PutLaunchActionInput) SetName(v string) *PutLaunchActionInput { + s.Name = &v + return s +} + +// SetOptional sets the Optional field's value. +func (s *PutLaunchActionInput) SetOptional(v bool) *PutLaunchActionInput { + s.Optional = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *PutLaunchActionInput) SetOrder(v int64) *PutLaunchActionInput { + s.Order = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *PutLaunchActionInput) SetParameters(v map[string]*LaunchActionParameter) *PutLaunchActionInput { + s.Parameters = v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *PutLaunchActionInput) SetResourceId(v string) *PutLaunchActionInput { + s.ResourceId = &v + return s +} + +type PutLaunchActionOutput struct { + _ struct{} `type:"structure"` + + // Launch action code. + ActionCode *string `locationName:"actionCode" min:"1" type:"string"` + + // Launch action Id. + ActionId *string `locationName:"actionId" min:"1" type:"string"` + + // Launch action version. + ActionVersion *string `locationName:"actionVersion" min:"1" type:"string"` + + // Whether the launch action is active. + Active *bool `locationName:"active" type:"boolean"` + + // Launch action category. + Category *string `locationName:"category" type:"string" enum:"LaunchActionCategory"` + + // Launch action description. + Description *string `locationName:"description" type:"string"` + + // Launch action name. + Name *string `locationName:"name" min:"1" type:"string"` + + // Whether the launch will not be marked as failed if this action fails. + Optional *bool `locationName:"optional" type:"boolean"` + + // Launch action order. + Order *int64 `locationName:"order" min:"2" type:"integer"` + + // Launch action parameters. + Parameters map[string]*LaunchActionParameter `locationName:"parameters" type:"map"` + + // Launch configuration template Id or Source Server Id + ResourceId *string `locationName:"resourceId" type:"string"` + + // Launch action type. + Type *string `locationName:"type" type:"string" enum:"LaunchActionType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutLaunchActionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutLaunchActionOutput) GoString() string { + return s.String() +} + +// SetActionCode sets the ActionCode field's value. +func (s *PutLaunchActionOutput) SetActionCode(v string) *PutLaunchActionOutput { + s.ActionCode = &v + return s +} + +// SetActionId sets the ActionId field's value. +func (s *PutLaunchActionOutput) SetActionId(v string) *PutLaunchActionOutput { + s.ActionId = &v + return s +} + +// SetActionVersion sets the ActionVersion field's value. +func (s *PutLaunchActionOutput) SetActionVersion(v string) *PutLaunchActionOutput { + s.ActionVersion = &v + return s +} + +// SetActive sets the Active field's value. +func (s *PutLaunchActionOutput) SetActive(v bool) *PutLaunchActionOutput { + s.Active = &v + return s +} + +// SetCategory sets the Category field's value. +func (s *PutLaunchActionOutput) SetCategory(v string) *PutLaunchActionOutput { + s.Category = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *PutLaunchActionOutput) SetDescription(v string) *PutLaunchActionOutput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *PutLaunchActionOutput) SetName(v string) *PutLaunchActionOutput { + s.Name = &v + return s +} + +// SetOptional sets the Optional field's value. +func (s *PutLaunchActionOutput) SetOptional(v bool) *PutLaunchActionOutput { + s.Optional = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *PutLaunchActionOutput) SetOrder(v int64) *PutLaunchActionOutput { + s.Order = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *PutLaunchActionOutput) SetParameters(v map[string]*LaunchActionParameter) *PutLaunchActionOutput { + s.Parameters = v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *PutLaunchActionOutput) SetResourceId(v string) *PutLaunchActionOutput { + s.ResourceId = &v + return s +} + +// SetType sets the Type field's value. +func (s *PutLaunchActionOutput) SetType(v string) *PutLaunchActionOutput { + s.Type = &v + return s +} + // A Recovery Instance is a replica of a Source Server running on EC2. type RecoveryInstance struct { _ struct{} `type:"structure"` @@ -13787,6 +15002,9 @@ type UpdateLaunchConfigurationInput struct { // The name of the launch configuration. Name *string `locationName:"name" type:"string"` + // Whether we want to enable post-launch actions for the Source Server. + PostLaunchEnabled *bool `locationName:"postLaunchEnabled" type:"boolean"` + // The ID of the Source Server that we want to retrieve a Launch Configuration // for. // @@ -13862,6 +15080,12 @@ func (s *UpdateLaunchConfigurationInput) SetName(v string) *UpdateLaunchConfigur return s } +// SetPostLaunchEnabled sets the PostLaunchEnabled field's value. +func (s *UpdateLaunchConfigurationInput) SetPostLaunchEnabled(v bool) *UpdateLaunchConfigurationInput { + s.PostLaunchEnabled = &v + return s +} + // SetSourceServerID sets the SourceServerID field's value. func (s *UpdateLaunchConfigurationInput) SetSourceServerID(v string) *UpdateLaunchConfigurationInput { s.SourceServerID = &v @@ -13897,6 +15121,9 @@ type UpdateLaunchConfigurationOutput struct { // The name of the launch configuration. Name *string `locationName:"name" type:"string"` + // Whether we want to activate post-launch actions for the Source Server. + PostLaunchEnabled *bool `locationName:"postLaunchEnabled" type:"boolean"` + // The ID of the Source Server for this launch configuration. SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"` @@ -13959,6 +15186,12 @@ func (s *UpdateLaunchConfigurationOutput) SetName(v string) *UpdateLaunchConfigu return s } +// SetPostLaunchEnabled sets the PostLaunchEnabled field's value. +func (s *UpdateLaunchConfigurationOutput) SetPostLaunchEnabled(v bool) *UpdateLaunchConfigurationOutput { + s.PostLaunchEnabled = &v + return s +} + // SetSourceServerID sets the SourceServerID field's value. func (s *UpdateLaunchConfigurationOutput) SetSourceServerID(v string) *UpdateLaunchConfigurationOutput { s.SourceServerID = &v @@ -13994,6 +15227,9 @@ type UpdateLaunchConfigurationTemplateInput struct { // Licensing. Licensing *Licensing `locationName:"licensing" type:"structure"` + // Whether we want to activate post-launch actions. + PostLaunchEnabled *bool `locationName:"postLaunchEnabled" type:"boolean"` + // Target instance type right-sizing method. TargetInstanceTypeRightSizingMethod *string `locationName:"targetInstanceTypeRightSizingMethod" type:"string" enum:"TargetInstanceTypeRightSizingMethod"` } @@ -14071,6 +15307,12 @@ func (s *UpdateLaunchConfigurationTemplateInput) SetLicensing(v *Licensing) *Upd return s } +// SetPostLaunchEnabled sets the PostLaunchEnabled field's value. +func (s *UpdateLaunchConfigurationTemplateInput) SetPostLaunchEnabled(v bool) *UpdateLaunchConfigurationTemplateInput { + s.PostLaunchEnabled = &v + return s +} + // SetTargetInstanceTypeRightSizingMethod sets the TargetInstanceTypeRightSizingMethod field's value. func (s *UpdateLaunchConfigurationTemplateInput) SetTargetInstanceTypeRightSizingMethod(v string) *UpdateLaunchConfigurationTemplateInput { s.TargetInstanceTypeRightSizingMethod = &v @@ -15658,6 +16900,87 @@ func LastLaunchType_Values() []string { } } +// Launch action category. +const ( + // LaunchActionCategoryMonitoring is a LaunchActionCategory enum value + LaunchActionCategoryMonitoring = "MONITORING" + + // LaunchActionCategoryValidation is a LaunchActionCategory enum value + LaunchActionCategoryValidation = "VALIDATION" + + // LaunchActionCategoryConfiguration is a LaunchActionCategory enum value + LaunchActionCategoryConfiguration = "CONFIGURATION" + + // LaunchActionCategorySecurity is a LaunchActionCategory enum value + LaunchActionCategorySecurity = "SECURITY" + + // LaunchActionCategoryOther is a LaunchActionCategory enum value + LaunchActionCategoryOther = "OTHER" +) + +// LaunchActionCategory_Values returns all elements of the LaunchActionCategory enum +func LaunchActionCategory_Values() []string { + return []string{ + LaunchActionCategoryMonitoring, + LaunchActionCategoryValidation, + LaunchActionCategoryConfiguration, + LaunchActionCategorySecurity, + LaunchActionCategoryOther, + } +} + +const ( + // LaunchActionParameterTypeSsmStore is a LaunchActionParameterType enum value + LaunchActionParameterTypeSsmStore = "SSM_STORE" + + // LaunchActionParameterTypeDynamic is a LaunchActionParameterType enum value + LaunchActionParameterTypeDynamic = "DYNAMIC" +) + +// LaunchActionParameterType_Values returns all elements of the LaunchActionParameterType enum +func LaunchActionParameterType_Values() []string { + return []string{ + LaunchActionParameterTypeSsmStore, + LaunchActionParameterTypeDynamic, + } +} + +const ( + // LaunchActionRunStatusInProgress is a LaunchActionRunStatus enum value + LaunchActionRunStatusInProgress = "IN_PROGRESS" + + // LaunchActionRunStatusSucceeded is a LaunchActionRunStatus enum value + LaunchActionRunStatusSucceeded = "SUCCEEDED" + + // LaunchActionRunStatusFailed is a LaunchActionRunStatus enum value + LaunchActionRunStatusFailed = "FAILED" +) + +// LaunchActionRunStatus_Values returns all elements of the LaunchActionRunStatus enum +func LaunchActionRunStatus_Values() []string { + return []string{ + LaunchActionRunStatusInProgress, + LaunchActionRunStatusSucceeded, + LaunchActionRunStatusFailed, + } +} + +const ( + // LaunchActionTypeSsmAutomation is a LaunchActionType enum value + LaunchActionTypeSsmAutomation = "SSM_AUTOMATION" + + // LaunchActionTypeSsmCommand is a LaunchActionType enum value + LaunchActionTypeSsmCommand = "SSM_COMMAND" +) + +// LaunchActionType_Values returns all elements of the LaunchActionType enum +func LaunchActionType_Values() []string { + return []string{ + LaunchActionTypeSsmAutomation, + LaunchActionTypeSsmCommand, + } +} + const ( // LaunchDispositionStopped is a LaunchDisposition enum value LaunchDispositionStopped = "STOPPED" diff --git a/service/drs/drsiface/interface.go b/service/drs/drsiface/interface.go index 262f0ec104f..ab5d8b74cbe 100644 --- a/service/drs/drsiface/interface.go +++ b/service/drs/drsiface/interface.go @@ -84,6 +84,10 @@ type DrsAPI interface { DeleteJobWithContext(aws.Context, *drs.DeleteJobInput, ...request.Option) (*drs.DeleteJobOutput, error) DeleteJobRequest(*drs.DeleteJobInput) (*request.Request, *drs.DeleteJobOutput) + DeleteLaunchAction(*drs.DeleteLaunchActionInput) (*drs.DeleteLaunchActionOutput, error) + DeleteLaunchActionWithContext(aws.Context, *drs.DeleteLaunchActionInput, ...request.Option) (*drs.DeleteLaunchActionOutput, error) + DeleteLaunchActionRequest(*drs.DeleteLaunchActionInput) (*request.Request, *drs.DeleteLaunchActionOutput) + DeleteLaunchConfigurationTemplate(*drs.DeleteLaunchConfigurationTemplateInput) (*drs.DeleteLaunchConfigurationTemplateOutput, error) DeleteLaunchConfigurationTemplateWithContext(aws.Context, *drs.DeleteLaunchConfigurationTemplateInput, ...request.Option) (*drs.DeleteLaunchConfigurationTemplateOutput, error) DeleteLaunchConfigurationTemplateRequest(*drs.DeleteLaunchConfigurationTemplateInput) (*request.Request, *drs.DeleteLaunchConfigurationTemplateOutput) @@ -195,6 +199,13 @@ type DrsAPI interface { ListExtensibleSourceServersPages(*drs.ListExtensibleSourceServersInput, func(*drs.ListExtensibleSourceServersOutput, bool) bool) error ListExtensibleSourceServersPagesWithContext(aws.Context, *drs.ListExtensibleSourceServersInput, func(*drs.ListExtensibleSourceServersOutput, bool) bool, ...request.Option) error + ListLaunchActions(*drs.ListLaunchActionsInput) (*drs.ListLaunchActionsOutput, error) + ListLaunchActionsWithContext(aws.Context, *drs.ListLaunchActionsInput, ...request.Option) (*drs.ListLaunchActionsOutput, error) + ListLaunchActionsRequest(*drs.ListLaunchActionsInput) (*request.Request, *drs.ListLaunchActionsOutput) + + ListLaunchActionsPages(*drs.ListLaunchActionsInput, func(*drs.ListLaunchActionsOutput, bool) bool) error + ListLaunchActionsPagesWithContext(aws.Context, *drs.ListLaunchActionsInput, func(*drs.ListLaunchActionsOutput, bool) bool, ...request.Option) error + ListStagingAccounts(*drs.ListStagingAccountsInput) (*drs.ListStagingAccountsOutput, error) ListStagingAccountsWithContext(aws.Context, *drs.ListStagingAccountsInput, ...request.Option) (*drs.ListStagingAccountsOutput, error) ListStagingAccountsRequest(*drs.ListStagingAccountsInput) (*request.Request, *drs.ListStagingAccountsOutput) @@ -206,6 +217,10 @@ type DrsAPI interface { ListTagsForResourceWithContext(aws.Context, *drs.ListTagsForResourceInput, ...request.Option) (*drs.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*drs.ListTagsForResourceInput) (*request.Request, *drs.ListTagsForResourceOutput) + PutLaunchAction(*drs.PutLaunchActionInput) (*drs.PutLaunchActionOutput, error) + PutLaunchActionWithContext(aws.Context, *drs.PutLaunchActionInput, ...request.Option) (*drs.PutLaunchActionOutput, error) + PutLaunchActionRequest(*drs.PutLaunchActionInput) (*request.Request, *drs.PutLaunchActionOutput) + RetryDataReplication(*drs.RetryDataReplicationInput) (*drs.RetryDataReplicationOutput, error) RetryDataReplicationWithContext(aws.Context, *drs.RetryDataReplicationInput, ...request.Option) (*drs.RetryDataReplicationOutput, error) RetryDataReplicationRequest(*drs.RetryDataReplicationInput) (*request.Request, *drs.RetryDataReplicationOutput) diff --git a/service/firehose/api.go b/service/firehose/api.go index 7552f85e9fc..8f3b930d70a 100644 --- a/service/firehose/api.go +++ b/service/firehose/api.go @@ -84,11 +84,14 @@ func (c *Firehose) CreateDeliveryStreamRequest(input *CreateDeliveryStreamInput) // You can also invoke StartDeliveryStreamEncryption to turn on SSE for an existing // delivery stream that doesn't have SSE enabled. // -// A delivery stream is configured with a single destination: Amazon S3, Amazon -// ES, Amazon Redshift, or Splunk. You must specify only one of the following -// destination configuration parameters: ExtendedS3DestinationConfiguration, -// S3DestinationConfiguration, ElasticsearchDestinationConfiguration, RedshiftDestinationConfiguration, -// or SplunkDestinationConfiguration. +// A delivery stream is configured with a single destination, such as Amazon +// Simple Storage Service (Amazon S3), Amazon Redshift, Amazon OpenSearch Service, +// Amazon OpenSearch Serverless, Splunk, and any custom HTTP endpoint or HTTP +// endpoints owned by or supported by third-party service providers, including +// Datadog, Dynatrace, LogicMonitor, MongoDB, New Relic, and Sumo Logic. You +// must specify only one of the following destination configuration parameters: +// ExtendedS3DestinationConfiguration, S3DestinationConfiguration, ElasticsearchDestinationConfiguration, +// RedshiftDestinationConfiguration, or SplunkDestinationConfiguration. // // When you specify S3DestinationConfiguration, you can also provide the following // optional values: BufferingHints, EncryptionConfiguration, and CompressionFormat. @@ -1294,8 +1297,9 @@ func (c *Firehose) UpdateDestinationRequest(input *UpdateDestinationInput) (req // writes to the delivery stream can continue during this process. The updated // configurations are usually effective within a few minutes. // -// Switching between Amazon ES and other services is not supported. For an Amazon -// ES destination, you can only update to another Amazon ES destination. +// Switching between Amazon OpenSearch Service and other services is not supported. +// For an Amazon OpenSearch Service destination, you can only update to another +// Amazon OpenSearch Service destination. // // If the destination type is the same, Kinesis Data Firehose merges the configuration // parameters specified with the destination configuration that already exists @@ -1472,7 +1476,8 @@ type AmazonOpenSearchServerlessDestinationConfiguration struct { // S3Configuration is a required field S3Configuration *S3DestinationConfiguration `type:"structure" required:"true"` - // The details of the VPC of the Amazon ES destination. + // The details of the VPC of the Amazon OpenSearch or Amazon OpenSearch Serverless + // destination. VpcConfiguration *VpcConfiguration `type:"structure"` } @@ -1626,7 +1631,7 @@ type AmazonOpenSearchServerlessDestinationDescription struct { // The Serverless offering for Amazon OpenSearch Service retry options. RetryOptions *AmazonOpenSearchServerlessRetryOptions `type:"structure"` - // The Amazon Resource Name (ARN) of the AWS credentials. + // The Amazon Resource Name (ARN) of the Amazon Web Services credentials. RoleARN *string `min:"1" type:"string"` // The Amazon S3 backup mode. @@ -1969,6 +1974,11 @@ type AmazonopensearchserviceDestinationConfiguration struct { // ClusterEndpoint or the DomainARN field. ClusterEndpoint *string `min:"1" type:"string"` + // Indicates the method for setting up document ID. The supported methods are + // Kinesis Data Firehose generated document ID and OpenSearch Service generated + // document ID. + DocumentIdOptions *DocumentIdOptions `type:"structure"` + // The ARN of the Amazon OpenSearch Service domain. The IAM role must have permissions // for DescribeElasticsearchDomain, DescribeElasticsearchDomains, and DescribeElasticsearchDomainConfig // after assuming the role specified in RoleARN. @@ -2016,7 +2026,8 @@ type AmazonopensearchserviceDestinationConfiguration struct { // during run time. TypeName *string `type:"string"` - // The details of the VPC of the Amazon ES destination. + // The details of the VPC of the Amazon OpenSearch or Amazon OpenSearch Serverless + // destination. VpcConfiguration *VpcConfiguration `type:"structure"` } @@ -2067,6 +2078,11 @@ func (s *AmazonopensearchserviceDestinationConfiguration) Validate() error { invalidParams.AddNested("BufferingHints", err.(request.ErrInvalidParams)) } } + if s.DocumentIdOptions != nil { + if err := s.DocumentIdOptions.Validate(); err != nil { + invalidParams.AddNested("DocumentIdOptions", err.(request.ErrInvalidParams)) + } + } if s.ProcessingConfiguration != nil { if err := s.ProcessingConfiguration.Validate(); err != nil { invalidParams.AddNested("ProcessingConfiguration", err.(request.ErrInvalidParams)) @@ -2107,6 +2123,12 @@ func (s *AmazonopensearchserviceDestinationConfiguration) SetClusterEndpoint(v s return s } +// SetDocumentIdOptions sets the DocumentIdOptions field's value. +func (s *AmazonopensearchserviceDestinationConfiguration) SetDocumentIdOptions(v *DocumentIdOptions) *AmazonopensearchserviceDestinationConfiguration { + s.DocumentIdOptions = v + return s +} + // SetDomainARN sets the DomainARN field's value. func (s *AmazonopensearchserviceDestinationConfiguration) SetDomainARN(v string) *AmazonopensearchserviceDestinationConfiguration { s.DomainARN = &v @@ -2182,6 +2204,11 @@ type AmazonopensearchserviceDestinationDescription struct { // OpenSearch Service. ClusterEndpoint *string `min:"1" type:"string"` + // Indicates the method for setting up document ID. The supported methods are + // Kinesis Data Firehose generated document ID and OpenSearch Service generated + // document ID. + DocumentIdOptions *DocumentIdOptions `type:"structure"` + // The ARN of the Amazon OpenSearch Service domain. DomainARN *string `min:"1" type:"string"` @@ -2251,6 +2278,12 @@ func (s *AmazonopensearchserviceDestinationDescription) SetClusterEndpoint(v str return s } +// SetDocumentIdOptions sets the DocumentIdOptions field's value. +func (s *AmazonopensearchserviceDestinationDescription) SetDocumentIdOptions(v *DocumentIdOptions) *AmazonopensearchserviceDestinationDescription { + s.DocumentIdOptions = v + return s +} + // SetDomainARN sets the DomainARN field's value. func (s *AmazonopensearchserviceDestinationDescription) SetDomainARN(v string) *AmazonopensearchserviceDestinationDescription { s.DomainARN = &v @@ -2326,6 +2359,11 @@ type AmazonopensearchserviceDestinationUpdate struct { // ClusterEndpoint or the DomainARN field. ClusterEndpoint *string `min:"1" type:"string"` + // Indicates the method for setting up document ID. The supported methods are + // Kinesis Data Firehose generated document ID and OpenSearch Service generated + // document ID. + DocumentIdOptions *DocumentIdOptions `type:"structure"` + // The ARN of the Amazon OpenSearch Service domain. The IAM role must have permissions // for DescribeDomain, DescribeDomains, and DescribeDomainConfig after assuming // the IAM role specified in RoleARN. @@ -2403,6 +2441,11 @@ func (s *AmazonopensearchserviceDestinationUpdate) Validate() error { invalidParams.AddNested("BufferingHints", err.(request.ErrInvalidParams)) } } + if s.DocumentIdOptions != nil { + if err := s.DocumentIdOptions.Validate(); err != nil { + invalidParams.AddNested("DocumentIdOptions", err.(request.ErrInvalidParams)) + } + } if s.ProcessingConfiguration != nil { if err := s.ProcessingConfiguration.Validate(); err != nil { invalidParams.AddNested("ProcessingConfiguration", err.(request.ErrInvalidParams)) @@ -2438,6 +2481,12 @@ func (s *AmazonopensearchserviceDestinationUpdate) SetClusterEndpoint(v string) return s } +// SetDocumentIdOptions sets the DocumentIdOptions field's value. +func (s *AmazonopensearchserviceDestinationUpdate) SetDocumentIdOptions(v *DocumentIdOptions) *AmazonopensearchserviceDestinationUpdate { + s.DocumentIdOptions = v + return s +} + // SetDomainARN sets the DomainARN field's value. func (s *AmazonopensearchserviceDestinationUpdate) SetDomainARN(v string) *AmazonopensearchserviceDestinationUpdate { s.DomainARN = &v @@ -3835,6 +3884,68 @@ func (s *DestinationDescription) SetSplunkDestinationDescription(v *SplunkDestin return s } +// Indicates the method for setting up document ID. The supported methods are +// Kinesis Data Firehose generated document ID and OpenSearch Service generated +// document ID. +type DocumentIdOptions struct { + _ struct{} `type:"structure"` + + // When the FIREHOSE_DEFAULT option is chosen, Kinesis Data Firehose generates + // a unique document ID for each record based on a unique internal identifier. + // The generated document ID is stable across multiple delivery attempts, which + // helps prevent the same record from being indexed multiple times with different + // document IDs. + // + // When the NO_DOCUMENT_ID option is chosen, Kinesis Data Firehose does not + // include any document IDs in the requests it sends to the Amazon OpenSearch + // Service. This causes the Amazon OpenSearch Service domain to generate document + // IDs. In case of multiple delivery attempts, this may cause the same record + // to be indexed more than once with different document IDs. This option enables + // write-heavy operations, such as the ingestion of logs and observability data, + // to consume less resources in the Amazon OpenSearch Service domain, resulting + // in improved performance. + // + // DefaultDocumentIdFormat is a required field + DefaultDocumentIdFormat *string `type:"string" required:"true" enum:"DefaultDocumentIdFormat"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentIdOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DocumentIdOptions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DocumentIdOptions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DocumentIdOptions"} + if s.DefaultDocumentIdFormat == nil { + invalidParams.Add(request.NewErrParamRequired("DefaultDocumentIdFormat")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDefaultDocumentIdFormat sets the DefaultDocumentIdFormat field's value. +func (s *DocumentIdOptions) SetDefaultDocumentIdFormat(v string) *DocumentIdOptions { + s.DefaultDocumentIdFormat = &v + return s +} + // The configuration of the dynamic partitioning mechanism that creates smaller // data sets from the streaming data by partitioning it based on partition keys. // Currently, dynamic partitioning is only supported for Amazon S3 destinations. @@ -3959,6 +4070,11 @@ type ElasticsearchDestinationConfiguration struct { // ClusterEndpoint or the DomainARN field. ClusterEndpoint *string `min:"1" type:"string"` + // Indicates the method for setting up document ID. The supported methods are + // Kinesis Data Firehose generated document ID and OpenSearch Service generated + // document ID. + DocumentIdOptions *DocumentIdOptions `type:"structure"` + // The ARN of the Amazon ES domain. The IAM role must have permissions for DescribeDomain, // DescribeDomains, and DescribeDomainConfig after assuming the role specified // in RoleARN. For more information, see Amazon Resource Names (ARNs) and Amazon @@ -4020,7 +4136,7 @@ type ElasticsearchDestinationConfiguration struct { // For Elasticsearch 7.x, don't specify a TypeName. TypeName *string `type:"string"` - // The details of the VPC of the Amazon ES destination. + // The details of the VPC of the Amazon destination. VpcConfiguration *VpcConfiguration `type:"structure"` } @@ -4071,6 +4187,11 @@ func (s *ElasticsearchDestinationConfiguration) Validate() error { invalidParams.AddNested("BufferingHints", err.(request.ErrInvalidParams)) } } + if s.DocumentIdOptions != nil { + if err := s.DocumentIdOptions.Validate(); err != nil { + invalidParams.AddNested("DocumentIdOptions", err.(request.ErrInvalidParams)) + } + } if s.ProcessingConfiguration != nil { if err := s.ProcessingConfiguration.Validate(); err != nil { invalidParams.AddNested("ProcessingConfiguration", err.(request.ErrInvalidParams)) @@ -4111,6 +4232,12 @@ func (s *ElasticsearchDestinationConfiguration) SetClusterEndpoint(v string) *El return s } +// SetDocumentIdOptions sets the DocumentIdOptions field's value. +func (s *ElasticsearchDestinationConfiguration) SetDocumentIdOptions(v *DocumentIdOptions) *ElasticsearchDestinationConfiguration { + s.DocumentIdOptions = v + return s +} + // SetDomainARN sets the DomainARN field's value. func (s *ElasticsearchDestinationConfiguration) SetDomainARN(v string) *ElasticsearchDestinationConfiguration { s.DomainARN = &v @@ -4186,6 +4313,11 @@ type ElasticsearchDestinationDescription struct { // ES. ClusterEndpoint *string `min:"1" type:"string"` + // Indicates the method for setting up document ID. The supported methods are + // Kinesis Data Firehose generated document ID and OpenSearch Service generated + // document ID. + DocumentIdOptions *DocumentIdOptions `type:"structure"` + // The ARN of the Amazon ES domain. For more information, see Amazon Resource // Names (ARNs) and Amazon Web Services Service Namespaces (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). // @@ -4221,7 +4353,8 @@ type ElasticsearchDestinationDescription struct { // for TypeName. TypeName *string `type:"string"` - // The details of the VPC of the Amazon ES destination. + // The details of the VPC of the Amazon OpenSearch or the Amazon OpenSearch + // Serverless destination. VpcConfigurationDescription *VpcConfigurationDescription `type:"structure"` } @@ -4261,6 +4394,12 @@ func (s *ElasticsearchDestinationDescription) SetClusterEndpoint(v string) *Elas return s } +// SetDocumentIdOptions sets the DocumentIdOptions field's value. +func (s *ElasticsearchDestinationDescription) SetDocumentIdOptions(v *DocumentIdOptions) *ElasticsearchDestinationDescription { + s.DocumentIdOptions = v + return s +} + // SetDomainARN sets the DomainARN field's value. func (s *ElasticsearchDestinationDescription) SetDomainARN(v string) *ElasticsearchDestinationDescription { s.DomainARN = &v @@ -4336,6 +4475,11 @@ type ElasticsearchDestinationUpdate struct { // ClusterEndpoint or the DomainARN field. ClusterEndpoint *string `min:"1" type:"string"` + // Indicates the method for setting up document ID. The supported methods are + // Kinesis Data Firehose generated document ID and OpenSearch Service generated + // document ID. + DocumentIdOptions *DocumentIdOptions `type:"structure"` + // The ARN of the Amazon ES domain. The IAM role must have permissions for DescribeDomain, // DescribeDomains, and DescribeDomainConfig after assuming the IAM role specified // in RoleARN. For more information, see Amazon Resource Names (ARNs) and Amazon @@ -4420,6 +4564,11 @@ func (s *ElasticsearchDestinationUpdate) Validate() error { invalidParams.AddNested("BufferingHints", err.(request.ErrInvalidParams)) } } + if s.DocumentIdOptions != nil { + if err := s.DocumentIdOptions.Validate(); err != nil { + invalidParams.AddNested("DocumentIdOptions", err.(request.ErrInvalidParams)) + } + } if s.ProcessingConfiguration != nil { if err := s.ProcessingConfiguration.Validate(); err != nil { invalidParams.AddNested("ProcessingConfiguration", err.(request.ErrInvalidParams)) @@ -4455,6 +4604,12 @@ func (s *ElasticsearchDestinationUpdate) SetClusterEndpoint(v string) *Elasticse return s } +// SetDocumentIdOptions sets the DocumentIdOptions field's value. +func (s *ElasticsearchDestinationUpdate) SetDocumentIdOptions(v *DocumentIdOptions) *ElasticsearchDestinationUpdate { + s.DocumentIdOptions = v + return s +} + // SetDomainARN sets the DomainARN field's value. func (s *ElasticsearchDestinationUpdate) SetDomainARN(v string) *ElasticsearchDestinationUpdate { s.DomainARN = &v @@ -10113,7 +10268,8 @@ func (s UpdateDestinationOutput) GoString() string { return s.String() } -// The details of the VPC of the Amazon ES destination. +// The details of the VPC of the Amazon OpenSearch or Amazon OpenSearch Serverless +// destination. type VpcConfiguration struct { _ struct{} `type:"structure"` @@ -10464,6 +10620,22 @@ func ContentEncoding_Values() []string { } } +const ( + // DefaultDocumentIdFormatFirehoseDefault is a DefaultDocumentIdFormat enum value + DefaultDocumentIdFormatFirehoseDefault = "FIREHOSE_DEFAULT" + + // DefaultDocumentIdFormatNoDocumentId is a DefaultDocumentIdFormat enum value + DefaultDocumentIdFormatNoDocumentId = "NO_DOCUMENT_ID" +) + +// DefaultDocumentIdFormat_Values returns all elements of the DefaultDocumentIdFormat enum +func DefaultDocumentIdFormat_Values() []string { + return []string{ + DefaultDocumentIdFormatFirehoseDefault, + DefaultDocumentIdFormatNoDocumentId, + } +} + const ( // DeliveryStreamEncryptionStatusEnabled is a DeliveryStreamEncryptionStatus enum value DeliveryStreamEncryptionStatusEnabled = "ENABLED" diff --git a/service/guardduty/api.go b/service/guardduty/api.go index 779e90773f7..74e5a1bb71e 100644 --- a/service/guardduty/api.go +++ b/service/guardduty/api.go @@ -1974,8 +1974,8 @@ func (c *GuardDuty) DisableOrganizationAdminAccountRequest(input *DisableOrganiz // DisableOrganizationAdminAccount API operation for Amazon GuardDuty. // -// Disables an Amazon Web Services account within the Organization as the GuardDuty -// delegated administrator. +// Removes the existing GuardDuty delegated administrator of the organization. +// Only the organization's management account can run this API operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2270,7 +2270,7 @@ func (c *GuardDuty) DisassociateMembersRequest(input *DisassociateMembersInput) // // With autoEnableOrganizationMembers configuration for your organization set // to ALL, you'll receive an error if you attempt to disassociate a member account -// before removing them from your Amazon Web Services organization. +// before removing them from your organization. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2353,8 +2353,9 @@ func (c *GuardDuty) EnableOrganizationAdminAccountRequest(input *EnableOrganizat // EnableOrganizationAdminAccount API operation for Amazon GuardDuty. // -// Enables an Amazon Web Services account within the organization as the GuardDuty -// delegated administrator. +// Designates an Amazon Web Services account within the organization as your +// GuardDuty delegated administrator. Only the organization's management account +// can run this API operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2436,9 +2437,12 @@ func (c *GuardDuty) GetAdministratorAccountRequest(input *GetAdministratorAccoun // GetAdministratorAccount API operation for Amazon GuardDuty. // -// Provides the details for the GuardDuty administrator account associated with +// Provides the details of the GuardDuty administrator account associated with // the current GuardDuty member account. // +// If the organization's management account or a delegated administrator runs +// this API, it will return success (HTTP 200) but no content. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -3759,9 +3763,9 @@ func (c *GuardDuty) InviteMembersRequest(input *InviteMembersInput) (req *reques // // Invites Amazon Web Services accounts to become members of an organization // administered by the Amazon Web Services account that invokes this API. If -// you are using Amazon Web Services Organizations to manager your GuardDuty -// environment, this step is not needed. For more information, see Managing -// accounts with Amazon Web Services Organizations (https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_organizations.html). +// you are using organizations to manager your GuardDuty environment, this step +// is not needed. For more information, see Managing accounts with organizations +// (https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_organizations.html). // // To invite Amazon Web Services accounts, the first step is to ensure that // GuardDuty has been enabled in the potential member accounts. You can now @@ -4849,7 +4853,8 @@ func (c *GuardDuty) ListOrganizationAdminAccountsRequest(input *ListOrganization // ListOrganizationAdminAccounts API operation for Amazon GuardDuty. // -// Lists the accounts configured as GuardDuty delegated administrators. +// Lists the accounts configured as GuardDuty delegated administrators. Only +// the organization's management account can run this API operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -5123,7 +5128,7 @@ func (c *GuardDuty) ListTagsForResourceRequest(input *ListTagsForResourceInput) // // Lists tags for a resource. Tagging is currently supported for detectors, // finding filters, IP sets, threat intel sets, and publishing destination, -// with a limit of 50 tags per each resource. When invoked, this operation returns +// with a limit of 50 tags per resource. When invoked, this operation returns // all assigned tags for a given resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -6374,7 +6379,8 @@ func (c *GuardDuty) UpdateOrganizationConfigurationRequest(input *UpdateOrganiza // UpdateOrganizationConfiguration API operation for Amazon GuardDuty. // // Configures the delegated administrator account with the provided values. -// You must provide the value for either autoEnableOrganizationMembers or autoEnable. +// You must provide a value for either autoEnableOrganizationMembers or autoEnable, +// but not both. // // There might be regional differences because some data sources might not be // available in all the Amazon Web Services Regions where GuardDuty is presently @@ -8188,6 +8194,15 @@ type CoverageEksClusterDetails struct { // Represents the nodes within the EKS cluster that have a HEALTHY coverage // status. CoveredNodes *int64 `locationName:"coveredNodes" type:"long"` + + // Indicates how the Amazon EKS add-on GuardDuty agent is managed for this EKS + // cluster. + // + // AUTO_MANAGED indicates GuardDuty deploys and manages updates for this resource. + // + // MANUAL indicates that you are responsible to deploy, update, and manage the + // Amazon EKS add-on GuardDuty agent for this resource. + ManagementType *string `locationName:"managementType" type:"string" enum:"ManagementType"` } // String returns the string representation. @@ -8232,6 +8247,12 @@ func (s *CoverageEksClusterDetails) SetCoveredNodes(v int64) *CoverageEksCluster return s } +// SetManagementType sets the ManagementType field's value. +func (s *CoverageEksClusterDetails) SetManagementType(v string) *CoverageEksClusterDetails { + s.ManagementType = &v + return s +} + // Represents a condition that when matched will be added to the response of // the operation. type CoverageFilterCondition struct { @@ -10999,14 +11020,14 @@ type DescribeOrganizationConfigurationOutput struct { // * NEW: Indicates that when a new account joins the organization, they // will have GuardDuty enabled automatically. // - // * ALL: Indicates that all accounts in the Amazon Web Services Organization - // have GuardDuty enabled automatically. This includes NEW accounts that - // join the organization and accounts that may have been suspended or removed - // from the organization in GuardDuty. + // * ALL: Indicates that all accounts in the organization have GuardDuty + // enabled automatically. This includes NEW accounts that join the organization + // and accounts that may have been suspended or removed from the organization + // in GuardDuty. // // * NONE: Indicates that GuardDuty will not be automatically enabled for - // any accounts in the organization. GuardDuty must be managed for each account - // individually by the administrator. + // any account in the organization. The administrator must manage GuardDuty + // for each account in the organization individually. AutoEnableOrganizationMembers *string `locationName:"autoEnableOrganizationMembers" type:"string" enum:"AutoEnableMembers"` // Describes which data sources are enabled automatically for member accounts. @@ -18191,7 +18212,21 @@ type OrganizationAdditionalConfiguration struct { _ struct{} `type:"structure"` // The status of the additional configuration that will be configured for the - // organization. + // organization. Use one of the following values to configure the feature status + // for the entire organization: + // + // * NEW: Indicates that when a new account joins the organization, they + // will have the additional configuration enabled automatically. + // + // * ALL: Indicates that all accounts in the organization have the additional + // configuration enabled automatically. This includes NEW accounts that join + // the organization and accounts that may have been suspended or removed + // from the organization in GuardDuty. It may take up to 24 hours to update + // the configuration for all the member accounts. + // + // * NONE: Indicates that the additional configuration will not be automatically + // enabled for any account in the organization. The administrator must manage + // the additional configuration for each account individually. AutoEnable *string `locationName:"autoEnable" type:"string" enum:"OrgFeatureStatus"` // The name of the additional configuration that will be configured for the @@ -18233,14 +18268,22 @@ func (s *OrganizationAdditionalConfiguration) SetName(v string) *OrganizationAdd type OrganizationAdditionalConfigurationResult struct { _ struct{} `type:"structure"` - // Describes how The status of the additional configuration that are configured - // for the member accounts within the organization. + // Describes the status of the additional configuration that is configured for + // the member accounts within the organization. One of the following values + // is the status for the entire organization: // - // If you set AutoEnable to NEW, a feature will be configured for only the new - // accounts when they join the organization. + // * NEW: Indicates that when a new account joins the organization, they + // will have the additional configuration enabled automatically. // - // If you set AutoEnable to NONE, no feature will be configured for the accounts - // when they join the organization. + // * ALL: Indicates that all accounts in the organization have the additional + // configuration enabled automatically. This includes NEW accounts that join + // the organization and accounts that may have been suspended or removed + // from the organization in GuardDuty. It may take up to 24 hours to update + // the configuration for all the member accounts. + // + // * NONE: Indicates that the additional configuration will not be automatically + // enabled for any account in the organization. The administrator must manage + // the additional configuration for each account individually. AutoEnable *string `locationName:"autoEnable" type:"string" enum:"OrgFeatureStatus"` // The name of the additional configuration that is configured for the member @@ -18478,7 +18521,22 @@ type OrganizationFeatureConfiguration struct { // The additional information that will be configured for the organization. AdditionalConfiguration []*OrganizationAdditionalConfiguration `locationName:"additionalConfiguration" type:"list"` - // The status of the feature that will be configured for the organization. + // The status of the feature that will be configured for the organization. Use + // one of the following values to configure the feature status for the entire + // organization: + // + // * NEW: Indicates that when a new account joins the organization, they + // will have the feature enabled automatically. + // + // * ALL: Indicates that all accounts in the organization have the feature + // enabled automatically. This includes NEW accounts that join the organization + // and accounts that may have been suspended or removed from the organization + // in GuardDuty. It may take up to 24 hours to update the configuration for + // all the member accounts. + // + // * NONE: Indicates that the feature will not be automatically enabled for + // any account in the organization. The administrator must manage the feature + // for each account individually. AutoEnable *string `locationName:"autoEnable" type:"string" enum:"OrgFeatureStatus"` // The name of the feature that will be configured for the organization. @@ -18529,14 +18587,20 @@ type OrganizationFeatureConfigurationResult struct { // the organization. AdditionalConfiguration []*OrganizationAdditionalConfigurationResult `locationName:"additionalConfiguration" type:"list"` - // Describes how The status of the feature that are configured for the member - // accounts within the organization. + // Describes the status of the feature that is configured for the member accounts + // within the organization. // - // If you set AutoEnable to NEW, a feature will be configured for only the new - // accounts when they join the organization. + // * NEW: Indicates that when a new account joins the organization, they + // will have the feature enabled automatically. // - // If you set AutoEnable to NONE, no feature will be configured for the accounts - // when they join the organization. + // * ALL: Indicates that all accounts in the organization have the feature + // enabled automatically. This includes NEW accounts that join the organization + // and accounts that may have been suspended or removed from the organization + // in GuardDuty. + // + // * NONE: Indicates that the feature will not be automatically enabled for + // any account in the organization. In this case, each account will be managed + // individually by the administrator. AutoEnable *string `locationName:"autoEnable" type:"string" enum:"OrgFeatureStatus"` // The name of the feature that is configured for the member accounts within @@ -22935,25 +22999,30 @@ type UpdateOrganizationConfigurationInput struct { // Indicates whether to automatically enable member accounts in the organization. // // Even though this is still supported, we recommend using AutoEnableOrganizationMembers - // to achieve the similar results. + // to achieve the similar results. You must provide the value for either autoEnableOrganizationMembers + // or autoEnable. // // Deprecated: This field is deprecated, use AutoEnableOrganizationMembers instead AutoEnable *bool `locationName:"autoEnable" deprecated:"true" type:"boolean"` // Indicates the auto-enablement configuration of GuardDuty for the member accounts - // in the organization. + // in the organization. You must provide a value for either autoEnableOrganizationMembers + // or autoEnable. + // + // Use one of the following configuration values for autoEnableOrganizationMembers: // // * NEW: Indicates that when a new account joins the organization, they // will have GuardDuty enabled automatically. // - // * ALL: Indicates that all accounts in the Amazon Web Services Organization - // have GuardDuty enabled automatically. This includes NEW accounts that - // join the organization and accounts that may have been suspended or removed - // from the organization in GuardDuty. + // * ALL: Indicates that all accounts in the organization have GuardDuty + // enabled automatically. This includes NEW accounts that join the organization + // and accounts that may have been suspended or removed from the organization + // in GuardDuty. It may take up to 24 hours to update the configuration for + // all the member accounts. // // * NONE: Indicates that GuardDuty will not be automatically enabled for - // any accounts in the organization. GuardDuty must be managed for each account - // individually by the administrator. + // any account in the organization. The administrator must manage GuardDuty + // for each account in the organization individually. AutoEnableOrganizationMembers *string `locationName:"autoEnableOrganizationMembers" type:"string" enum:"AutoEnableMembers"` // Describes which data sources will be updated. @@ -23863,6 +23932,9 @@ const ( // CoverageFilterCriterionKeyAddonVersion is a CoverageFilterCriterionKey enum value CoverageFilterCriterionKeyAddonVersion = "ADDON_VERSION" + + // CoverageFilterCriterionKeyManagementType is a CoverageFilterCriterionKey enum value + CoverageFilterCriterionKeyManagementType = "MANAGEMENT_TYPE" ) // CoverageFilterCriterionKey_Values returns all elements of the CoverageFilterCriterionKey enum @@ -23873,6 +23945,7 @@ func CoverageFilterCriterionKey_Values() []string { CoverageFilterCriterionKeyResourceType, CoverageFilterCriterionKeyCoverageStatus, CoverageFilterCriterionKeyAddonVersion, + CoverageFilterCriterionKeyManagementType, } } @@ -24348,6 +24421,22 @@ func IpSetStatus_Values() []string { } } +const ( + // ManagementTypeAutoManaged is a ManagementType enum value + ManagementTypeAutoManaged = "AUTO_MANAGED" + + // ManagementTypeManual is a ManagementType enum value + ManagementTypeManual = "MANUAL" +) + +// ManagementType_Values returns all elements of the ManagementType enum +func ManagementType_Values() []string { + return []string{ + ManagementTypeAutoManaged, + ManagementTypeManual, + } +} + const ( // OrderByAsc is a OrderBy enum value OrderByAsc = "ASC" diff --git a/service/ivsrealtime/api.go b/service/ivsrealtime/api.go index 1d40d5dd2c8..73fe8efd003 100644 --- a/service/ivsrealtime/api.go +++ b/service/ivsrealtime/api.go @@ -3228,6 +3228,9 @@ func (s *ParticipantSummary) SetUserId(v string) *ParticipantSummary { } // Object specifying a participant token in a stage. +// +// Important: Treat tokens as opaque; i.e., do not build functionality based +// on token contents. The format of tokens could change in the future. type ParticipantToken struct { _ struct{} `type:"structure"` diff --git a/service/simspaceweaver/doc.go b/service/simspaceweaver/doc.go index bd83d684339..ba82d4212a4 100644 --- a/service/simspaceweaver/doc.go +++ b/service/simspaceweaver/doc.go @@ -3,11 +3,10 @@ // Package simspaceweaver provides the client and types for making API // requests to AWS SimSpace Weaver. // -// SimSpace Weaver (SimSpace Weaver) is a managed service that you can use to -// build and operate large-scale spatial simulations in the Amazon Web Services -// Cloud. For example, you can create a digital twin of a city, crowd simulations -// with millions of people and objects, and massively multiplayer games with -// hundreds of thousands of connected players. For more information about SimSpace +// SimSpace Weaver (SimSpace Weaver) is a service that you can use to build +// and run large-scale spatial simulations in the Amazon Web Services Cloud. +// For example, you can create crowd simulations, large real-world environments, +// and immersive and interactive experiences. For more information about SimSpace // Weaver, see the SimSpace Weaver User Guide (https://docs.aws.amazon.com/simspaceweaver/latest/userguide/) . // // This API reference describes the API operations and data types that you can diff --git a/service/xray/api.go b/service/xray/api.go index b7fd05b0b6e..54ae068f86c 100644 --- a/service/xray/api.go +++ b/service/xray/api.go @@ -10354,6 +10354,9 @@ type TraceSummary struct { // Service IDs from the trace's segment documents. ServiceIds []*ServiceId `type:"list"` + // The start time of a trace, based on the earliest trace segment start time. + StartTime *time.Time `type:"timestamp"` + // Users from the trace's segment documents. Users []*TraceUser `type:"list"` } @@ -10490,6 +10493,12 @@ func (s *TraceSummary) SetServiceIds(v []*ServiceId) *TraceSummary { return s } +// SetStartTime sets the StartTime field's value. +func (s *TraceSummary) SetStartTime(v time.Time) *TraceSummary { + s.StartTime = &v + return s +} + // SetUsers sets the Users field's value. func (s *TraceSummary) SetUsers(v []*TraceUser) *TraceSummary { s.Users = v