diff --git a/.changelog/89b6da9ef7dc438f862577cb88196b10.json b/.changelog/89b6da9ef7dc438f862577cb88196b10.json new file mode 100644 index 00000000000..35002569e40 --- /dev/null +++ b/.changelog/89b6da9ef7dc438f862577cb88196b10.json @@ -0,0 +1,8 @@ +{ + "id": "89b6da9e-f7dc-438f-8625-77cb88196b10", + "type": "feature", + "description": "Added response overrides to Head Object requests.", + "modules": [ + "service/s3" + ] +} \ No newline at end of file diff --git a/.changelog/b63a0f0f2b34482789e79fcf2e6db4b0.json b/.changelog/b63a0f0f2b34482789e79fcf2e6db4b0.json new file mode 100644 index 00000000000..ee0be3f131b --- /dev/null +++ b/.changelog/b63a0f0f2b34482789e79fcf2e6db4b0.json @@ -0,0 +1,8 @@ +{ + "id": "b63a0f0f-2b34-4827-89e7-9fcf2e6db4b0", + "type": "feature", + "description": "Increases Customer API's ManagedServiceData length", + "modules": [ + "service/fms" + ] +} \ No newline at end of file diff --git a/.changelog/e6da241c643b4864a2da08cb763f8afe.json b/.changelog/e6da241c643b4864a2da08cb763f8afe.json new file mode 100644 index 00000000000..c0c0d34738c --- /dev/null +++ b/.changelog/e6da241c643b4864a2da08cb763f8afe.json @@ -0,0 +1,8 @@ +{ + "id": "e6da241c-643b-4864-a2da-08cb763f8afe", + "type": "feature", + "description": "Documentation updates for Elastic Compute Cloud (EC2).", + "modules": [ + "service/ec2" + ] +} \ No newline at end of file diff --git a/feature/dynamodbstreams/attributevalue/go_module_metadata.go b/feature/dynamodbstreams/attributevalue/go_module_metadata.go index 54177da5a7b..b70823954d4 100644 --- a/feature/dynamodbstreams/attributevalue/go_module_metadata.go +++ b/feature/dynamodbstreams/attributevalue/go_module_metadata.go @@ -3,4 +3,4 @@ package attributevalue // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.13.39" +const goModuleVersion = "1.14.7" diff --git a/service/ec2/api_op_CreateInstanceConnectEndpoint.go b/service/ec2/api_op_CreateInstanceConnectEndpoint.go index a4439685403..98b41f21bdd 100644 --- a/service/ec2/api_op_CreateInstanceConnectEndpoint.go +++ b/service/ec2/api_op_CreateInstanceConnectEndpoint.go @@ -50,15 +50,14 @@ type CreateInstanceConnectEndpointInput struct { // UnauthorizedOperation . DryRun *bool - // Indicates whether your client's IP address is preserved as the source. The - // value is true or false . + // Indicates whether the client IP address is preserved as the source. The + // following are the possible values. // - // - If true , your client's IP address is used when you connect to a resource. + // - true - Use the client IP address as the source. // - // - If false , the elastic network interface IP address is used when you connect - // to a resource. + // - false - Use the network interface IP address as the source. // - // Default: true + // Default: false PreserveClientIp *bool // One or more security groups to associate with the endpoint. If you don't diff --git a/service/ec2/api_op_CreateVolume.go b/service/ec2/api_op_CreateVolume.go index 3deecf0582b..84ced5b6860 100644 --- a/service/ec2/api_op_CreateVolume.go +++ b/service/ec2/api_op_CreateVolume.go @@ -132,7 +132,12 @@ type CreateVolumeInput struct { // [Amazon EBS Multi-Attach]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volumes-multi.html MultiAttachEnabled *bool - // The Amazon Resource Name (ARN) of the Outpost. + // The Amazon Resource Name (ARN) of the Outpost on which to create the volume. + // + // If you intend to use a volume with an instance running on an outpost, then you + // must create the volume on the same outpost as the instance. You can't use a + // volume created in an Amazon Web Services Region with an instance on an Amazon + // Web Services outpost, or the other way around. OutpostArn *string // The size of the volume, in GiBs. You must specify either a snapshot ID or a diff --git a/service/ec2/api_op_DescribeVolumes.go b/service/ec2/api_op_DescribeVolumes.go index 4689460a825..5d2a8de6069 100644 --- a/service/ec2/api_op_DescribeVolumes.go +++ b/service/ec2/api_op_DescribeVolumes.go @@ -115,7 +115,7 @@ type DescribeVolumesInput struct { // the end of the items returned by the previous request. NextToken *string - // The volume IDs. + // The volume IDs. If not specified, then all volumes are included in the response. VolumeIds []string noSmithyDocumentSerde diff --git a/service/ec2/api_op_ModifyInstanceAttribute.go b/service/ec2/api_op_ModifyInstanceAttribute.go index 5f1cdb7a140..8b8199f4f5c 100644 --- a/service/ec2/api_op_ModifyInstanceAttribute.go +++ b/service/ec2/api_op_ModifyInstanceAttribute.go @@ -143,10 +143,11 @@ type ModifyInstanceAttributeInput struct { // PV instance can make it unreachable. SriovNetSupport *types.AttributeValue - // Changes the instance's user data to the specified value. If you are using an - // Amazon Web Services SDK or command line tool, base64-encoding is performed for - // you, and you can load the text from a file. Otherwise, you must provide - // base64-encoded text. + // Changes the instance's user data to the specified value. User data must be + // base64-encoded. Depending on the tool or SDK that you're using, the + // base64-encoding might be performed for you. For more information, see [Work with instance user data]. + // + // [Work with instance user data]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-add-user-data.html UserData *types.BlobAttributeValue // A new value for the attribute. Use only with the kernel , ramdisk , userData , diff --git a/service/ec2/api_op_RunInstances.go b/service/ec2/api_op_RunInstances.go index 9acea74e609..cca733e68c7 100644 --- a/service/ec2/api_op_RunInstances.go +++ b/service/ec2/api_op_RunInstances.go @@ -382,12 +382,11 @@ type RunInstancesInput struct { // [CreateTags]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html TagSpecifications []types.TagSpecification - // The user data script to make available to the instance. For more information, - // see [Run commands on your Amazon EC2 instance at launch]in the Amazon EC2 User Guide. If you are using a command line tool, - // base64-encoding is performed for you, and you can load the text from a file. - // Otherwise, you must provide base64-encoded text. User data is limited to 16 KB. + // The user data to make available to the instance. User data must be + // base64-encoded. Depending on the tool or SDK that you're using, the + // base64-encoding might be performed for you. For more information, see [Work with instance user data]. // - // [Run commands on your Amazon EC2 instance at launch]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html + // [Work with instance user data]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-add-user-data.html UserData *string noSmithyDocumentSerde diff --git a/service/ec2/types/enums.go b/service/ec2/types/enums.go index 91f549766cb..e13e4194d5a 100644 --- a/service/ec2/types/enums.go +++ b/service/ec2/types/enums.go @@ -2542,6 +2542,7 @@ type HostTenancy string // Enum values for HostTenancy const ( + HostTenancyDefault HostTenancy = "default" HostTenancyDedicated HostTenancy = "dedicated" HostTenancyHost HostTenancy = "host" ) @@ -2552,6 +2553,7 @@ const ( // The ordering of this slice is not guaranteed to be stable across updates. func (HostTenancy) Values() []HostTenancy { return []HostTenancy{ + "default", "dedicated", "host", } diff --git a/service/ec2/types/types.go b/service/ec2/types/types.go index e8da36769d1..9b0beb354c4 100644 --- a/service/ec2/types/types.go +++ b/service/ec2/types/types.go @@ -990,7 +990,31 @@ type ByoipCidr struct { // [Local Zones]: https://docs.aws.amazon.com/local-zones/latest/ug/how-local-zones-work.html NetworkBorderGroup *string - // The state of the address pool. + // The state of the address range. + // + // - advertised : The address range is being advertised to the internet by Amazon + // Web Services. + // + // - deprovisioned : The address range is deprovisioned. + // + // - failed-deprovision : The request to deprovision the address range was + // unsuccessful. Ensure that all EIPs from the range have been deallocated and try + // again. + // + // - failed-provision : The request to provision the address range was + // unsuccessful. + // + // - pending-deprovision : You’ve submitted a request to deprovision an address + // range and it's pending. + // + // - pending-provision : You’ve submitted a request to provision an address range + // and it's pending. + // + // - provisioned : The address range is provisioned and can be advertised. The + // range is not currently advertised. + // + // - provisioned-not-publicly-advertisable : The address range is provisioned and + // cannot be advertised. State ByoipCidrState // Upon success, contains the ID of the address pool. Otherwise, contains an error @@ -7288,7 +7312,7 @@ type InstanceRequirements struct { // // The parameter accepts an integer, which Amazon EC2 interprets as a percentage. // - // If you set DesiredCapacityType to vcpu or memory-mib , the price protection + // If you set TargetCapacityUnitType to vcpu or memory-mib , the price protection // threshold is based on the per vCPU or per memory price instead of the per // instance price. // @@ -7647,7 +7671,7 @@ type InstanceRequirementsRequest struct { // // The parameter accepts an integer, which Amazon EC2 interprets as a percentage. // - // If you set DesiredCapacityType to vcpu or memory-mib , the price protection + // If you set TargetCapacityUnitType to vcpu or memory-mib , the price protection // threshold is based on the per vCPU or per memory price instead of the per // instance price. // diff --git a/service/s3/api_op_CopyObject.go b/service/s3/api_op_CopyObject.go index 5f63de146bc..5f8275ca650 100644 --- a/service/s3/api_op_CopyObject.go +++ b/service/s3/api_op_CopyObject.go @@ -86,8 +86,7 @@ import ( // Response and special errors When the request is an HTTP 1.1 request, the // response is chunk encoded. When the request is not an HTTP 1.1 request, the // response would not contain the Content-Length . You always need to read the -// entire response body to check if the copy succeeds. to keep the connection alive -// while we copy the data. +// entire response body to check if the copy succeeds. // // - If the copy is successful, you receive a response with information about // the copied object. diff --git a/service/s3/api_op_CreateSession.go b/service/s3/api_op_CreateSession.go index 5ebee7f8452..b8c1736b404 100644 --- a/service/s3/api_op_CreateSession.go +++ b/service/s3/api_op_CreateSession.go @@ -124,7 +124,7 @@ func (in *CreateSessionInput) bindEndpointParams(p *EndpointParameters) { type CreateSessionOutput struct { - // The established temporary security credentials for the created session.. + // The established temporary security credentials for the created session. // // This member is required. Credentials *types.SessionCredentials diff --git a/service/s3/api_op_DeleteObjects.go b/service/s3/api_op_DeleteObjects.go index 3f7cf79c34b..fff3d896d50 100644 --- a/service/s3/api_op_DeleteObjects.go +++ b/service/s3/api_op_DeleteObjects.go @@ -62,7 +62,7 @@ import ( // the s3:DeleteObject permission. // // - s3:DeleteObjectVersion - To delete a specific version of an object from a -// versiong-enabled bucket, you must specify the s3:DeleteObjectVersion +// versioning-enabled bucket, you must specify the s3:DeleteObjectVersion // permission. // // - Directory bucket permissions - To grant access to this API operation on a diff --git a/service/s3/api_op_HeadObject.go b/service/s3/api_op_HeadObject.go index 97aea22fdf8..064734cab2e 100644 --- a/service/s3/api_op_HeadObject.go +++ b/service/s3/api_op_HeadObject.go @@ -289,6 +289,24 @@ type HeadObjectInput struct { // [Downloading Objects in Requester Pays Buckets]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html RequestPayer types.RequestPayer + // Sets the Cache-Control header of the response. + ResponseCacheControl *string + + // Sets the Content-Disposition header of the response. + ResponseContentDisposition *string + + // Sets the Content-Encoding header of the response. + ResponseContentEncoding *string + + // Sets the Content-Language header of the response. + ResponseContentLanguage *string + + // Sets the Content-Type header of the response. + ResponseContentType *string + + // Sets the Expires header of the response. + ResponseExpires *time.Time + // Specifies the algorithm to use when encrypting the object (for example, AES256). // // This functionality is not supported for directory buckets. diff --git a/service/s3/api_op_ListObjects.go b/service/s3/api_op_ListObjects.go index f8b2eeb62c7..3ad2ff82505 100644 --- a/service/s3/api_op_ListObjects.go +++ b/service/s3/api_op_ListObjects.go @@ -174,7 +174,7 @@ type ListObjectsOutput struct { // Encoding type used by Amazon S3 to encode object keys in the response. If using // url , non-ASCII characters used in an object's key name will be URL encoded. For - // example, the object test_file(3).png will appear as test_file%283%29.png. + // example, the object test_file(3).png will appear as test_file%283%29.png . EncodingType types.EncodingType // A flag that indicates whether Amazon S3 returned all of the results that diff --git a/service/s3/api_op_ListObjectsV2.go b/service/s3/api_op_ListObjectsV2.go index 296ee7e8e6d..90449736195 100644 --- a/service/s3/api_op_ListObjectsV2.go +++ b/service/s3/api_op_ListObjectsV2.go @@ -154,7 +154,7 @@ type ListObjectsV2Input struct { // Encoding type used by Amazon S3 to encode object keys in the response. If using // url , non-ASCII characters used in an object's key name will be URL encoded. For - // example, the object test_file(3).png will appear as test_file%283%29.png. + // example, the object test_file(3).png will appear as test_file%283%29.png . EncodingType types.EncodingType // The account ID of the expected bucket owner. If the account ID that you provide diff --git a/service/s3/api_op_UploadPartCopy.go b/service/s3/api_op_UploadPartCopy.go index 0b2c008b289..0bd16a3a5af 100644 --- a/service/s3/api_op_UploadPartCopy.go +++ b/service/s3/api_op_UploadPartCopy.go @@ -66,7 +66,7 @@ import ( // - If the destination bucket is a general purpose bucket, you must have the // s3:PutObject permission to write the object copy to the destination bucket. // -// For information about permissions required to use the multipart upload API, see [Multipart Upload and Permissions] +// For information about permissions required to use the multipart upload API, see [Multipart upload API and permissions] // // in the Amazon S3 User Guide. // @@ -76,7 +76,7 @@ import ( // // - If the source object that you want to copy is in a directory bucket, you // must have the s3express:CreateSession permission in the Action element of a -// policy to read the object . By default, the session is in the ReadWrite mode. +// policy to read the object. By default, the session is in the ReadWrite mode. // If you want to restrict the access, you can explicitly set the // s3express:SessionMode condition key to ReadOnly on the copy source bucket. // @@ -134,6 +134,7 @@ import ( // [ListParts]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html // [UploadPart]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html // [Regional and Zonal endpoints]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html +// [Multipart upload API and permissions]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions // [CompleteMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html // [CreateMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html // [Multipart upload limits]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/qfacts.html @@ -143,7 +144,6 @@ import ( // [Example bucket policies for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html // [Operations on Objects]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html // [ListMultipartUploads]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html -// [Multipart Upload and Permissions]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html // // [CopyObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html func (c *Client) UploadPartCopy(ctx context.Context, params *UploadPartCopyInput, optFns ...func(*Options)) (*UploadPartCopyOutput, error) { diff --git a/service/s3/serializers.go b/service/s3/serializers.go index 09334d40782..96022eee0f3 100644 --- a/service/s3/serializers.go +++ b/service/s3/serializers.go @@ -4208,6 +4208,30 @@ func awsRestxml_serializeOpHttpBindingsHeadObjectInput(v *HeadObjectInput, encod encoder.SetHeader(locationName).String(string(v.RequestPayer)) } + if v.ResponseCacheControl != nil { + encoder.SetQuery("response-cache-control").String(*v.ResponseCacheControl) + } + + if v.ResponseContentDisposition != nil { + encoder.SetQuery("response-content-disposition").String(*v.ResponseContentDisposition) + } + + if v.ResponseContentEncoding != nil { + encoder.SetQuery("response-content-encoding").String(*v.ResponseContentEncoding) + } + + if v.ResponseContentLanguage != nil { + encoder.SetQuery("response-content-language").String(*v.ResponseContentLanguage) + } + + if v.ResponseContentType != nil { + encoder.SetQuery("response-content-type").String(*v.ResponseContentType) + } + + if v.ResponseExpires != nil { + encoder.SetQuery("response-expires").String(smithytime.FormatHTTPDate(*v.ResponseExpires)) + } + if v.SSECustomerAlgorithm != nil && len(*v.SSECustomerAlgorithm) > 0 { locationName := "X-Amz-Server-Side-Encryption-Customer-Algorithm" encoder.SetHeader(locationName).String(*v.SSECustomerAlgorithm) diff --git a/service/s3/types/types.go b/service/s3/types/types.go index 08225e62f27..e2775f5a117 100644 --- a/service/s3/types/types.go +++ b/service/s3/types/types.go @@ -1850,10 +1850,10 @@ type Grantee struct { type IndexDocument struct { // A suffix that is appended to a request that is for a directory on the website - // endpoint (for example,if the suffix is index.html and you make a request to - // samplebucket/images/ the data that is returned will be for the object with the - // key name images/index.html) The suffix must not be empty and must not include a - // slash character. + // endpoint. (For example, if the suffix is index.html and you make a request to + // samplebucket/images/ , the data that is returned will be for the object with the + // key name images/index.html .) The suffix must not be empty and must not include + // a slash character. // // Replacement must be made for object keys containing special characters (such as // carriage returns) when using XML requests. For more information, see [XML related object key constraints]. @@ -2547,9 +2547,9 @@ type MultipartUpload struct { // the object's lifetime. type NoncurrentVersionExpiration struct { - // Specifies how many newer noncurrent versions must exist before Amazon S3 can - // perform the associated action on a given version. If there are this many more - // recent noncurrent versions, Amazon S3 will take the associated action. For more + // Specifies how many noncurrent versions Amazon S3 will retain. You can specify + // up to 100 noncurrent versions to retain. Amazon S3 will permanently delete any + // additional noncurrent versions beyond the specified number to retain. For more // information about noncurrent versions, see [Lifecycle configuration elements]in the Amazon S3 User Guide. // // [Lifecycle configuration elements]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html @@ -2575,10 +2575,11 @@ type NoncurrentVersionExpiration struct { // specific period in the object's lifetime. type NoncurrentVersionTransition struct { - // Specifies how many newer noncurrent versions must exist before Amazon S3 can - // perform the associated action on a given version. If there are this many more - // recent noncurrent versions, Amazon S3 will take the associated action. For more - // information about noncurrent versions, see [Lifecycle configuration elements]in the Amazon S3 User Guide. + // Specifies how many noncurrent versions Amazon S3 will retain in the same + // storage class before transitioning objects. You can specify up to 100 noncurrent + // versions to retain. Amazon S3 will transition any additional noncurrent versions + // beyond the specified number to retain. For more information about noncurrent + // versions, see [Lifecycle configuration elements]in the Amazon S3 User Guide. // // [Lifecycle configuration elements]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html NewerNoncurrentVersions *int32