From d4090b9c17ad649bc89211cb0359d27e346f4ece Mon Sep 17 00:00:00 2001 From: awssdkgo Date: Thu, 26 Jan 2023 19:23:54 +0000 Subject: [PATCH] Release v1.44.188 (2023-01-26) === ### Service Client Updates * `service/eventbridge`: Updates service documentation * `service/iotfleetwise`: Updates service API * `service/s3`: Updates service examples * Allow FIPS to be used with path-style URLs. --- CHANGELOG.md | 9 + aws/endpoints/defaults.go | 33 + aws/version.go | 2 +- .../apis/eventbridge/2015-10-07/docs-2.json | 52 +- .../2015-10-07/endpoint-rule-set-1.json | 31 +- .../2015-10-07/endpoint-tests-1.json | 550 +- .../apis/iotfleetwise/2021-06-17/api-2.json | 6 +- .../s3/2006-03-01/endpoint-rule-set-1.json | 8070 ++++++++++------- .../apis/s3/2006-03-01/endpoint-tests-1.json | 76 +- models/apis/s3/2006-03-01/examples-1.json | 326 +- models/endpoints/endpoints.json | 25 +- service/eventbridge/api.go | 108 +- service/iotfleetwise/api.go | 10 +- service/s3/examples_test.go | 244 +- 14 files changed, 5741 insertions(+), 3801 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 86fba168632..a767fcbea42 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +Release v1.44.188 (2023-01-26) +=== + +### Service Client Updates +* `service/eventbridge`: Updates service documentation +* `service/iotfleetwise`: Updates service API +* `service/s3`: Updates service examples + * Allow FIPS to be used with path-style URLs. + Release v1.44.187 (2023-01-25) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index b340448a6eb..4cb781fedbd 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -4057,12 +4057,32 @@ var awsPartition = partition{ }, "cases": service{ Endpoints: serviceEndpoints{ + endpointKey{ + Region: "fips-us-east-1", + }: endpoint{ + + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-2", + }: endpoint{ + + Deprecated: boxedTrue, + }, endpointKey{ Region: "us-east-1", }: endpoint{}, + endpointKey{ + Region: "us-east-1", + Variant: fipsVariant, + }: endpoint{}, endpointKey{ Region: "us-west-2", }: endpoint{}, + endpointKey{ + Region: "us-west-2", + Variant: fipsVariant, + }: endpoint{}, }, }, "cassandra": service{ @@ -25414,12 +25434,18 @@ var awsPartition = partition{ endpointKey{ Region: "eu-central-1", }: endpoint{}, + endpointKey{ + Region: "eu-central-2", + }: endpoint{}, endpointKey{ Region: "eu-north-1", }: endpoint{}, endpointKey{ Region: "eu-south-1", }: endpoint{}, + endpointKey{ + Region: "eu-south-2", + }: endpoint{}, endpointKey{ Region: "eu-west-1", }: endpoint{}, @@ -36788,6 +36814,13 @@ var awsisobPartition = partition{ }: endpoint{}, }, }, + "dlm": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-isob-east-1", + }: endpoint{}, + }, + }, "dms": service{ Defaults: endpointDefaults{ defaultKey{}: endpoint{}, diff --git a/aws/version.go b/aws/version.go index d5a26e3e773..3c7ed1b7f4a 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.44.187" +const SDKVersion = "1.44.188" diff --git a/models/apis/eventbridge/2015-10-07/docs-2.json b/models/apis/eventbridge/2015-10-07/docs-2.json index 40155807f80..a560c03caa6 100644 --- a/models/apis/eventbridge/2015-10-07/docs-2.json +++ b/models/apis/eventbridge/2015-10-07/docs-2.json @@ -47,7 +47,7 @@ "PutPartnerEvents": "

This is used by SaaS partners to write events to a customer's partner event bus. Amazon Web Services customers do not use this operation.

", "PutPermission": "

Running PutPermission permits the specified Amazon Web Services account or Amazon Web Services organization to put events to the specified event bus. Amazon EventBridge (CloudWatch Events) rules in your account are triggered by these events arriving to an event bus in your account.

For another account to send events to your account, that external account must have an EventBridge rule with your account's event bus as a target.

To enable multiple Amazon Web Services accounts to put events to your event bus, run PutPermission once for each of these accounts. Or, if all the accounts are members of the same Amazon Web Services organization, you can run PutPermission once specifying Principal as \"*\" and specifying the Amazon Web Services organization ID in Condition, to grant permissions to all accounts in that organization.

If you grant permissions using an organization, then accounts in that organization must specify a RoleArn with proper permissions when they use PutTarget to add your account's event bus as a target. For more information, see Sending and Receiving Events Between Amazon Web Services Accounts in the Amazon EventBridge User Guide.

The permission policy on the event bus cannot exceed 10 KB in size.

", "PutRule": "

Creates or updates the specified rule. Rules are enabled by default, or based on value of the state. You can disable a rule using DisableRule.

A single rule watches for events from a single event bus. Events generated by Amazon Web Services services go to your account's default event bus. Events generated by SaaS partner services or applications go to the matching partner event bus. If you have custom applications or services, you can specify whether their events go to your default event bus or a custom event bus that you have created. For more information, see CreateEventBus.

If you are updating an existing rule, the rule is replaced with what you specify in this PutRule command. If you omit arguments in PutRule, the old values for those arguments are not kept. Instead, they are replaced with null values.

When you create or update a rule, incoming events might not immediately start matching to new or updated rules. Allow a short period of time for changes to take effect.

A rule must contain at least an EventPattern or ScheduleExpression. Rules with EventPatterns are triggered when a matching event is observed. Rules with ScheduleExpressions self-trigger based on the given schedule. A rule can have both an EventPattern and a ScheduleExpression, in which case the rule triggers on matching events as well as on a schedule.

When you initially create a rule, you can optionally assign one or more tags to the rule. Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only rules with certain tag values. To use the PutRule operation and assign tags, you must have both the events:PutRule and events:TagResource permissions.

If you are updating an existing rule, any tags you specify in the PutRule operation are ignored. To update the tags of an existing rule, use TagResource and UntagResource.

Most services in Amazon Web Services treat : or / as the same character in Amazon Resource Names (ARNs). However, EventBridge uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating event patterns so that they match the ARN syntax in the event you want to match.

In EventBridge, it is possible to create rules that lead to infinite loops, where a rule is fired repeatedly. For example, a rule might detect that ACLs have changed on an S3 bucket, and trigger software to change them to the desired state. If the rule is not written carefully, the subsequent change to the ACLs fires the rule again, creating an infinite loop.

To prevent this, write the rules so that the triggered actions do not re-fire the same rule. For example, your rule could fire only if ACLs are found to be in a bad state, instead of after any change.

An infinite loop can quickly cause higher than expected charges. We recommend that you use budgeting, which alerts you when charges exceed your specified limit. For more information, see Managing Your Costs with Budgets.

", - "PutTargets": "

Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.

Targets are the resources that are invoked when a rule is triggered.

Each rule can have up to five (5) targets associated with it at one time.

You can configure the following as targets for Events:

Creating rules with built-in targets is supported only in the Amazon Web Services Management Console. The built-in targets are EC2 CreateSnapshot API call, EC2 RebootInstances API call, EC2 StopInstances API call, and EC2 TerminateInstances API call.

For some target types, PutTargets provides target-specific parameters. If the target is a Kinesis data stream, you can optionally specify which shard the event goes to by using the KinesisParameters argument. To invoke a command on multiple EC2 instances with one rule, you can use the RunCommandParameters field.

To be able to make API calls against the resources that you own, Amazon EventBridge needs the appropriate permissions. For Lambda and Amazon SNS resources, EventBridge relies on resource-based policies. For EC2 instances, Kinesis Data Streams, Step Functions state machines and API Gateway REST APIs, EventBridge relies on IAM roles that you specify in the RoleARN argument in PutTargets. For more information, see Authentication and Access Control in the Amazon EventBridge User Guide.

If another Amazon Web Services account is in the same region and has granted you permission (using PutPermission), you can send events to that account. Set that account's event bus as a target of the rules in your account. To send the matched events to the other account, specify that account's event bus as the Arn value when you run PutTargets. If your account sends events to another account, your account is charged for each sent event. Each event sent to another account is charged as a custom event. The account receiving the event is not charged. For more information, see Amazon EventBridge Pricing.

Input, InputPath, and InputTransformer are not available with PutTarget if the target is an event bus of a different Amazon Web Services account.

If you are setting the event bus of another account as the target, and that account granted permission to your account through an organization instead of directly by the account ID, then you must specify a RoleArn with proper permissions in the Target structure. For more information, see Sending and Receiving Events Between Amazon Web Services Accounts in the Amazon EventBridge User Guide.

For more information about enabling cross-account events, see PutPermission.

Input, InputPath, and InputTransformer are mutually exclusive and optional parameters of a target. When a rule is triggered due to a matched event:

When you specify InputPath or InputTransformer, you must use JSON dot notation, not bracket notation.

When you add targets to a rule and the associated rule triggers soon after, new or updated targets might not be immediately invoked. Allow a short period of time for changes to take effect.

This action can partially fail if too many requests are made at the same time. If that happens, FailedEntryCount is non-zero in the response and each entry in FailedEntries provides the ID of the failed target and the error code.

", + "PutTargets": "

Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.

Targets are the resources that are invoked when a rule is triggered.

Each rule can have up to five (5) targets associated with it at one time.

You can configure the following as targets for Events:

Creating rules with built-in targets is supported only in the Amazon Web Services Management Console. The built-in targets are EC2 CreateSnapshot API call, EC2 RebootInstances API call, EC2 StopInstances API call, and EC2 TerminateInstances API call.

For some target types, PutTargets provides target-specific parameters. If the target is a Kinesis data stream, you can optionally specify which shard the event goes to by using the KinesisParameters argument. To invoke a command on multiple EC2 instances with one rule, you can use the RunCommandParameters field.

To be able to make API calls against the resources that you own, Amazon EventBridge needs the appropriate permissions. For Lambda and Amazon SNS resources, EventBridge relies on resource-based policies. For EC2 instances, Kinesis Data Streams, Step Functions state machines and API Gateway APIs, EventBridge relies on IAM roles that you specify in the RoleARN argument in PutTargets. For more information, see Authentication and Access Control in the Amazon EventBridge User Guide.

If another Amazon Web Services account is in the same region and has granted you permission (using PutPermission), you can send events to that account. Set that account's event bus as a target of the rules in your account. To send the matched events to the other account, specify that account's event bus as the Arn value when you run PutTargets. If your account sends events to another account, your account is charged for each sent event. Each event sent to another account is charged as a custom event. The account receiving the event is not charged. For more information, see Amazon EventBridge Pricing.

Input, InputPath, and InputTransformer are not available with PutTarget if the target is an event bus of a different Amazon Web Services account.

If you are setting the event bus of another account as the target, and that account granted permission to your account through an organization instead of directly by the account ID, then you must specify a RoleArn with proper permissions in the Target structure. For more information, see Sending and Receiving Events Between Amazon Web Services Accounts in the Amazon EventBridge User Guide.

For more information about enabling cross-account events, see PutPermission.

Input, InputPath, and InputTransformer are mutually exclusive and optional parameters of a target. When a rule is triggered due to a matched event:

When you specify InputPath or InputTransformer, you must use JSON dot notation, not bracket notation.

When you add targets to a rule and the associated rule triggers soon after, new or updated targets might not be immediately invoked. Allow a short period of time for changes to take effect.

This action can partially fail if too many requests are made at the same time. If that happens, FailedEntryCount is non-zero in the response and each entry in FailedEntries provides the ID of the failed target and the error code.

", "RemovePermission": "

Revokes the permission of another Amazon Web Services account to be able to put events to the specified event bus. Specify the account to revoke by the StatementId value that you associated with the account when you granted it permission with PutPermission. You can find the StatementId by using DescribeEventBus.

", "RemoveTargets": "

Removes the specified targets from the specified rule. When the rule is triggered, those targets are no longer be invoked.

A successful execution of RemoveTargets doesn't guarantee all targets are removed from the rule, it means that the target(s) listed in the request are removed.

When you remove a target, when the associated rule triggers, removed targets might continue to be invoked. Allow a short period of time for changes to take effect.

This action can partially fail if too many requests are made at the same time. If that happens, FailedEntryCount is non-zero in the response and each entry in FailedEntries provides the ID of the failed target and the error code.

", "StartReplay": "

Starts the specified replay. Events are not necessarily replayed in the exact same order that they were added to the archive. A replay processes events to replay based on the time in the event, and replays them using 1 minute intervals. If you specify an EventStartTime and an EventEndTime that covers a 20 minute time range, the events are replayed from the first minute of that 20 minute range first. Then the events from the second minute are replayed. You can use DescribeReplay to determine the progress of a replay. The value returned for EventLastReplayedTime indicates the time within the specified time range associated with the last event replayed.

", @@ -378,8 +378,8 @@ "ConnectionAuthorizationType": { "base": null, "refs": { - "Connection$AuthorizationType": "

The authorization type specified for the connection.

", - "CreateConnectionRequest$AuthorizationType": "

The type of authorization to use for the connection.

", + "Connection$AuthorizationType": "

The authorization type specified for the connection.

OAUTH tokens are refreshed when a 401 or 407 response is returned.

", + "CreateConnectionRequest$AuthorizationType": "

The type of authorization to use for the connection.

OAUTH tokens are refreshed when a 401 or 407 response is returned.

", "DescribeConnectionResponse$AuthorizationType": "

The type of authorization specified for the connection.

", "UpdateConnectionRequest$AuthorizationType": "

The type of authorization to use for the connection.

" } @@ -608,7 +608,7 @@ "DbUser": { "base": null, "refs": { - "RedshiftDataParameters$DbUser": "

The database user name. Required when authenticating using temporary credentials.

" + "RedshiftDataParameters$DbUser": "

The database user name. Required when authenticating using temporary credentials.

Do not provide this parameter when connecting to a Redshift Serverless workgroup.

" } }, "DeactivateEventSourceRequest": { @@ -794,7 +794,7 @@ } }, "Endpoint": { - "base": "

An global endpoint used to improve your application's availability by making it regional-fault tolerant. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide..

", + "base": "

A global endpoint used to improve your application's availability by making it regional-fault tolerant. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the Amazon EventBridge User Guide.

", "refs": { "EndpointList$member": null } @@ -838,8 +838,8 @@ "base": null, "refs": { "DescribeEndpointResponse$EndpointId": "

The ID of the endpoint you asked for information about.

", - "Endpoint$EndpointId": "

The URL subdomain of the endpoint. For example, if the URL for Endpoint is abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo.

", - "PutEventsRequest$EndpointId": "

The URL subdomain of the endpoint. For example, if the URL for Endpoint is abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo.

When using Java, you must include auth-crt on the class path.

", + "Endpoint$EndpointId": "

The URL subdomain of the endpoint. For example, if the URL for Endpoint is https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo.

", + "PutEventsRequest$EndpointId": "

The URL subdomain of the endpoint. For example, if the URL for Endpoint is https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo.

When using Java, you must include auth-crt on the class path.

", "UpdateEndpointResponse$EndpointId": "

The ID of the endpoint you updated in this request.

" } }, @@ -906,7 +906,7 @@ } }, "EventBus": { - "base": "

An event bus receives events from a source and routes them to rules associated with that event bus. Your account's default event bus receives events from Amazon Web Services services. A custom event bus can receive events from your custom applications and services. A partner event bus receives events from an event source created by an SaaS partner. These events come from the partners services or applications.

", + "base": "

An event bus receives events from a source, uses rules to evaluate them, applies any configured input transformation, and routes them to the appropriate target(s). Your account's default event bus receives events from Amazon Web Services services. A custom event bus can receive events from your custom applications and services. A partner event bus receives events from an event source created by an SaaS partner. These events come from the partners services or applications.

", "refs": { "EventBusList$member": null } @@ -920,7 +920,7 @@ "EventBusName": { "base": null, "refs": { - "CreateEventBusRequest$Name": "

The name of the new event bus.

Event bus names cannot contain the / character. You can't use the name default for a custom event bus, as this name is already used for your account's default event bus.

If this is a partner event bus, the name must exactly match the name of the partner event source that this event bus is matched to.

", + "CreateEventBusRequest$Name": "

The name of the new event bus.

Custom event bus names can't contain the / character, but you can use the / character in partner event bus names. In addition, for partner event buses, the name must exactly match the name of the partner event source that this event bus is matched to.

You can't use the name default for a custom event bus, as this name is already used for your account's default event bus.

", "DeleteEventBusRequest$Name": "

The name of the event bus to delete.

", "DescribeRuleResponse$EventBusName": "

The name of the event bus associated with the rule.

", "ListEventBusesRequest$NamePrefix": "

Specifying this limits the results to only those event buses with names that start with the specified prefix.

", @@ -956,7 +956,7 @@ "CreateArchiveRequest$EventPattern": "

An event pattern to use to filter events sent to the archive.

", "DescribeArchiveResponse$EventPattern": "

The event pattern used to filter events sent to the archive.

", "DescribeRuleResponse$EventPattern": "

The event pattern. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.

", - "PutRuleRequest$EventPattern": "

The event pattern. For more information, see EventBridge event patterns in the Amazon EventBridge User Guide.

", + "PutRuleRequest$EventPattern": "

The event pattern. For more information, see Amazon EventBridge event patterns in the Amazon EventBridge User Guide.

", "Rule$EventPattern": "

The event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.

", "TestEventPatternRequest$EventPattern": "

The event pattern. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.

", "UpdateArchiveRequest$EventPattern": "

The event pattern to use to filter events sent to the archive.

" @@ -1038,7 +1038,7 @@ "HeaderParametersMap": { "base": null, "refs": { - "HttpParameters$HeaderParameters": "

The headers that need to be sent as part of request invoking the API Gateway REST API or EventBridge ApiDestination.

" + "HttpParameters$HeaderParameters": "

The headers that need to be sent as part of request invoking the API Gateway API or EventBridge ApiDestination.

" } }, "HeaderValue": { @@ -1062,9 +1062,9 @@ } }, "HttpParameters": { - "base": "

These are custom parameter to be used when the target is an API Gateway REST APIs or EventBridge ApiDestinations. In the latter case, these are merged with any InvocationParameters specified on the Connection, with any values from the Connection taking precedence.

", + "base": "

These are custom parameter to be used when the target is an API Gateway APIs or EventBridge ApiDestinations. In the latter case, these are merged with any InvocationParameters specified on the Connection, with any values from the Connection taking precedence.

", "refs": { - "Target$HttpParameters": "

Contains the HTTP parameters to use when the target is a API Gateway REST endpoint or EventBridge ApiDestination.

If you specify an API Gateway REST API or EventBridge ApiDestination as a target, you can use this parameter to specify headers, path parameters, and query string keys/values as part of your target invoking request. If you're using ApiDestinations, the corresponding Connection can also have these values configured. In case of any conflicting keys, values from the Connection take precedence.

" + "Target$HttpParameters": "

Contains the HTTP parameters to use when the target is a API Gateway endpoint or EventBridge ApiDestination.

If you specify an API Gateway API or EventBridge ApiDestination as a target, you can use this parameter to specify headers, path parameters, and query string keys/values as part of your target invoking request. If you're using ApiDestinations, the corresponding Connection can also have these values configured. In case of any conflicting keys, values from the Connection take precedence.

" } }, "HttpsEndpoint": { @@ -1357,8 +1357,8 @@ "ListArchivesResponse$NextToken": "

The token returned by a previous call to retrieve the next set of results.

", "ListConnectionsRequest$NextToken": "

The token returned by a previous call to retrieve the next set of results.

", "ListConnectionsResponse$NextToken": "

A token you can use in a subsequent request to retrieve the next set of results.

", - "ListEndpointsRequest$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

", - "ListEndpointsResponse$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

", + "ListEndpointsRequest$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

", + "ListEndpointsResponse$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

", "ListEventBusesRequest$NextToken": "

The token returned by a previous call to retrieve the next set of results.

", "ListEventBusesResponse$NextToken": "

A token you can use in a subsequent operation to retrieve the next set of results.

", "ListEventSourcesRequest$NextToken": "

The token returned by a previous call to retrieve the next set of results.

", @@ -1440,7 +1440,7 @@ "PathParameterList": { "base": null, "refs": { - "HttpParameters$PathParameterValues": "

The path parameter values to be used to populate API Gateway REST API or EventBridge ApiDestination path wildcards (\"*\").

" + "HttpParameters$PathParameterValues": "

The path parameter values to be used to populate API Gateway API or EventBridge ApiDestination path wildcards (\"*\").

" } }, "PlacementConstraint": { @@ -1545,7 +1545,7 @@ "PutEventsResultEntryList": { "base": null, "refs": { - "PutEventsResponse$Entries": "

The successfully and unsuccessfully ingested events results. If the ingestion was successful, the entry has the event ID in it. Otherwise, you can use the error code and error message to identify the problem with the entry.

" + "PutEventsResponse$Entries": "

The successfully and unsuccessfully ingested events results. If the ingestion was successful, the entry has the event ID in it. Otherwise, you can use the error code and error message to identify the problem with the entry.

For each record, the index of the response element is the same as the index in the request array.

" } }, "PutPartnerEventsRequest": { @@ -1629,7 +1629,7 @@ "QueryStringParametersMap": { "base": null, "refs": { - "HttpParameters$QueryStringParameters": "

The query string keys/values that need to be sent as part of request invoking the API Gateway REST API or EventBridge ApiDestination.

" + "HttpParameters$QueryStringParameters": "

The query string keys/values that need to be sent as part of request invoking the API Gateway API or EventBridge ApiDestination.

" } }, "QueryStringValue": { @@ -1640,7 +1640,7 @@ } }, "RedshiftDataParameters": { - "base": "

These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.

", + "base": "

These are custom parameters to be used when the target is a Amazon Redshift cluster or Redshift Serverless workgroup to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.

", "refs": { "Target$RedshiftDataParameters": "

Contains the Amazon Redshift Data API parameters to use when the target is a Amazon Redshift cluster.

If you specify a Amazon Redshift Cluster as a Target, you can use this to specify parameters to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.

" } @@ -1757,10 +1757,10 @@ "ReplicationConfig": { "base": "

Endpoints can replicate all events to the secondary Region.

", "refs": { - "CreateEndpointRequest$ReplicationConfig": "

Enable or disable event replication.

", + "CreateEndpointRequest$ReplicationConfig": "

Enable or disable event replication. The default state is ENABLED which means you must supply a RoleArn. If you don't have a RoleArn or you don't want event replication enabled, set the state to DISABLED.

", "CreateEndpointResponse$ReplicationConfig": "

Whether event replication was enabled or disabled by this request.

", "DescribeEndpointResponse$ReplicationConfig": "

Whether replication is enabled or disabled for the endpoint you asked for information about.

", - "Endpoint$ReplicationConfig": "

Whether event replication was enabled or disabled for this endpoint.

", + "Endpoint$ReplicationConfig": "

Whether event replication was enabled or disabled for this endpoint. The default state is ENABLED which means you must supply a RoleArn. If you don't have a RoleArn or you don't want event replication enabled, set the state to DISABLED.

", "UpdateEndpointRequest$ReplicationConfig": "

Whether event replication was enabled or disabled by this request.

", "UpdateEndpointResponse$ReplicationConfig": "

Whether event replication was enabled or disabled for the endpoint you updated in this request.

" } @@ -1824,7 +1824,7 @@ "CreateEndpointResponse$RoutingConfig": "

The routing configuration defined by this request.

", "DescribeEndpointResponse$RoutingConfig": "

The routing configuration of the endpoint you asked for information about.

", "Endpoint$RoutingConfig": "

The routing configuration of the endpoint.

", - "UpdateEndpointRequest$RoutingConfig": "

Configure the routing policy, including the health check and secondary Region..

", + "UpdateEndpointRequest$RoutingConfig": "

Configure the routing policy, including the health check and secondary Region.

", "UpdateEndpointResponse$RoutingConfig": "

The routing configuration you updated in this request.

" } }, @@ -2039,9 +2039,9 @@ "PartnerEventSource$Arn": "

The ARN of the partner event source.

", "PartnerEventSource$Name": "

The name of the partner event source.

", "PutEventsRequestEntry$Source": "

The source of the event.

", - "PutEventsRequestEntry$DetailType": "

Free-form string used to decide what fields to expect in the event detail.

", + "PutEventsRequestEntry$DetailType": "

Free-form string, with a maximum of 128 characters, used to decide what fields to expect in the event detail.

", "PutEventsRequestEntry$Detail": "

A valid JSON object. There is no other schema imposed. The JSON object may contain fields and nested subobjects.

", - "PutPartnerEventsRequestEntry$DetailType": "

A free-form string used to decide what fields to expect in the event detail.

", + "PutPartnerEventsRequestEntry$DetailType": "

A free-form string, with a maximum of 128 characters, used to decide what fields to expect in the event detail.

", "PutPartnerEventsRequestEntry$Detail": "

A valid JSON string. There is no other schema imposed. The JSON string may contain fields and nested subobjects.

", "PutPermissionRequest$Policy": "

A JSON string that describes the permission policy statement. You can include a Policy parameter in the request instead of using the StatementId, Action, Principal, or Condition parameters.

", "StringList$member": null, @@ -2137,7 +2137,7 @@ "TargetInputPath": { "base": null, "refs": { - "Target$InputPath": "

The value of the JSONPath that is used for extracting part of the matched event when passing it to the target. You must use JSON dot notation, not bracket notation. For more information about JSON paths, see JSONPath.

", + "Target$InputPath": "

The value of the JSONPath that is used for extracting part of the matched event when passing it to the target. You may use JSON dot notation or bracket notation. For more information about JSON paths, see JSONPath.

", "TransformerPaths$value": null } }, @@ -2230,7 +2230,7 @@ "TransformerInput": { "base": null, "refs": { - "InputTransformer$InputTemplate": "

Input template where you specify placeholders that will be filled with the values of the keys from InputPathsMap to customize the data sent to the target. Enclose each InputPathsMaps value in brackets: <value> The InputTemplate must be valid JSON.

If InputTemplate is a JSON object (surrounded by curly braces), the following restrictions apply:

The following example shows the syntax for using InputPathsMap and InputTemplate.

\"InputTransformer\":

{

\"InputPathsMap\": {\"instance\": \"$.detail.instance\",\"status\": \"$.detail.status\"},

\"InputTemplate\": \"<instance> is in state <status>\"

}

To have the InputTemplate include quote marks within a JSON string, escape each quote marks with a slash, as in the following example:

\"InputTransformer\":

{

\"InputPathsMap\": {\"instance\": \"$.detail.instance\",\"status\": \"$.detail.status\"},

\"InputTemplate\": \"<instance> is in state \\\"<status>\\\"\"

}

The InputTemplate can also be valid JSON with varibles in quotes or out, as in the following example:

\"InputTransformer\":

{

\"InputPathsMap\": {\"instance\": \"$.detail.instance\",\"status\": \"$.detail.status\"},

\"InputTemplate\": '{\"myInstance\": <instance>,\"myStatus\": \"<instance> is in state \\\"<status>\\\"\"}'

}

" + "InputTransformer$InputTemplate": "

Input template where you specify placeholders that will be filled with the values of the keys from InputPathsMap to customize the data sent to the target. Enclose each InputPathsMaps value in brackets: <value>

If InputTemplate is a JSON object (surrounded by curly braces), the following restrictions apply:

The following example shows the syntax for using InputPathsMap and InputTemplate.

\"InputTransformer\":

{

\"InputPathsMap\": {\"instance\": \"$.detail.instance\",\"status\": \"$.detail.status\"},

\"InputTemplate\": \"<instance> is in state <status>\"

}

To have the InputTemplate include quote marks within a JSON string, escape each quote marks with a slash, as in the following example:

\"InputTransformer\":

{

\"InputPathsMap\": {\"instance\": \"$.detail.instance\",\"status\": \"$.detail.status\"},

\"InputTemplate\": \"<instance> is in state \\\"<status>\\\"\"

}

The InputTemplate can also be valid JSON with varibles in quotes or out, as in the following example:

\"InputTransformer\":

{

\"InputPathsMap\": {\"instance\": \"$.detail.instance\",\"status\": \"$.detail.status\"},

\"InputTemplate\": '{\"myInstance\": <instance>,\"myStatus\": \"<instance> is in state \\\"<status>\\\"\"}'

}

" } }, "TransformerPaths": { diff --git a/models/apis/eventbridge/2015-10-07/endpoint-rule-set-1.json b/models/apis/eventbridge/2015-10-07/endpoint-rule-set-1.json index 0e1700ad68e..6ff0bc5a714 100644 --- a/models/apis/eventbridge/2015-10-07/endpoint-rule-set-1.json +++ b/models/apis/eventbridge/2015-10-07/endpoint-rule-set-1.json @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": false, + "required": true, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -116,10 +116,10 @@ "authSchemes": [ { "name": "sigv4a", + "signingName": "events", "signingRegionSet": [ "*" - ], - "signingName": "events" + ] } ] }, @@ -169,10 +169,10 @@ "authSchemes": [ { "name": "sigv4a", + "signingName": "events", "signingRegionSet": [ "*" - ], - "signingName": "events" + ] } ] }, @@ -197,10 +197,10 @@ "authSchemes": [ { "name": "sigv4a", + "signingName": "events", "signingRegionSet": [ "*" - ], - "signingName": "events" + ] } ] }, @@ -237,15 +237,6 @@ "ref": "Endpoint" } ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], "type": "tree", @@ -421,12 +412,12 @@ { "ref": "Region" }, - "us-gov-west-1" + "us-gov-east-1" ] } ], "endpoint": { - "url": "https://events.us-gov-west-1.amazonaws.com", + "url": "https://events.us-gov-east-1.amazonaws.com", "properties": {}, "headers": {} }, @@ -440,12 +431,12 @@ { "ref": "Region" }, - "us-gov-east-1" + "us-gov-west-1" ] } ], "endpoint": { - "url": "https://events.us-gov-east-1.amazonaws.com", + "url": "https://events.us-gov-west-1.amazonaws.com", "properties": {}, "headers": {} }, diff --git a/models/apis/eventbridge/2015-10-07/endpoint-tests-1.json b/models/apis/eventbridge/2015-10-07/endpoint-tests-1.json index cda2e5130f0..caafb0436d8 100644 --- a/models/apis/eventbridge/2015-10-07/endpoint-tests-1.json +++ b/models/apis/eventbridge/2015-10-07/endpoint-tests-1.json @@ -8,9 +8,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-south-2", - "UseDualStack": true + "Region": "ap-south-2" } }, { @@ -21,9 +21,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-south-2", - "UseDualStack": false + "Region": "ap-south-2" } }, { @@ -34,9 +34,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-south-2", - "UseDualStack": true + "Region": "ap-south-2" } }, { @@ -47,9 +47,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-south-2", - "UseDualStack": false + "Region": "ap-south-2" } }, { @@ -60,9 +60,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-south-1", - "UseDualStack": true + "Region": "ap-south-1" } }, { @@ -73,9 +73,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-south-1", - "UseDualStack": false + "Region": "ap-south-1" } }, { @@ -86,9 +86,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-south-1", - "UseDualStack": true + "Region": "ap-south-1" } }, { @@ -99,9 +99,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-south-1", - "UseDualStack": false + "Region": "ap-south-1" } }, { @@ -112,9 +112,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-south-1", - "UseDualStack": true + "Region": "eu-south-1" } }, { @@ -125,9 +125,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-south-1", - "UseDualStack": false + "Region": "eu-south-1" } }, { @@ -138,9 +138,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-south-1", - "UseDualStack": true + "Region": "eu-south-1" } }, { @@ -151,9 +151,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-south-1", - "UseDualStack": false + "Region": "eu-south-1" } }, { @@ -164,9 +164,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-south-2", - "UseDualStack": true + "Region": "eu-south-2" } }, { @@ -177,9 +177,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-south-2", - "UseDualStack": false + "Region": "eu-south-2" } }, { @@ -190,9 +190,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-south-2", - "UseDualStack": true + "Region": "eu-south-2" } }, { @@ -203,9 +203,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-south-2", - "UseDualStack": false + "Region": "eu-south-2" } }, { @@ -216,9 +216,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-gov-east-1", - "UseDualStack": true + "Region": "us-gov-east-1" } }, { @@ -229,9 +229,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-gov-east-1", - "UseDualStack": false + "Region": "us-gov-east-1" } }, { @@ -242,9 +242,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-gov-east-1", - "UseDualStack": true + "Region": "us-gov-east-1" } }, { @@ -255,9 +255,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-gov-east-1", - "UseDualStack": false + "Region": "us-gov-east-1" } }, { @@ -268,9 +268,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "me-central-1", - "UseDualStack": true + "Region": "me-central-1" } }, { @@ -281,9 +281,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "me-central-1", - "UseDualStack": false + "Region": "me-central-1" } }, { @@ -294,9 +294,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "me-central-1", - "UseDualStack": true + "Region": "me-central-1" } }, { @@ -307,9 +307,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "me-central-1", - "UseDualStack": false + "Region": "me-central-1" } }, { @@ -320,9 +320,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ca-central-1", - "UseDualStack": true + "Region": "ca-central-1" } }, { @@ -333,9 +333,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ca-central-1", - "UseDualStack": false + "Region": "ca-central-1" } }, { @@ -346,9 +346,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ca-central-1", - "UseDualStack": true + "Region": "ca-central-1" } }, { @@ -359,9 +359,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ca-central-1", - "UseDualStack": false + "Region": "ca-central-1" } }, { @@ -372,9 +372,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-central-1", - "UseDualStack": true + "Region": "eu-central-1" } }, { @@ -385,9 +385,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-central-1", - "UseDualStack": false + "Region": "eu-central-1" } }, { @@ -398,9 +398,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-central-1", - "UseDualStack": true + "Region": "eu-central-1" } }, { @@ -411,9 +411,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-central-1", - "UseDualStack": false + "Region": "eu-central-1" } }, { @@ -422,9 +422,9 @@ "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", - "UseDualStack": true + "Region": "us-iso-west-1" } }, { @@ -435,9 +435,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-iso-west-1", - "UseDualStack": false + "Region": "us-iso-west-1" } }, { @@ -446,9 +446,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-iso-west-1", - "UseDualStack": true + "Region": "us-iso-west-1" } }, { @@ -459,9 +459,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-iso-west-1", - "UseDualStack": false + "Region": "us-iso-west-1" } }, { @@ -472,9 +472,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-central-2", - "UseDualStack": true + "Region": "eu-central-2" } }, { @@ -485,9 +485,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-central-2", - "UseDualStack": false + "Region": "eu-central-2" } }, { @@ -498,9 +498,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-central-2", - "UseDualStack": true + "Region": "eu-central-2" } }, { @@ -511,9 +511,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-central-2", - "UseDualStack": false + "Region": "eu-central-2" } }, { @@ -524,9 +524,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-west-1", - "UseDualStack": true + "Region": "us-west-1" } }, { @@ -537,9 +537,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-west-1", - "UseDualStack": false + "Region": "us-west-1" } }, { @@ -550,9 +550,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-west-1", - "UseDualStack": true + "Region": "us-west-1" } }, { @@ -563,9 +563,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-west-1", - "UseDualStack": false + "Region": "us-west-1" } }, { @@ -576,9 +576,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-west-2", - "UseDualStack": true + "Region": "us-west-2" } }, { @@ -589,9 +589,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-west-2", - "UseDualStack": false + "Region": "us-west-2" } }, { @@ -602,9 +602,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-west-2", - "UseDualStack": true + "Region": "us-west-2" } }, { @@ -615,9 +615,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-west-2", - "UseDualStack": false + "Region": "us-west-2" } }, { @@ -628,9 +628,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "af-south-1", - "UseDualStack": true + "Region": "af-south-1" } }, { @@ -641,9 +641,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "af-south-1", - "UseDualStack": false + "Region": "af-south-1" } }, { @@ -654,9 +654,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "af-south-1", - "UseDualStack": true + "Region": "af-south-1" } }, { @@ -667,9 +667,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "af-south-1", - "UseDualStack": false + "Region": "af-south-1" } }, { @@ -680,9 +680,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-north-1", - "UseDualStack": true + "Region": "eu-north-1" } }, { @@ -693,9 +693,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-north-1", - "UseDualStack": false + "Region": "eu-north-1" } }, { @@ -706,9 +706,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-north-1", - "UseDualStack": true + "Region": "eu-north-1" } }, { @@ -719,9 +719,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-north-1", - "UseDualStack": false + "Region": "eu-north-1" } }, { @@ -732,9 +732,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-3", - "UseDualStack": true + "Region": "eu-west-3" } }, { @@ -745,9 +745,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-3", - "UseDualStack": false + "Region": "eu-west-3" } }, { @@ -758,9 +758,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-3", - "UseDualStack": true + "Region": "eu-west-3" } }, { @@ -771,9 +771,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-3", - "UseDualStack": false + "Region": "eu-west-3" } }, { @@ -784,9 +784,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-2", - "UseDualStack": true + "Region": "eu-west-2" } }, { @@ -797,9 +797,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-2", - "UseDualStack": false + "Region": "eu-west-2" } }, { @@ -810,9 +810,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-2", - "UseDualStack": true + "Region": "eu-west-2" } }, { @@ -823,9 +823,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-2", - "UseDualStack": false + "Region": "eu-west-2" } }, { @@ -836,9 +836,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "eu-west-1", - "UseDualStack": true + "Region": "eu-west-1" } }, { @@ -849,9 +849,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "eu-west-1", - "UseDualStack": false + "Region": "eu-west-1" } }, { @@ -862,9 +862,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "eu-west-1", - "UseDualStack": true + "Region": "eu-west-1" } }, { @@ -875,9 +875,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "eu-west-1", - "UseDualStack": false + "Region": "eu-west-1" } }, { @@ -888,9 +888,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-3", - "UseDualStack": true + "Region": "ap-northeast-3" } }, { @@ -901,9 +901,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-3", - "UseDualStack": false + "Region": "ap-northeast-3" } }, { @@ -914,9 +914,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-3", - "UseDualStack": true + "Region": "ap-northeast-3" } }, { @@ -927,9 +927,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-3", - "UseDualStack": false + "Region": "ap-northeast-3" } }, { @@ -940,9 +940,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-2", - "UseDualStack": true + "Region": "ap-northeast-2" } }, { @@ -953,9 +953,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-2", - "UseDualStack": false + "Region": "ap-northeast-2" } }, { @@ -966,9 +966,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-2", - "UseDualStack": true + "Region": "ap-northeast-2" } }, { @@ -979,9 +979,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-2", - "UseDualStack": false + "Region": "ap-northeast-2" } }, { @@ -992,9 +992,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-northeast-1", - "UseDualStack": true + "Region": "ap-northeast-1" } }, { @@ -1005,9 +1005,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-northeast-1", - "UseDualStack": false + "Region": "ap-northeast-1" } }, { @@ -1018,9 +1018,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-northeast-1", - "UseDualStack": true + "Region": "ap-northeast-1" } }, { @@ -1031,9 +1031,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-northeast-1", - "UseDualStack": false + "Region": "ap-northeast-1" } }, { @@ -1044,9 +1044,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "me-south-1", - "UseDualStack": true + "Region": "me-south-1" } }, { @@ -1057,9 +1057,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "me-south-1", - "UseDualStack": false + "Region": "me-south-1" } }, { @@ -1070,9 +1070,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "me-south-1", - "UseDualStack": true + "Region": "me-south-1" } }, { @@ -1083,9 +1083,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "me-south-1", - "UseDualStack": false + "Region": "me-south-1" } }, { @@ -1096,9 +1096,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "sa-east-1", - "UseDualStack": true + "Region": "sa-east-1" } }, { @@ -1109,9 +1109,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "sa-east-1", - "UseDualStack": false + "Region": "sa-east-1" } }, { @@ -1122,9 +1122,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "sa-east-1", - "UseDualStack": true + "Region": "sa-east-1" } }, { @@ -1135,9 +1135,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "sa-east-1", - "UseDualStack": false + "Region": "sa-east-1" } }, { @@ -1148,9 +1148,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-east-1", - "UseDualStack": true + "Region": "ap-east-1" } }, { @@ -1161,9 +1161,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-east-1", - "UseDualStack": false + "Region": "ap-east-1" } }, { @@ -1174,9 +1174,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-east-1", - "UseDualStack": true + "Region": "ap-east-1" } }, { @@ -1187,9 +1187,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-east-1", - "UseDualStack": false + "Region": "ap-east-1" } }, { @@ -1200,9 +1200,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "cn-north-1", - "UseDualStack": true + "Region": "cn-north-1" } }, { @@ -1213,9 +1213,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "cn-north-1", - "UseDualStack": false + "Region": "cn-north-1" } }, { @@ -1226,9 +1226,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "cn-north-1", - "UseDualStack": true + "Region": "cn-north-1" } }, { @@ -1239,9 +1239,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "cn-north-1", - "UseDualStack": false + "Region": "cn-north-1" } }, { @@ -1252,9 +1252,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-gov-west-1", - "UseDualStack": true + "Region": "us-gov-west-1" } }, { @@ -1265,9 +1265,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-gov-west-1", - "UseDualStack": false + "Region": "us-gov-west-1" } }, { @@ -1278,9 +1278,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-gov-west-1", - "UseDualStack": true + "Region": "us-gov-west-1" } }, { @@ -1291,9 +1291,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-gov-west-1", - "UseDualStack": false + "Region": "us-gov-west-1" } }, { @@ -1304,9 +1304,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-1", - "UseDualStack": true + "Region": "ap-southeast-1" } }, { @@ -1317,9 +1317,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-1", - "UseDualStack": false + "Region": "ap-southeast-1" } }, { @@ -1330,9 +1330,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-1", - "UseDualStack": true + "Region": "ap-southeast-1" } }, { @@ -1343,9 +1343,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-1", - "UseDualStack": false + "Region": "ap-southeast-1" } }, { @@ -1356,9 +1356,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-2", - "UseDualStack": true + "Region": "ap-southeast-2" } }, { @@ -1369,9 +1369,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-2", - "UseDualStack": false + "Region": "ap-southeast-2" } }, { @@ -1382,9 +1382,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-2", - "UseDualStack": true + "Region": "ap-southeast-2" } }, { @@ -1395,9 +1395,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-2", - "UseDualStack": false + "Region": "ap-southeast-2" } }, { @@ -1406,9 +1406,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-iso-east-1", - "UseDualStack": true + "Region": "us-iso-east-1" } }, { @@ -1419,9 +1419,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-iso-east-1", - "UseDualStack": false + "Region": "us-iso-east-1" } }, { @@ -1430,9 +1430,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-iso-east-1", - "UseDualStack": true + "Region": "us-iso-east-1" } }, { @@ -1443,9 +1443,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-iso-east-1", - "UseDualStack": false + "Region": "us-iso-east-1" } }, { @@ -1456,9 +1456,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-3", - "UseDualStack": true + "Region": "ap-southeast-3" } }, { @@ -1469,9 +1469,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-3", - "UseDualStack": false + "Region": "ap-southeast-3" } }, { @@ -1482,9 +1482,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-3", - "UseDualStack": true + "Region": "ap-southeast-3" } }, { @@ -1495,9 +1495,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-3", - "UseDualStack": false + "Region": "ap-southeast-3" } }, { @@ -1508,9 +1508,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "ap-southeast-4", - "UseDualStack": true + "Region": "ap-southeast-4" } }, { @@ -1521,9 +1521,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "ap-southeast-4", - "UseDualStack": false + "Region": "ap-southeast-4" } }, { @@ -1534,9 +1534,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "ap-southeast-4", - "UseDualStack": true + "Region": "ap-southeast-4" } }, { @@ -1547,9 +1547,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "ap-southeast-4", - "UseDualStack": false + "Region": "ap-southeast-4" } }, { @@ -1560,9 +1560,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-1", - "UseDualStack": true + "Region": "us-east-1" } }, { @@ -1573,9 +1573,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-1", - "UseDualStack": false + "Region": "us-east-1" } }, { @@ -1586,9 +1586,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-1", - "UseDualStack": true + "Region": "us-east-1" } }, { @@ -1599,9 +1599,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1", - "UseDualStack": false + "Region": "us-east-1" } }, { @@ -1612,9 +1612,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-east-2", - "UseDualStack": true + "Region": "us-east-2" } }, { @@ -1625,9 +1625,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-east-2", - "UseDualStack": false + "Region": "us-east-2" } }, { @@ -1638,9 +1638,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-east-2", - "UseDualStack": true + "Region": "us-east-2" } }, { @@ -1651,9 +1651,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-2", - "UseDualStack": false + "Region": "us-east-2" } }, { @@ -1664,9 +1664,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "cn-northwest-1", - "UseDualStack": true + "Region": "cn-northwest-1" } }, { @@ -1677,9 +1677,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "cn-northwest-1", - "UseDualStack": false + "Region": "cn-northwest-1" } }, { @@ -1690,9 +1690,9 @@ } }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "cn-northwest-1", - "UseDualStack": true + "Region": "cn-northwest-1" } }, { @@ -1703,9 +1703,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "cn-northwest-1", - "UseDualStack": false + "Region": "cn-northwest-1" } }, { @@ -1714,9 +1714,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "UseDualStack": true, "UseFIPS": true, - "Region": "us-isob-east-1", - "UseDualStack": true + "Region": "us-isob-east-1" } }, { @@ -1727,9 +1727,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": true, - "Region": "us-isob-east-1", - "UseDualStack": false + "Region": "us-isob-east-1" } }, { @@ -1738,9 +1738,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "UseDualStack": true, "UseFIPS": false, - "Region": "us-isob-east-1", - "UseDualStack": true + "Region": "us-isob-east-1" } }, { @@ -1751,9 +1751,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, - "Region": "us-isob-east-1", - "UseDualStack": false + "Region": "us-isob-east-1" } }, { @@ -1764,9 +1764,9 @@ } }, "params": { + "UseDualStack": false, "UseFIPS": false, "Region": "us-east-1", - "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1776,9 +1776,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "UseDualStack": false, "UseFIPS": true, "Region": "us-east-1", - "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -1788,9 +1788,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "UseDualStack": true, "UseFIPS": false, "Region": "us-east-1", - "UseDualStack": true, "Endpoint": "https://example.com" } }, diff --git a/models/apis/iotfleetwise/2021-06-17/api-2.json b/models/apis/iotfleetwise/2021-06-17/api-2.json index 516df9a9f49..0f97a161e0a 100644 --- a/models/apis/iotfleetwise/2021-06-17/api-2.json +++ b/models/apis/iotfleetwise/2021-06-17/api-2.json @@ -2824,7 +2824,8 @@ }, "createVehicleRequestItems":{ "type":"list", - "member":{"shape":"CreateVehicleRequestItem"} + "member":{"shape":"CreateVehicleRequestItem"}, + "min":1 }, "createVehicleResponses":{ "type":"list", @@ -2940,7 +2941,8 @@ }, "updateVehicleRequestItems":{ "type":"list", - "member":{"shape":"UpdateVehicleRequestItem"} + "member":{"shape":"UpdateVehicleRequestItem"}, + "min":1 }, "updateVehicleResponseItems":{ "type":"list", diff --git a/models/apis/s3/2006-03-01/endpoint-rule-set-1.json b/models/apis/s3/2006-03-01/endpoint-rule-set-1.json index 819bfe14b95..ec1f9545b8a 100644 --- a/models/apis/s3/2006-03-01/endpoint-rule-set-1.json +++ b/models/apis/s3/2006-03-01/endpoint-rule-set-1.json @@ -268,9 +268,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3-outposts", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -288,9 +288,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3-outposts", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -373,9 +373,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3-outposts", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -393,9 +393,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3-outposts", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -589,979 +589,348 @@ "rules": [ { "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, { "fn": "booleanEquals", "argv": [ { "ref": "UseFIPS" }, - false + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" ] } ], - "type": "tree", - "rules": [ + "endpoint": { + "url": "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ { - "conditions": [], - "type": "tree", - "rules": [ + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "UseDualStack" }, + true + ] + }, + { + "fn": "not", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, + "fn": "isSet", + "argv": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "ref": "Endpoint" } - ], - "endpoint": { - "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "type": "tree", - "rules": [ + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "conditions": [], - "endpoint": { - "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Endpoint" } ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "not", + "argv": [ { - "conditions": [ + "fn": "stringEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "ref": "Region" }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true } - ], - "endpoint": { - "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "UseDualStack" }, + true + ] + }, + { + "fn": "not", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, + "fn": "isSet", + "argv": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "ref": "Endpoint" } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "not", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "type": "tree", - "rules": [ + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } + "aws-global" ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" }, + false + ] + }, + { + "fn": "isSet", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true } ] - } - ] - }, - { - "conditions": [], - "error": "Path-style addressing cannot be used with FIPS", - "type": "error" - } - ] - } - ] - }, - { - "conditions": [], - "error": "Path-style addressing cannot be used with S3 Accelerate", - "type": "error" - } - ] - } - ] - }, - { - "conditions": [], - "error": "A valid partition could not be determined", - "type": "error" - } - ] - } - ] - } - ] - } - ] - }, - { - "conditions": [ - { - "fn": "aws.isVirtualHostableS3Bucket", - "argv": [ - { - "ref": "Bucket" - }, - false - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "Region" - }, - false - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "partitionResult" - }, - "name" - ] - }, - "aws-cn" - ] - } - ], - "error": "Partition does not support FIPS", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Accelerate cannot be used with FIPS", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" }, - true - ] + "headers": {} + }, + "type": "endpoint" }, { - "fn": "stringEquals", - "argv": [ + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "partitionResult" + "ref": "UseDualStack" }, - "name" + false ] }, - "aws-cn" - ] - } - ], - "error": "S3 Accelerate cannot be used in this region", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ { "fn": "isSet", "argv": [ @@ -1571,1229 +940,2767 @@ ] }, { - "fn": "booleanEquals", + "fn": "parseURL", "argv": [ { - "ref": "UseDualStack" - }, - true + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" ] } ], - "error": "Host override cannot be combined with Dualstack, FIPS, or S3 Accelerate", - "type": "error" + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "isSet", + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", "argv": [ { - "ref": "Endpoint" + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true } ] }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "Region" }, - true + "aws-global" ] } - ], - "error": "Host override cannot be combined with Dualstack, FIPS, or S3 Accelerate", - "type": "error" + ] }, { - "conditions": [], - "type": "tree", - "rules": [ + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] + "ref": "Endpoint" } - ], - "error": "Host override cannot be combined with Dualstack, FIPS, or S3 Accelerate", - "type": "error" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ] - }, + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ] - }, + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ] - }, + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ] + "ref": "Region" }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Path-style addressing cannot be used with S3 Accelerate", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "A valid partition could not be determined", + "type": "error" + } + ] + } + ] + } + ] + } + ] + }, + { + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "Region" + }, + false + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + }, + "aws-cn" + ] + } + ], + "error": "Partition does not support FIPS", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Accelerate cannot be used with FIPS", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + }, + "aws-cn" + ] + } + ], + "error": "S3 Accelerate cannot be used in this region", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Host override cannot be combined with Dualstack, FIPS, or S3 Accelerate", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Host override cannot be combined with Dualstack, FIPS, or S3 Accelerate", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + } + ], + "error": "Host override cannot be combined with Dualstack, FIPS, or S3 Accelerate", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, { "fn": "booleanEquals", "argv": [ @@ -2855,9 +3762,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -2942,9 +3849,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -3029,9 +3936,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -3116,9 +4023,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -3203,9 +4110,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -3318,9 +4225,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -3336,9 +4243,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -3453,9 +4360,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -3471,9 +4378,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -3574,9 +4481,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -3675,9 +4582,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -3743,9 +4650,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -3811,9 +4718,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -3907,9 +4814,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -3925,9 +4832,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -4009,9 +4916,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -4077,9 +4984,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -4145,9 +5052,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -4241,9 +5148,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -4259,9 +5166,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -4343,9 +5250,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -4498,9 +5405,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -5038,9 +5945,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3-object-lambda", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -5066,9 +5973,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3-object-lambda", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -5084,9 +5991,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3-object-lambda", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -5678,9 +6585,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -5715,9 +6622,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -5752,9 +6659,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -5806,9 +6713,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -5843,9 +6750,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -6100,11 +7007,11 @@ "authSchemes": [ { "name": "sigv4a", - "signingName": "s3", - "disableDoubleEncoding": true, "signingRegionSet": [ "*" - ] + ], + "signingName": "s3", + "disableDoubleEncoding": true } ] }, @@ -6547,9 +7454,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3-outposts", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -6565,9 +7472,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{bucketArn#region}", "signingName": "s3-outposts", - "disableDoubleEncoding": true, - "signingRegion": "{bucketArn#region}" + "disableDoubleEncoding": true } ] }, @@ -6663,958 +7570,1865 @@ ] }, { - "conditions": [], - "error": "Invalid ARN: The Outpost Id was not set", - "type": "error" + "conditions": [], + "error": "Invalid ARN: The Outpost Id was not set", + "type": "error" + } + ] + } + ] + } + ] + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})", + "type": "error" + } + ] + } + ] + }, + { + "conditions": [], + "error": "Invalid ARN: No ARN type specified", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 0, + 4, + false + ], + "assign": "arnPrefix" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnPrefix" + }, + "arn:" + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "Bucket" + } + ] + } + ] + } + ] + } + ], + "error": "Invalid ARN: `{Bucket}` was not a valid ARN", + "type": "error" + }, + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "error": "Cannot set dual-stack in combination with a custom endpoint.", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] } ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] } - ] - } - ] - } - ] - } - ] - }, - { - "conditions": [], - "error": "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})", - "type": "error" - } - ] - } - ] - }, - { - "conditions": [], - "error": "Invalid ARN: No ARN type specified", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 0, - 4, - false - ], - "assign": "arnPrefix" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "arnPrefix" - }, - "arn:" - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "fn": "aws.parseArn", - "argv": [ - { - "ref": "Bucket" - } - ] - } - ] - } - ] - } - ], - "error": "Invalid ARN: `{Bucket}` was not a valid ARN", - "type": "error" - }, - { - "conditions": [ - { - "fn": "uriEncode", - "argv": [ - { - "ref": "Bucket" - } - ], - "assign": "uri_encoded_bucket" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ], - "error": "Cannot set dual-stack in combination with a custom endpoint.", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + ], + "endpoint": { + "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, { - "ref": "Accelerate" + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" }, - false - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, - false + true ] - } - ], - "type": "tree", - "rules": [ + }, { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + "fn": "not", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "type": "tree", - "rules": [ + "fn": "isSet", + "argv": [ { - "conditions": [], - "endpoint": { - "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Endpoint" } ] - }, + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "not", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, + "fn": "stringEquals", + "argv": [ { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] + "ref": "Region" }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "ref": "Endpoint" } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" }, - "headers": {} - }, - "type": "endpoint" + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "not", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, + "fn": "stringEquals", + "argv": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] + "ref": "Region" }, - "headers": {} - }, - "type": "endpoint" + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, + "fn": "stringEquals", + "argv": [ { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" + "ref": "Region" }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true } - ], - "type": "tree", - "rules": [ + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Endpoint" } ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "ref": "Region" }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" }, + false + ] + }, + { + "fn": "not", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, + "fn": "isSet", + "argv": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "ref": "Endpoint" } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ { - "conditions": [ + "fn": "isSet", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] + "ref": "Region" }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "ref": "Region" }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ { - "conditions": [], - "endpoint": { - "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true } ] }, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "ref": "Endpoint" } - ], - "endpoint": { - "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" - } - ] + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" }, - "headers": {} - }, - "type": "endpoint" + "aws-global" + ] } ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] } - ] - }, - { - "conditions": [], - "error": "Path-style addressing cannot be used with FIPS", - "type": "error" + ], + "endpoint": { + "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{Region}", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "headers": {} + }, + "type": "endpoint" } ] } @@ -7798,9 +9612,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3-object-lambda", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -7826,9 +9640,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3-object-lambda", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -7844,9 +9658,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3-object-lambda", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -8021,9 +9835,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -8084,9 +9898,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -8165,9 +9979,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -8244,9 +10058,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -8303,9 +10117,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -8362,9 +10176,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -8439,9 +10253,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -8514,9 +10328,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -8577,9 +10391,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -8640,9 +10454,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -8721,9 +10535,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -8800,9 +10614,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -8859,9 +10673,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -8918,9 +10732,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -8995,9 +10809,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -9070,9 +10884,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -9133,9 +10947,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -9196,9 +11010,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -9277,9 +11091,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -9356,9 +11170,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -9415,9 +11229,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -9474,9 +11288,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -9551,9 +11365,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -9626,9 +11440,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -9689,9 +11503,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -9752,9 +11566,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -9843,9 +11657,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -9861,9 +11675,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -9940,9 +11754,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -9999,9 +11813,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -10058,9 +11872,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "us-east-1", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" + "disableDoubleEncoding": true } ] }, @@ -10145,9 +11959,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -10163,9 +11977,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, @@ -10238,9 +12052,9 @@ "authSchemes": [ { "name": "sigv4", + "signingRegion": "{Region}", "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "{Region}" + "disableDoubleEncoding": true } ] }, diff --git a/models/apis/s3/2006-03-01/endpoint-tests-1.json b/models/apis/s3/2006-03-01/endpoint-tests-1.json index e0ce3c35fbd..dd599bc3414 100644 --- a/models/apis/s3/2006-03-01/endpoint-tests-1.json +++ b/models/apis/s3/2006-03-01/endpoint-tests-1.json @@ -2234,7 +2234,19 @@ { "documentation": "ForcePathStyle, aws-global region with fips is invalid", "expect": { - "error": "Path-style addressing cannot be used with FIPS" + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true, + "name": "sigv4" + } + ] + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket-name" + } }, "params": { "Region": "aws-global", @@ -3304,32 +3316,42 @@ } }, { - "documentation": "path style + fips@us-west-2", + "documentation": "fips@us-gov-west-2, bucket is not S3-dns-compatible (subdomains)", "expect": { - "error": "Path-style addressing cannot be used with FIPS" + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "s3", + "signingRegion": "us-gov-west-1", + "disableDoubleEncoding": true, + "name": "sigv4" + } + ] + }, + "url": "https://s3-fips.us-gov-west-1.amazonaws.com/bucket.with.dots" + } }, "operationInputs": [ { "builtInParams": { - "AWS::Region": "us-west-2", + "AWS::Region": "us-gov-west-1", "AWS::UseFIPS": true, "AWS::S3::ForcePathStyle": true }, "operationName": "GetObject", "operationParams": { - "Bucket": "bucket-name", + "Bucket": "bucket.with.dots", "Key": "key" } } ], "params": { "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "us-west-2", + "Bucket": "bucket.with.dots", + "Region": "us-gov-west-1", "UseDualStack": false, - "UseFIPS": true, - "___key": "key" + "UseFIPS": true } }, { @@ -3552,7 +3574,19 @@ { "documentation": "path style + fips@cn-north-1", "expect": { - "error": "Path-style addressing cannot be used with FIPS" + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true, + "name": "sigv4" + } + ] + }, + "url": "https://s3-fips.cn-north-1.amazonaws.com.cn/bucket-name" + } }, "operationInputs": [ { @@ -3574,8 +3608,7 @@ "ForcePathStyle": true, "Region": "cn-north-1", "UseDualStack": false, - "UseFIPS": true, - "___key": "key" + "UseFIPS": true } }, { @@ -3798,7 +3831,19 @@ { "documentation": "path style + fips@af-south-1", "expect": { - "error": "Path-style addressing cannot be used with FIPS" + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true, + "name": "sigv4" + } + ] + }, + "url": "https://s3-fips.af-south-1.amazonaws.com/bucket-name" + } }, "operationInputs": [ { @@ -3820,8 +3865,7 @@ "ForcePathStyle": true, "Region": "af-south-1", "UseDualStack": false, - "UseFIPS": true, - "___key": "key" + "UseFIPS": true } }, { diff --git a/models/apis/s3/2006-03-01/examples-1.json b/models/apis/s3/2006-03-01/examples-1.json index c516f8ca368..d1c80235907 100644 --- a/models/apis/s3/2006-03-01/examples-1.json +++ b/models/apis/s3/2006-03-01/examples-1.json @@ -257,10 +257,8 @@ "DeleteObject": [ { "input": { - "Bucket": "examplebucket", - "Key": "objectkey.jpg" - }, - "output": { + "Bucket": "ExampleBucket", + "Key": "HappyFace.jpg" }, "comments": { "input": { @@ -268,14 +266,16 @@ "output": { } }, - "description": "The following example deletes an object from an S3 bucket.", - "id": "to-delete-an-object-1472850136595", - "title": "To delete an object" + "description": "The following example deletes an object from a non-versioned bucket.", + "id": "to-delete-an-object-from-a-non-versioned-bucket-1481588533089", + "title": "To delete an object (from a non-versioned bucket)" }, { "input": { - "Bucket": "ExampleBucket", - "Key": "HappyFace.jpg" + "Bucket": "examplebucket", + "Key": "objectkey.jpg" + }, + "output": { }, "comments": { "input": { @@ -283,20 +283,19 @@ "output": { } }, - "description": "The following example deletes an object from a non-versioned bucket.", - "id": "to-delete-an-object-from-a-non-versioned-bucket-1481588533089", - "title": "To delete an object (from a non-versioned bucket)" + "description": "The following example deletes an object from an S3 bucket.", + "id": "to-delete-an-object-1472850136595", + "title": "To delete an object" } ], "DeleteObjectTagging": [ { "input": { "Bucket": "examplebucket", - "Key": "HappyFace.jpg", - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + "Key": "HappyFace.jpg" }, "output": { - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + "VersionId": "null" }, "comments": { "input": { @@ -304,17 +303,18 @@ "output": { } }, - "description": "The following example removes tag set associated with the specified object version. The request specifies both the object key and object version.", - "id": "to-remove-tag-set-from-an-object-version-1483145285913", - "title": "To remove tag set from an object version" + "description": "The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the operation removes tag set from the latest object version.", + "id": "to-remove-tag-set-from-an-object-1483145342862", + "title": "To remove tag set from an object" }, { "input": { "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + "Key": "HappyFace.jpg", + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" }, "output": { - "VersionId": "null" + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" }, "comments": { "input": { @@ -322,9 +322,9 @@ "output": { } }, - "description": "The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the operation removes tag set from the latest object version.", - "id": "to-remove-tag-set-from-an-object-1483145342862", - "title": "To remove tag set from an object" + "description": "The following example removes tag set associated with the specified object version. The request specifies both the object key and object version.", + "id": "to-remove-tag-set-from-an-object-version-1483145285913", + "title": "To remove tag set from an object version" } ], "DeleteObjects": [ @@ -334,12 +334,10 @@ "Delete": { "Objects": [ { - "Key": "HappyFace.jpg", - "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" + "Key": "objectkey1" }, { - "Key": "HappyFace.jpg", - "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" + "Key": "objectkey2" } ], "Quiet": false @@ -348,12 +346,14 @@ "output": { "Deleted": [ { - "Key": "HappyFace.jpg", - "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" + "DeleteMarker": "true", + "DeleteMarkerVersionId": "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F", + "Key": "objectkey1" }, { - "Key": "HappyFace.jpg", - "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" + "DeleteMarker": "true", + "DeleteMarkerVersionId": "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt", + "Key": "objectkey2" } ] }, @@ -363,9 +363,9 @@ "output": { } }, - "description": "The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object versions and returns the key and versions of deleted objects in the response.", - "id": "to-delete-multiple-object-versions-from-a-versioned-bucket-1483147087737", - "title": "To delete multiple object versions from a versioned bucket" + "description": "The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.", + "id": "to-delete-multiple-objects-from-a-versioned-bucket-1483146248805", + "title": "To delete multiple objects from a versioned bucket" }, { "input": { @@ -373,10 +373,12 @@ "Delete": { "Objects": [ { - "Key": "objectkey1" + "Key": "HappyFace.jpg", + "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" }, { - "Key": "objectkey2" + "Key": "HappyFace.jpg", + "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" } ], "Quiet": false @@ -385,14 +387,12 @@ "output": { "Deleted": [ { - "DeleteMarker": "true", - "DeleteMarkerVersionId": "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F", - "Key": "objectkey1" + "Key": "HappyFace.jpg", + "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" }, { - "DeleteMarker": "true", - "DeleteMarkerVersionId": "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt", - "Key": "objectkey2" + "Key": "HappyFace.jpg", + "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" } ] }, @@ -402,9 +402,9 @@ "output": { } }, - "description": "The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.", - "id": "to-delete-multiple-objects-from-a-versioned-bucket-1483146248805", - "title": "To delete multiple objects from a versioned bucket" + "description": "The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object versions and returns the key and versions of deleted objects in the response.", + "id": "to-delete-multiple-object-versions-from-a-versioned-bucket-1483147087737", + "title": "To delete multiple object versions from a versioned bucket" } ], "GetBucketCors": [ @@ -728,17 +728,18 @@ { "input": { "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + "Key": "SampleFile.txt", + "Range": "bytes=0-9" }, "output": { "AcceptRanges": "bytes", - "ContentLength": "3191", - "ContentType": "image/jpeg", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "LastModified": "Thu, 15 Dec 2016 01:19:41 GMT", + "ContentLength": "10", + "ContentRange": "bytes 0-9/43", + "ContentType": "text/plain", + "ETag": "\"0d94420ffd0bc68cd3d152506b97a9cc\"", + "LastModified": "Thu, 09 Oct 2014 22:57:28 GMT", "Metadata": { }, - "TagCount": 2, "VersionId": "null" }, "comments": { @@ -747,25 +748,24 @@ "output": { } }, - "description": "The following example retrieves an object for an S3 bucket.", - "id": "to-retrieve-an-object-1481827837012", - "title": "To retrieve an object" + "description": "The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a specific byte range.", + "id": "to-retrieve-a-byte-range-of-an-object--1481832674603", + "title": "To retrieve a byte range of an object " }, { "input": { "Bucket": "examplebucket", - "Key": "SampleFile.txt", - "Range": "bytes=0-9" + "Key": "HappyFace.jpg" }, "output": { "AcceptRanges": "bytes", - "ContentLength": "10", - "ContentRange": "bytes 0-9/43", - "ContentType": "text/plain", - "ETag": "\"0d94420ffd0bc68cd3d152506b97a9cc\"", - "LastModified": "Thu, 09 Oct 2014 22:57:28 GMT", + "ContentLength": "3191", + "ContentType": "image/jpeg", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "LastModified": "Thu, 15 Dec 2016 01:19:41 GMT", "Metadata": { }, + "TagCount": 2, "VersionId": "null" }, "comments": { @@ -774,9 +774,9 @@ "output": { } }, - "description": "The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a specific byte range.", - "id": "to-retrieve-a-byte-range-of-an-object--1481832674603", - "title": "To retrieve a byte range of an object " + "description": "The following example retrieves an object for an S3 bucket.", + "id": "to-retrieve-an-object-1481827837012", + "title": "To retrieve an object" } ], "GetObjectAcl": [ @@ -840,20 +840,17 @@ { "input": { "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + "Key": "exampleobject", + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" }, "output": { "TagSet": [ { - "Key": "Key4", - "Value": "Value4" - }, - { - "Key": "Key3", - "Value": "Value3" + "Key": "Key1", + "Value": "Value1" } ], - "VersionId": "null" + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" }, "comments": { "input": { @@ -861,24 +858,27 @@ "output": { } }, - "description": "The following example retrieves tag set of an object.", - "id": "to-retrieve-tag-set-of-an-object-1481833847896", - "title": "To retrieve tag set of an object" + "description": "The following example retrieves tag set of an object. The request specifies object version.", + "id": "to-retrieve-tag-set-of-a-specific-object-version-1483400283663", + "title": "To retrieve tag set of a specific object version" }, { "input": { "Bucket": "examplebucket", - "Key": "exampleobject", - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + "Key": "HappyFace.jpg" }, "output": { "TagSet": [ { - "Key": "Key1", - "Value": "Value1" + "Key": "Key4", + "Value": "Value4" + }, + { + "Key": "Key3", + "Value": "Value3" } ], - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + "VersionId": "null" }, "comments": { "input": { @@ -886,9 +886,9 @@ "output": { } }, - "description": "The following example retrieves tag set of an object. The request specifies object version.", - "id": "to-retrieve-tag-set-of-a-specific-object-version-1483400283663", - "title": "To retrieve tag set of a specific object version" + "description": "The following example retrieves tag set of an object.", + "id": "to-retrieve-tag-set-of-an-object-1481833847896", + "title": "To retrieve tag set of an object" } ], "GetObjectTorrent": [ @@ -989,47 +989,37 @@ "ListMultipartUploads": [ { "input": { - "Bucket": "examplebucket", - "KeyMarker": "nextkeyfrompreviousresponse", - "MaxUploads": "2", - "UploadIdMarker": "valuefrompreviousresponse" + "Bucket": "examplebucket" }, "output": { - "Bucket": "acl1", - "IsTruncated": true, - "KeyMarker": "", - "MaxUploads": "2", - "NextKeyMarker": "someobjectkey", - "NextUploadIdMarker": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", - "UploadIdMarker": "", "Uploads": [ { "Initiated": "2014-05-01T05:40:58.000Z", "Initiator": { - "DisplayName": "ownder-display-name", + "DisplayName": "display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "Key": "JavaFile", "Owner": { - "DisplayName": "mohanataws", - "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + "DisplayName": "display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "StorageClass": "STANDARD", - "UploadId": "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--" + "UploadId": "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--" }, { "Initiated": "2014-05-01T05:41:27.000Z", "Initiator": { - "DisplayName": "ownder-display-name", + "DisplayName": "display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "Key": "JavaFile", "Owner": { - "DisplayName": "ownder-display-name", + "DisplayName": "display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "StorageClass": "STANDARD", - "UploadId": "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--" + "UploadId": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--" } ] }, @@ -1039,43 +1029,53 @@ "output": { } }, - "description": "The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next setup of multipart uploads.", - "id": "list-next-set-of-multipart-uploads-when-previous-result-is-truncated-1482428106748", - "title": "List next set of multipart uploads when previous result is truncated" + "description": "The following example lists in-progress multipart uploads on a specific bucket.", + "id": "to-list-in-progress-multipart-uploads-on-a-bucket-1481852775260", + "title": "To list in-progress multipart uploads on a bucket" }, { "input": { - "Bucket": "examplebucket" + "Bucket": "examplebucket", + "KeyMarker": "nextkeyfrompreviousresponse", + "MaxUploads": "2", + "UploadIdMarker": "valuefrompreviousresponse" }, "output": { + "Bucket": "acl1", + "IsTruncated": true, + "KeyMarker": "", + "MaxUploads": "2", + "NextKeyMarker": "someobjectkey", + "NextUploadIdMarker": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", + "UploadIdMarker": "", "Uploads": [ { "Initiated": "2014-05-01T05:40:58.000Z", "Initiator": { - "DisplayName": "display-name", + "DisplayName": "ownder-display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "Key": "JavaFile", "Owner": { - "DisplayName": "display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + "DisplayName": "mohanataws", + "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "StorageClass": "STANDARD", - "UploadId": "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--" + "UploadId": "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--" }, { "Initiated": "2014-05-01T05:41:27.000Z", "Initiator": { - "DisplayName": "display-name", + "DisplayName": "ownder-display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "Key": "JavaFile", "Owner": { - "DisplayName": "display-name", + "DisplayName": "ownder-display-name", "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, "StorageClass": "STANDARD", - "UploadId": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--" + "UploadId": "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--" } ] }, @@ -1085,9 +1085,9 @@ "output": { } }, - "description": "The following example lists in-progress multipart uploads on a specific bucket.", - "id": "to-list-in-progress-multipart-uploads-on-a-bucket-1481852775260", - "title": "To list in-progress multipart uploads on a bucket" + "description": "The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next setup of multipart uploads.", + "id": "list-next-set-of-multipart-uploads-when-previous-result-is-truncated-1482428106748", + "title": "List next set of multipart uploads when previous result is truncated" } ], "ListObjectVersions": [ @@ -1565,26 +1565,6 @@ } ], "PutObject": [ - { - "input": { - "Body": "filetoupload", - "Bucket": "examplebucket", - "Key": "objectkey" - }, - "output": { - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ" - }, - "comments": { - "input": { - }, - "output": { - } - }, - "description": "The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.", - "id": "to-create-an-object-1483147613675", - "title": "To create an object." - }, { "input": { "Body": "HappyFace.jpg", @@ -1631,14 +1611,16 @@ }, { "input": { - "Body": "c:\\HappyFace.jpg", + "Body": "HappyFace.jpg", "Bucket": "examplebucket", "Key": "HappyFace.jpg", - "Tagging": "key1=value1&key2=value2" + "ServerSideEncryption": "AES256", + "StorageClass": "STANDARD_IA" }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "VersionId": "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a" + "ServerSideEncryption": "AES256", + "VersionId": "CG612hodqujkf8FaaNfp8U..FIhLROcp" }, "comments": { "input": { @@ -1646,22 +1628,19 @@ "output": { } }, - "description": "The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore S3 returns version ID of the newly created object.", - "id": "to-upload-an-object-and-specify-optional-tags-1481762310955", - "title": "To upload an object and specify optional tags" + "description": "The following example uploads an object. The request specifies optional request headers to directs S3 to use specific storage class and use server-side encryption.", + "id": "to-upload-an-object-(specify-optional-headers)", + "title": "To upload an object (specify optional headers)" }, { "input": { - "Body": "HappyFace.jpg", + "Body": "filetoupload", "Bucket": "examplebucket", - "Key": "HappyFace.jpg", - "ServerSideEncryption": "AES256", - "StorageClass": "STANDARD_IA" + "Key": "objectkey" }, "output": { "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "ServerSideEncryption": "AES256", - "VersionId": "CG612hodqujkf8FaaNfp8U..FIhLROcp" + "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ" }, "comments": { "input": { @@ -1669,9 +1648,9 @@ "output": { } }, - "description": "The following example uploads an object. The request specifies optional request headers to directs S3 to use specific storage class and use server-side encryption.", - "id": "to-upload-an-object-(specify-optional-headers)", - "title": "To upload an object (specify optional headers)" + "description": "The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.", + "id": "to-create-an-object-1483147613675", + "title": "To create an object." }, { "input": { @@ -1696,6 +1675,27 @@ "id": "to-upload-an-object-and-specify-server-side-encryption-and-object-tags-1483398331831", "title": "To upload an object and specify server-side encryption and object tags" }, + { + "input": { + "Body": "c:\\HappyFace.jpg", + "Bucket": "examplebucket", + "Key": "HappyFace.jpg", + "Tagging": "key1=value1&key2=value2" + }, + "output": { + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "VersionId": "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore S3 returns version ID of the newly created object.", + "id": "to-upload-an-object-and-specify-optional-tags-1481762310955", + "title": "To upload an object and specify optional tags" + }, { "input": { "ACL": "authenticated-read", @@ -1826,14 +1826,15 @@ "input": { "Bucket": "examplebucket", "CopySource": "/bucketname/sourceobjectkey", + "CopySourceRange": "bytes=1-100000", "Key": "examplelargeobject", - "PartNumber": "1", + "PartNumber": "2", "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" }, "output": { "CopyPartResult": { - "ETag": "\"b0c6f0e7e054ab8fa2536a2677f8734d\"", - "LastModified": "2016-12-29T21:24:43.000Z" + "ETag": "\"65d16d19e65a7508a51f043180edcc36\"", + "LastModified": "2016-12-29T21:44:28.000Z" } }, "comments": { @@ -1842,23 +1843,22 @@ "output": { } }, - "description": "The following example uploads a part of a multipart upload by copying data from an existing object as data source.", - "id": "to-upload-a-part-by-copying-data-from-an-existing-object-as-data-source-1483046746348", - "title": "To upload a part by copying data from an existing object as data source" + "description": "The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as data source.", + "id": "to-upload-a-part-by-copying-byte-range-from-an-existing-object-as-data-source-1483048068594", + "title": "To upload a part by copying byte range from an existing object as data source" }, { "input": { "Bucket": "examplebucket", "CopySource": "/bucketname/sourceobjectkey", - "CopySourceRange": "bytes=1-100000", "Key": "examplelargeobject", - "PartNumber": "2", + "PartNumber": "1", "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" }, "output": { "CopyPartResult": { - "ETag": "\"65d16d19e65a7508a51f043180edcc36\"", - "LastModified": "2016-12-29T21:44:28.000Z" + "ETag": "\"b0c6f0e7e054ab8fa2536a2677f8734d\"", + "LastModified": "2016-12-29T21:24:43.000Z" } }, "comments": { @@ -1867,9 +1867,9 @@ "output": { } }, - "description": "The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as data source.", - "id": "to-upload-a-part-by-copying-byte-range-from-an-existing-object-as-data-source-1483048068594", - "title": "To upload a part by copying byte range from an existing object as data source" + "description": "The following example uploads a part of a multipart upload by copying data from an existing object as data source.", + "id": "to-upload-a-part-by-copying-data-from-an-existing-object-as-data-source-1483046746348", + "title": "To upload a part by copying data from an existing object as data source" } ] } diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 74f9caee834..8027bda7f4f 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -2247,8 +2247,22 @@ }, "cases" : { "endpoints" : { - "us-east-1" : { }, - "us-west-2" : { } + "fips-us-east-1" : { + "deprecated" : true + }, + "fips-us-west-2" : { + "deprecated" : true + }, + "us-east-1" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + } } }, "cassandra" : { @@ -14680,8 +14694,10 @@ "hostname" : "storagegateway-fips.ca-central-1.amazonaws.com" }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -22388,6 +22404,11 @@ "us-isob-east-1" : { } } }, + "dlm" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, "dms" : { "defaults" : { "variants" : [ { diff --git a/service/eventbridge/api.go b/service/eventbridge/api.go index 0688df054bc..8e53d51ca0d 100644 --- a/service/eventbridge/api.go +++ b/service/eventbridge/api.go @@ -4163,6 +4163,8 @@ func (c *EventBridge) PutTargetsRequest(input *PutTargetsInput) (req *request.Re // // - Redshift cluster // +// - Redshift Serverless workgroup +// // - SageMaker Pipeline // // - SNS topic @@ -4191,9 +4193,9 @@ func (c *EventBridge) PutTargetsRequest(input *PutTargetsInput) (req *request.Re // To be able to make API calls against the resources that you own, Amazon EventBridge // needs the appropriate permissions. For Lambda and Amazon SNS resources, EventBridge // relies on resource-based policies. For EC2 instances, Kinesis Data Streams, -// Step Functions state machines and API Gateway REST APIs, EventBridge relies -// on IAM roles that you specify in the RoleARN argument in PutTargets. For -// more information, see Authentication and Access Control (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html) +// Step Functions state machines and API Gateway APIs, EventBridge relies on +// IAM roles that you specify in the RoleARN argument in PutTargets. For more +// information, see Authentication and Access Control (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html) // in the Amazon EventBridge User Guide. // // If another Amazon Web Services account is in the same region and has granted @@ -6079,6 +6081,8 @@ type Connection struct { _ struct{} `type:"structure"` // The authorization type specified for the connection. + // + // OAUTH tokens are refreshed when a 401 or 407 response is returned. AuthorizationType *string `type:"string" enum:"ConnectionAuthorizationType"` // The ARN of the connection. @@ -7159,6 +7163,8 @@ type CreateConnectionInput struct { // The type of authorization to use for the connection. // + // OAUTH tokens are refreshed when a 401 or 407 response is returned. + // // AuthorizationType is a required field AuthorizationType *string `type:"string" required:"true" enum:"ConnectionAuthorizationType"` @@ -7479,7 +7485,9 @@ type CreateEndpointInput struct { // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // Enable or disable event replication. + // Enable or disable event replication. The default state is ENABLED which means + // you must supply a RoleArn. If you don't have a RoleArn or you don't want + // event replication enabled, set the state to DISABLED. ReplicationConfig *ReplicationConfig `type:"structure"` // The ARN of the role used for replication. @@ -7682,12 +7690,13 @@ type CreateEventBusInput struct { // The name of the new event bus. // - // Event bus names cannot contain the / character. You can't use the name default - // for a custom event bus, as this name is already used for your account's default - // event bus. + // Custom event bus names can't contain the / character, but you can use the + // / character in partner event bus names. In addition, for partner event buses, + // the name must exactly match the name of the partner event source that this + // event bus is matched to. // - // If this is a partner event bus, the name must exactly match the name of the - // partner event source that this event bus is matched to. + // You can't use the name default for a custom event bus, as this name is already + // used for your account's default event bus. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` @@ -10498,11 +10507,11 @@ func (s EnableRuleOutput) GoString() string { return s.String() } -// An global endpoint used to improve your application's availability by making +// A global endpoint used to improve your application's availability by making // it regional-fault tolerant. For more information about global endpoints, // see Making applications Regional-fault tolerant with global endpoints and // event replication (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-global-endpoints.html) -// in the Amazon EventBridge User Guide.. +// in the Amazon EventBridge User Guide. type Endpoint struct { _ struct{} `type:"structure"` @@ -10516,7 +10525,7 @@ type Endpoint struct { Description *string `type:"string"` // The URL subdomain of the endpoint. For example, if the URL for Endpoint is - // abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo. + // https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo. EndpointId *string `min:"1" type:"string"` // The URL of the endpoint. @@ -10531,7 +10540,10 @@ type Endpoint struct { // The name of the endpoint. Name *string `min:"1" type:"string"` - // Whether event replication was enabled or disabled for this endpoint. + // Whether event replication was enabled or disabled for this endpoint. The + // default state is ENABLED which means you must supply a RoleArn. If you don't + // have a RoleArn or you don't want event replication enabled, set the state + // to DISABLED. ReplicationConfig *ReplicationConfig `type:"structure"` // The ARN of the role used by event replication for the endpoint. @@ -10693,12 +10705,13 @@ func (s *EndpointEventBus) SetEventBusArn(v string) *EndpointEventBus { return s } -// An event bus receives events from a source and routes them to rules associated -// with that event bus. Your account's default event bus receives events from -// Amazon Web Services services. A custom event bus can receive events from -// your custom applications and services. A partner event bus receives events -// from an event source created by an SaaS partner. These events come from the -// partners services or applications. +// An event bus receives events from a source, uses rules to evaluate them, +// applies any configured input transformation, and routes them to the appropriate +// target(s). Your account's default event bus receives events from Amazon Web +// Services services. A custom event bus can receive events from your custom +// applications and services. A partner event bus receives events from an event +// source created by an SaaS partner. These events come from the partners services +// or applications. type EventBus struct { _ struct{} `type:"structure"` @@ -10906,23 +10919,23 @@ func (s *FailoverConfig) SetSecondary(v *Secondary) *FailoverConfig { return s } -// These are custom parameter to be used when the target is an API Gateway REST -// APIs or EventBridge ApiDestinations. In the latter case, these are merged -// with any InvocationParameters specified on the Connection, with any values -// from the Connection taking precedence. +// These are custom parameter to be used when the target is an API Gateway APIs +// or EventBridge ApiDestinations. In the latter case, these are merged with +// any InvocationParameters specified on the Connection, with any values from +// the Connection taking precedence. type HttpParameters struct { _ struct{} `type:"structure"` // The headers that need to be sent as part of request invoking the API Gateway - // REST API or EventBridge ApiDestination. + // API or EventBridge ApiDestination. HeaderParameters map[string]*string `type:"map"` - // The path parameter values to be used to populate API Gateway REST API or - // EventBridge ApiDestination path wildcards ("*"). + // The path parameter values to be used to populate API Gateway API or EventBridge + // ApiDestination path wildcards ("*"). PathParameterValues []*string `type:"list"` // The query string keys/values that need to be sent as part of request invoking - // the API Gateway REST API or EventBridge ApiDestination. + // the API Gateway API or EventBridge ApiDestination. QueryStringParameters map[string]*string `type:"map"` } @@ -11045,8 +11058,7 @@ type InputTransformer struct { // Input template where you specify placeholders that will be filled with the // values of the keys from InputPathsMap to customize the data sent to the target. - // Enclose each InputPathsMaps value in brackets: The InputTemplate - // must be valid JSON. + // Enclose each InputPathsMaps value in brackets: // // If InputTemplate is a JSON object (surrounded by curly braces), the following // restrictions apply: @@ -13509,7 +13521,7 @@ type PutEventsInput struct { _ struct{} `type:"structure"` // The URL subdomain of the endpoint. For example, if the URL for Endpoint is - // abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo. + // https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is abcde.veo. // // When using Java, you must include auth-crt on the class path. // @@ -13589,6 +13601,9 @@ type PutEventsOutput struct { // The successfully and unsuccessfully ingested events results. If the ingestion // was successful, the entry has the event ID in it. Otherwise, you can use // the error code and error message to identify the problem with the entry. + // + // For each record, the index of the response element is the same as the index + // in the request array. Entries []*PutEventsResultEntry `type:"list"` // The number of failed entries. @@ -13633,7 +13648,8 @@ type PutEventsRequestEntry struct { // contain fields and nested subobjects. Detail *string `type:"string"` - // Free-form string used to decide what fields to expect in the event detail. + // Free-form string, with a maximum of 128 characters, used to decide what fields + // to expect in the event detail. DetailType *string `type:"string"` // The name or ARN of the event bus to receive the event. Only the rules that @@ -13902,7 +13918,8 @@ type PutPartnerEventsRequestEntry struct { // contain fields and nested subobjects. Detail *string `type:"string"` - // A free-form string used to decide what fields to expect in the event detail. + // A free-form string, with a maximum of 128 characters, used to decide what + // fields to expect in the event detail. DetailType *string `type:"string"` // Amazon Web Services resources, identified by Amazon Resource Name (ARN), @@ -14187,7 +14204,8 @@ type PutRuleInput struct { // this, the default event bus is used. EventBusName *string `min:"1" type:"string"` - // The event pattern. For more information, see EventBridge event patterns (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html.html) + // The event pattern. For more information, see Amazon EventBridge event patterns + // (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html) // in the Amazon EventBridge User Guide. EventPattern *string `type:"string"` @@ -14525,8 +14543,8 @@ func (s *PutTargetsResultEntry) SetTargetId(v string) *PutTargetsResultEntry { } // These are custom parameters to be used when the target is a Amazon Redshift -// cluster to invoke the Amazon Redshift Data API ExecuteStatement based on -// EventBridge events. +// cluster or Redshift Serverless workgroup to invoke the Amazon Redshift Data +// API ExecuteStatement based on EventBridge events. type RedshiftDataParameters struct { _ struct{} `type:"structure"` @@ -14536,6 +14554,8 @@ type RedshiftDataParameters struct { Database *string `min:"1" type:"string" required:"true"` // The database user name. Required when authenticating using temporary credentials. + // + // Do not provide this parameter when connecting to a Redshift Serverless workgroup. DbUser *string `min:"1" type:"string"` // The name or ARN of the secret that enables access to the database. Required @@ -16177,13 +16197,13 @@ type Target struct { // in the Amazon EC2 Container Service Developer Guide. EcsParameters *EcsParameters `type:"structure"` - // Contains the HTTP parameters to use when the target is a API Gateway REST - // endpoint or EventBridge ApiDestination. + // Contains the HTTP parameters to use when the target is a API Gateway endpoint + // or EventBridge ApiDestination. // - // If you specify an API Gateway REST API or EventBridge ApiDestination as a - // target, you can use this parameter to specify headers, path parameters, and - // query string keys/values as part of your target invoking request. If you're - // using ApiDestinations, the corresponding Connection can also have these values + // If you specify an API Gateway API or EventBridge ApiDestination as a target, + // you can use this parameter to specify headers, path parameters, and query + // string keys/values as part of your target invoking request. If you're using + // ApiDestinations, the corresponding Connection can also have these values // configured. In case of any conflicting keys, values from the Connection take // precedence. HttpParameters *HttpParameters `type:"structure"` @@ -16201,8 +16221,8 @@ type Target struct { Input *string `type:"string"` // The value of the JSONPath that is used for extracting part of the matched - // event when passing it to the target. You must use JSON dot notation, not - // bracket notation. For more information about JSON paths, see JSONPath (http://goessner.net/articles/JsonPath/). + // event when passing it to the target. You may use JSON dot notation or bracket + // notation. For more information about JSON paths, see JSONPath (http://goessner.net/articles/JsonPath/). InputPath *string `type:"string"` // Settings to enable you to provide custom input to a target based on certain @@ -17429,7 +17449,7 @@ type UpdateEndpointInput struct { // The ARN of the role used by event replication for this request. RoleArn *string `min:"1" type:"string"` - // Configure the routing policy, including the health check and secondary Region.. + // Configure the routing policy, including the health check and secondary Region. RoutingConfig *RoutingConfig `type:"structure"` } diff --git a/service/iotfleetwise/api.go b/service/iotfleetwise/api.go index c1c594410ef..0701a917e29 100644 --- a/service/iotfleetwise/api.go +++ b/service/iotfleetwise/api.go @@ -6023,7 +6023,7 @@ type BatchCreateVehicleInput struct { // see the API data type. // // Vehicles is a required field - Vehicles []*CreateVehicleRequestItem `locationName:"vehicles" type:"list" required:"true"` + Vehicles []*CreateVehicleRequestItem `locationName:"vehicles" min:"1" type:"list" required:"true"` } // String returns the string representation. @@ -6050,6 +6050,9 @@ func (s *BatchCreateVehicleInput) Validate() error { if s.Vehicles == nil { invalidParams.Add(request.NewErrParamRequired("Vehicles")) } + if s.Vehicles != nil && len(s.Vehicles) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Vehicles", 1)) + } if s.Vehicles != nil { for i, v := range s.Vehicles { if v == nil { @@ -6122,7 +6125,7 @@ type BatchUpdateVehicleInput struct { // see the API data type. // // Vehicles is a required field - Vehicles []*UpdateVehicleRequestItem `locationName:"vehicles" type:"list" required:"true"` + Vehicles []*UpdateVehicleRequestItem `locationName:"vehicles" min:"1" type:"list" required:"true"` } // String returns the string representation. @@ -6149,6 +6152,9 @@ func (s *BatchUpdateVehicleInput) Validate() error { if s.Vehicles == nil { invalidParams.Add(request.NewErrParamRequired("Vehicles")) } + if s.Vehicles != nil && len(s.Vehicles) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Vehicles", 1)) + } if s.Vehicles != nil { for i, v := range s.Vehicles { if v == nil { diff --git a/service/s3/examples_test.go b/service/s3/examples_test.go index 1e1aefa9fad..b8c7726c59a 100644 --- a/service/s3/examples_test.go +++ b/service/s3/examples_test.go @@ -398,13 +398,13 @@ func ExampleS3_DeleteBucketWebsite_shared00() { fmt.Println(result) } -// To delete an object -// The following example deletes an object from an S3 bucket. +// To delete an object (from a non-versioned bucket) +// The following example deletes an object from a non-versioned bucket. func ExampleS3_DeleteObject_shared00() { svc := s3.New(session.New()) input := &s3.DeleteObjectInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("objectkey.jpg"), + Bucket: aws.String("ExampleBucket"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.DeleteObject(input) @@ -425,13 +425,13 @@ func ExampleS3_DeleteObject_shared00() { fmt.Println(result) } -// To delete an object (from a non-versioned bucket) -// The following example deletes an object from a non-versioned bucket. +// To delete an object +// The following example deletes an object from an S3 bucket. func ExampleS3_DeleteObject_shared01() { svc := s3.New(session.New()) input := &s3.DeleteObjectInput{ - Bucket: aws.String("ExampleBucket"), - Key: aws.String("HappyFace.jpg"), + Bucket: aws.String("examplebucket"), + Key: aws.String("objectkey.jpg"), } result, err := svc.DeleteObject(input) @@ -452,15 +452,15 @@ func ExampleS3_DeleteObject_shared01() { fmt.Println(result) } -// To remove tag set from an object version -// The following example removes tag set associated with the specified object version. -// The request specifies both the object key and object version. +// To remove tag set from an object +// The following example removes tag set associated with the specified object. If the +// bucket is versioning enabled, the operation removes tag set from the latest object +// version. func ExampleS3_DeleteObjectTagging_shared00() { svc := s3.New(session.New()) input := &s3.DeleteObjectTaggingInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), - VersionId: aws.String("ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI"), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.DeleteObjectTagging(input) @@ -481,15 +481,15 @@ func ExampleS3_DeleteObjectTagging_shared00() { fmt.Println(result) } -// To remove tag set from an object -// The following example removes tag set associated with the specified object. If the -// bucket is versioning enabled, the operation removes tag set from the latest object -// version. +// To remove tag set from an object version +// The following example removes tag set associated with the specified object version. +// The request specifies both the object key and object version. func ExampleS3_DeleteObjectTagging_shared01() { svc := s3.New(session.New()) input := &s3.DeleteObjectTaggingInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), + VersionId: aws.String("ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI"), } result, err := svc.DeleteObjectTagging(input) @@ -510,10 +510,10 @@ func ExampleS3_DeleteObjectTagging_shared01() { fmt.Println(result) } -// To delete multiple object versions from a versioned bucket -// The following example deletes objects from a bucket. The request specifies object -// versions. S3 deletes specific object versions and returns the key and versions of -// deleted objects in the response. +// To delete multiple objects from a versioned bucket +// The following example deletes objects from a bucket. The bucket is versioned, and +// the request does not specify the object version to delete. In this case, all versions +// remain in the bucket and S3 adds a delete marker. func ExampleS3_DeleteObjects_shared00() { svc := s3.New(session.New()) input := &s3.DeleteObjectsInput{ @@ -521,12 +521,10 @@ func ExampleS3_DeleteObjects_shared00() { Delete: &s3.Delete{ Objects: []*s3.ObjectIdentifier{ { - Key: aws.String("HappyFace.jpg"), - VersionId: aws.String("2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b"), + Key: aws.String("objectkey1"), }, { - Key: aws.String("HappyFace.jpg"), - VersionId: aws.String("yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd"), + Key: aws.String("objectkey2"), }, }, Quiet: aws.Bool(false), @@ -551,10 +549,10 @@ func ExampleS3_DeleteObjects_shared00() { fmt.Println(result) } -// To delete multiple objects from a versioned bucket -// The following example deletes objects from a bucket. The bucket is versioned, and -// the request does not specify the object version to delete. In this case, all versions -// remain in the bucket and S3 adds a delete marker. +// To delete multiple object versions from a versioned bucket +// The following example deletes objects from a bucket. The request specifies object +// versions. S3 deletes specific object versions and returns the key and versions of +// deleted objects in the response. func ExampleS3_DeleteObjects_shared01() { svc := s3.New(session.New()) input := &s3.DeleteObjectsInput{ @@ -562,10 +560,12 @@ func ExampleS3_DeleteObjects_shared01() { Delete: &s3.Delete{ Objects: []*s3.ObjectIdentifier{ { - Key: aws.String("objectkey1"), + Key: aws.String("HappyFace.jpg"), + VersionId: aws.String("2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b"), }, { - Key: aws.String("objectkey2"), + Key: aws.String("HappyFace.jpg"), + VersionId: aws.String("yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd"), }, }, Quiet: aws.Bool(false), @@ -903,13 +903,15 @@ func ExampleS3_GetBucketWebsite_shared00() { fmt.Println(result) } -// To retrieve an object -// The following example retrieves an object for an S3 bucket. +// To retrieve a byte range of an object +// The following example retrieves an object for an S3 bucket. The request specifies +// the range header to retrieve a specific byte range. func ExampleS3_GetObject_shared00() { svc := s3.New(session.New()) input := &s3.GetObjectInput{ Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Key: aws.String("SampleFile.txt"), + Range: aws.String("bytes=0-9"), } result, err := svc.GetObject(input) @@ -934,15 +936,13 @@ func ExampleS3_GetObject_shared00() { fmt.Println(result) } -// To retrieve a byte range of an object -// The following example retrieves an object for an S3 bucket. The request specifies -// the range header to retrieve a specific byte range. +// To retrieve an object +// The following example retrieves an object for an S3 bucket. func ExampleS3_GetObject_shared01() { svc := s3.New(session.New()) input := &s3.GetObjectInput{ Bucket: aws.String("examplebucket"), - Key: aws.String("SampleFile.txt"), - Range: aws.String("bytes=0-9"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.GetObject(input) @@ -996,13 +996,15 @@ func ExampleS3_GetObjectAcl_shared00() { fmt.Println(result) } -// To retrieve tag set of an object -// The following example retrieves tag set of an object. +// To retrieve tag set of a specific object version +// The following example retrieves tag set of an object. The request specifies object +// version. func ExampleS3_GetObjectTagging_shared00() { svc := s3.New(session.New()) input := &s3.GetObjectTaggingInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Bucket: aws.String("examplebucket"), + Key: aws.String("exampleobject"), + VersionId: aws.String("ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI"), } result, err := svc.GetObjectTagging(input) @@ -1023,15 +1025,13 @@ func ExampleS3_GetObjectTagging_shared00() { fmt.Println(result) } -// To retrieve tag set of a specific object version -// The following example retrieves tag set of an object. The request specifies object -// version. +// To retrieve tag set of an object +// The following example retrieves tag set of an object. func ExampleS3_GetObjectTagging_shared01() { svc := s3.New(session.New()) input := &s3.GetObjectTaggingInput{ - Bucket: aws.String("examplebucket"), - Key: aws.String("exampleobject"), - VersionId: aws.String("ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI"), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.GetObjectTagging(input) @@ -1161,16 +1161,12 @@ func ExampleS3_ListBuckets_shared00() { fmt.Println(result) } -// List next set of multipart uploads when previous result is truncated -// The following example specifies the upload-id-marker and key-marker from previous -// truncated response to retrieve next setup of multipart uploads. +// To list in-progress multipart uploads on a bucket +// The following example lists in-progress multipart uploads on a specific bucket. func ExampleS3_ListMultipartUploads_shared00() { svc := s3.New(session.New()) input := &s3.ListMultipartUploadsInput{ - Bucket: aws.String("examplebucket"), - KeyMarker: aws.String("nextkeyfrompreviousresponse"), - MaxUploads: aws.Int64(2), - UploadIdMarker: aws.String("valuefrompreviousresponse"), + Bucket: aws.String("examplebucket"), } result, err := svc.ListMultipartUploads(input) @@ -1191,12 +1187,16 @@ func ExampleS3_ListMultipartUploads_shared00() { fmt.Println(result) } -// To list in-progress multipart uploads on a bucket -// The following example lists in-progress multipart uploads on a specific bucket. +// List next set of multipart uploads when previous result is truncated +// The following example specifies the upload-id-marker and key-marker from previous +// truncated response to retrieve next setup of multipart uploads. func ExampleS3_ListMultipartUploads_shared01() { svc := s3.New(session.New()) input := &s3.ListMultipartUploadsInput{ - Bucket: aws.String("examplebucket"), + Bucket: aws.String("examplebucket"), + KeyMarker: aws.String("nextkeyfrompreviousresponse"), + MaxUploads: aws.Int64(2), + UploadIdMarker: aws.String("valuefrompreviousresponse"), } result, err := svc.ListMultipartUploads(input) @@ -1751,15 +1751,16 @@ func ExampleS3_PutBucketWebsite_shared00() { fmt.Println(result) } -// To create an object. -// The following example creates an object. If the bucket is versioning enabled, S3 -// returns version ID in response. +// To upload an object +// The following example uploads an object to a versioning-enabled bucket. The source +// file is specified using Windows file syntax. S3 returns VersionId of the newly created +// object. func ExampleS3_PutObject_shared00() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), + Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), Bucket: aws.String("examplebucket"), - Key: aws.String("objectkey"), + Key: aws.String("HappyFace.jpg"), } result, err := svc.PutObject(input) @@ -1780,16 +1781,19 @@ func ExampleS3_PutObject_shared00() { fmt.Println(result) } -// To upload an object -// The following example uploads an object to a versioning-enabled bucket. The source -// file is specified using Windows file syntax. S3 returns VersionId of the newly created -// object. +// To upload object and specify user-defined metadata +// The following example creates an object. The request also specifies optional metadata. +// If the bucket is versioning enabled, S3 returns version ID in response. func ExampleS3_PutObject_shared01() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Key: aws.String("exampleobject"), + Metadata: map[string]*string{ + "metadata1": aws.String("value1"), + "metadata2": aws.String("value2"), + }, } result, err := svc.PutObject(input) @@ -1810,19 +1814,17 @@ func ExampleS3_PutObject_shared01() { fmt.Println(result) } -// To upload object and specify user-defined metadata -// The following example creates an object. The request also specifies optional metadata. -// If the bucket is versioning enabled, S3 returns version ID in response. +// To upload an object (specify optional headers) +// The following example uploads an object. The request specifies optional request headers +// to directs S3 to use specific storage class and use server-side encryption. func ExampleS3_PutObject_shared02() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), - Bucket: aws.String("examplebucket"), - Key: aws.String("exampleobject"), - Metadata: map[string]*string{ - "metadata1": aws.String("value1"), - "metadata2": aws.String("value2"), - }, + Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), + ServerSideEncryption: aws.String("AES256"), + StorageClass: aws.String("STANDARD_IA"), } result, err := svc.PutObject(input) @@ -1843,16 +1845,15 @@ func ExampleS3_PutObject_shared02() { fmt.Println(result) } -// To upload an object and specify optional tags -// The following example uploads an object. The request specifies optional object tags. -// The bucket is versioned, therefore S3 returns version ID of the newly created object. +// To create an object. +// The following example creates an object. If the bucket is versioning enabled, S3 +// returns version ID in response. func ExampleS3_PutObject_shared03() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("c:\\HappyFace.jpg")), - Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), - Tagging: aws.String("key1=value1&key2=value2"), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), + Bucket: aws.String("examplebucket"), + Key: aws.String("objectkey"), } result, err := svc.PutObject(input) @@ -1873,17 +1874,18 @@ func ExampleS3_PutObject_shared03() { fmt.Println(result) } -// To upload an object (specify optional headers) -// The following example uploads an object. The request specifies optional request headers -// to directs S3 to use specific storage class and use server-side encryption. +// To upload an object and specify server-side encryption and object tags +// The following example uploads and object. The request specifies the optional server-side +// encryption option. The request also specifies optional object tags. If the bucket +// is versioning enabled, S3 returns version ID in response. func ExampleS3_PutObject_shared04() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("HappyFace.jpg")), + Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), Bucket: aws.String("examplebucket"), - Key: aws.String("HappyFace.jpg"), + Key: aws.String("exampleobject"), ServerSideEncryption: aws.String("AES256"), - StorageClass: aws.String("STANDARD_IA"), + Tagging: aws.String("key1=value1&key2=value2"), } result, err := svc.PutObject(input) @@ -1904,18 +1906,16 @@ func ExampleS3_PutObject_shared04() { fmt.Println(result) } -// To upload an object and specify server-side encryption and object tags -// The following example uploads and object. The request specifies the optional server-side -// encryption option. The request also specifies optional object tags. If the bucket -// is versioning enabled, S3 returns version ID in response. +// To upload an object and specify optional tags +// The following example uploads an object. The request specifies optional object tags. +// The bucket is versioned, therefore S3 returns version ID of the newly created object. func ExampleS3_PutObject_shared05() { svc := s3.New(session.New()) input := &s3.PutObjectInput{ - Body: aws.ReadSeekCloser(strings.NewReader("filetoupload")), - Bucket: aws.String("examplebucket"), - Key: aws.String("exampleobject"), - ServerSideEncryption: aws.String("AES256"), - Tagging: aws.String("key1=value1&key2=value2"), + Body: aws.ReadSeekCloser(strings.NewReader("c:\\HappyFace.jpg")), + Bucket: aws.String("examplebucket"), + Key: aws.String("HappyFace.jpg"), + Tagging: aws.String("key1=value1&key2=value2"), } result, err := svc.PutObject(input) @@ -2107,17 +2107,18 @@ func ExampleS3_UploadPart_shared00() { fmt.Println(result) } -// To upload a part by copying data from an existing object as data source -// The following example uploads a part of a multipart upload by copying data from an -// existing object as data source. +// To upload a part by copying byte range from an existing object as data source +// The following example uploads a part of a multipart upload by copying a specified +// byte range from an existing object as data source. func ExampleS3_UploadPartCopy_shared00() { svc := s3.New(session.New()) input := &s3.UploadPartCopyInput{ - Bucket: aws.String("examplebucket"), - CopySource: aws.String("/bucketname/sourceobjectkey"), - Key: aws.String("examplelargeobject"), - PartNumber: aws.Int64(1), - UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), + Bucket: aws.String("examplebucket"), + CopySource: aws.String("/bucketname/sourceobjectkey"), + CopySourceRange: aws.String("bytes=1-100000"), + Key: aws.String("examplelargeobject"), + PartNumber: aws.Int64(2), + UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), } result, err := svc.UploadPartCopy(input) @@ -2138,18 +2139,17 @@ func ExampleS3_UploadPartCopy_shared00() { fmt.Println(result) } -// To upload a part by copying byte range from an existing object as data source -// The following example uploads a part of a multipart upload by copying a specified -// byte range from an existing object as data source. +// To upload a part by copying data from an existing object as data source +// The following example uploads a part of a multipart upload by copying data from an +// existing object as data source. func ExampleS3_UploadPartCopy_shared01() { svc := s3.New(session.New()) input := &s3.UploadPartCopyInput{ - Bucket: aws.String("examplebucket"), - CopySource: aws.String("/bucketname/sourceobjectkey"), - CopySourceRange: aws.String("bytes=1-100000"), - Key: aws.String("examplelargeobject"), - PartNumber: aws.Int64(2), - UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), + Bucket: aws.String("examplebucket"), + CopySource: aws.String("/bucketname/sourceobjectkey"), + Key: aws.String("examplelargeobject"), + PartNumber: aws.Int64(1), + UploadId: aws.String("exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--"), } result, err := svc.UploadPartCopy(input)