mirror of https://github.com/kubernetes/kops.git
Upgrade aws-sdk-go
This commit is contained in:
parent
e187359069
commit
98bed37ffa
4
go.mod
4
go.mod
|
|
@ -47,7 +47,7 @@ require (
|
|||
github.com/aliyun/alibaba-cloud-sdk-go v1.61.1059
|
||||
github.com/apparentlymart/go-cidr v1.1.0
|
||||
github.com/aws/amazon-ec2-instance-selector/v2 v2.0.2
|
||||
github.com/aws/aws-sdk-go v1.38.29
|
||||
github.com/aws/aws-sdk-go v1.40.0
|
||||
github.com/blang/semver/v4 v4.0.0
|
||||
github.com/denverdino/aliyungo v0.0.0-20210425065611-55bee4942cba
|
||||
github.com/digitalocean/godo v1.60.0
|
||||
|
|
@ -76,7 +76,7 @@ require (
|
|||
github.com/weaveworks/mesh v0.0.0-20191105120815-58dbcc3e8e63
|
||||
github.com/zclconf/go-cty v1.8.2
|
||||
golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a
|
||||
golang.org/x/net v0.0.0-20210525063256-abc453219eb5
|
||||
golang.org/x/net v0.0.0-20210614182718-04defd469f4e
|
||||
golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c
|
||||
golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40
|
||||
google.golang.org/api v0.45.0
|
||||
|
|
|
|||
8
go.sum
8
go.sum
|
|
@ -175,8 +175,8 @@ github.com/aws/aws-sdk-go v1.27.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN
|
|||
github.com/aws/aws-sdk-go v1.31.12/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0=
|
||||
github.com/aws/aws-sdk-go v1.34.30/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/+8rV9s48=
|
||||
github.com/aws/aws-sdk-go v1.35.24/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k=
|
||||
github.com/aws/aws-sdk-go v1.38.29 h1:Go3a0Bw3V12he3XuefJsZ1CICn1wjmn6lp+FjICQR2w=
|
||||
github.com/aws/aws-sdk-go v1.38.29/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
|
||||
github.com/aws/aws-sdk-go v1.40.0 h1:nTCSQAeahNt15SOYxuDwJ8XvMhOU3Uqe7eJUPv7+Vsk=
|
||||
github.com/aws/aws-sdk-go v1.40.0/go.mod h1:585smgzpB/KqRA+K3y/NL/oYRqQvpNJYvLm+LY1U59Q=
|
||||
github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g=
|
||||
github.com/beorn7/perks v0.0.0-20160804104726-4c0e84591b9a/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
|
||||
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
|
||||
|
|
@ -1330,8 +1330,8 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v
|
|||
golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc=
|
||||
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
|
||||
golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk=
|
||||
golang.org/x/net v0.0.0-20210525063256-abc453219eb5 h1:wjuX4b5yYQnEQHzd+CBcrcC6OVR2J1CN6mUy0oSxIPo=
|
||||
golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/net v0.0.0-20210614182718-04defd469f4e h1:XpT3nA5TvE525Ne3hInMh6+GETgn27Zfm9dxsThnX2Q=
|
||||
golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
|
||||
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
|
||||
|
|
|
|||
|
|
@ -243,8 +243,8 @@ github.com/aws/aws-sdk-go v1.31.6/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU
|
|||
github.com/aws/aws-sdk-go v1.31.12/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0=
|
||||
github.com/aws/aws-sdk-go v1.34.30/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/+8rV9s48=
|
||||
github.com/aws/aws-sdk-go v1.35.24/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k=
|
||||
github.com/aws/aws-sdk-go v1.38.29 h1:Go3a0Bw3V12he3XuefJsZ1CICn1wjmn6lp+FjICQR2w=
|
||||
github.com/aws/aws-sdk-go v1.38.29/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
|
||||
github.com/aws/aws-sdk-go v1.40.0 h1:nTCSQAeahNt15SOYxuDwJ8XvMhOU3Uqe7eJUPv7+Vsk=
|
||||
github.com/aws/aws-sdk-go v1.40.0/go.mod h1:585smgzpB/KqRA+K3y/NL/oYRqQvpNJYvLm+LY1U59Q=
|
||||
github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g=
|
||||
github.com/bazelbuild/buildtools v0.0.0-20190917191645-69366ca98f89/go.mod h1:5JP0TXzWDHXv8qvxRC4InIazwdyDseBDbzESUMKk1yU=
|
||||
github.com/bazelbuild/rules_go v0.22.1/go.mod h1:MC23Dc/wkXEyk3Wpq6lCqz0ZAYOZDw2DR5y3N1q2i7M=
|
||||
|
|
@ -1656,8 +1656,8 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v
|
|||
golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc=
|
||||
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
|
||||
golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk=
|
||||
golang.org/x/net v0.0.0-20210525063256-abc453219eb5 h1:wjuX4b5yYQnEQHzd+CBcrcC6OVR2J1CN6mUy0oSxIPo=
|
||||
golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/net v0.0.0-20210614182718-04defd469f4e h1:XpT3nA5TvE525Ne3hInMh6+GETgn27Zfm9dxsThnX2Q=
|
||||
golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
|
||||
golang.org/x/oauth2 v0.0.0-20190402181905-9f3314589c9a/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
|
||||
|
|
|
|||
|
|
@ -13,7 +13,6 @@ package ec2metadata
|
|||
|
||||
import (
|
||||
"bytes"
|
||||
"errors"
|
||||
"io"
|
||||
"net/http"
|
||||
"net/url"
|
||||
|
|
@ -234,7 +233,8 @@ func unmarshalError(r *request.Request) {
|
|||
|
||||
// Response body format is not consistent between metadata endpoints.
|
||||
// Grab the error message as a string and include that as the source error
|
||||
r.Error = awserr.NewRequestFailure(awserr.New("EC2MetadataError", "failed to make EC2Metadata request", errors.New(b.String())),
|
||||
r.Error = awserr.NewRequestFailure(
|
||||
awserr.New("EC2MetadataError", "failed to make EC2Metadata request\n"+b.String(), nil),
|
||||
r.HTTPResponse.StatusCode, r.RequestID)
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -81,7 +81,6 @@ func decodeV3Endpoints(modelDef modelDefinition, opts DecodeModelOptions) (Resol
|
|||
// Customization
|
||||
for i := 0; i < len(ps); i++ {
|
||||
p := &ps[i]
|
||||
custAddEC2Metadata(p)
|
||||
custAddS3DualStack(p)
|
||||
custRegionalS3(p)
|
||||
custRmIotDataService(p)
|
||||
|
|
@ -140,19 +139,6 @@ func custAddDualstack(p *partition, svcName string) {
|
|||
p.Services[svcName] = s
|
||||
}
|
||||
|
||||
func custAddEC2Metadata(p *partition) {
|
||||
p.Services["ec2metadata"] = service{
|
||||
IsRegionalized: boxedFalse,
|
||||
PartitionEndpoint: "aws-global",
|
||||
Endpoints: endpoints{
|
||||
"aws-global": endpoint{
|
||||
Hostname: "169.254.169.254/latest",
|
||||
Protocols: []string{"http"},
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func custRmIotDataService(p *partition) {
|
||||
delete(p.Services, "data.iot")
|
||||
}
|
||||
|
|
|
|||
|
|
@ -302,6 +302,7 @@ var awsPartition = partition{
|
|||
"ap-east-1": endpoint{},
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-northeast-3": endpoint{},
|
||||
"ap-south-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
|
|
@ -637,7 +638,43 @@ var awsPartition = partition{
|
|||
"api.fleethub.iot": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-south-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
"ca-central-1": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-north-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"eu-west-2": endpoint{},
|
||||
"fips-ca-central-1": endpoint{
|
||||
Hostname: "api.fleethub.iot-fips.ca-central-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "ca-central-1",
|
||||
},
|
||||
},
|
||||
"fips-us-east-1": endpoint{
|
||||
Hostname: "api.fleethub.iot-fips.us-east-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-1",
|
||||
},
|
||||
},
|
||||
"fips-us-east-2": endpoint{
|
||||
Hostname: "api.fleethub.iot-fips.us-east-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-2",
|
||||
},
|
||||
},
|
||||
"fips-us-west-2": endpoint{
|
||||
Hostname: "api.fleethub.iot-fips.us-west-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-west-2",
|
||||
},
|
||||
},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"api.mediatailor": service{
|
||||
|
|
@ -824,6 +861,16 @@ var awsPartition = partition{
|
|||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"apprunner": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"ap-northeast-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"appstream2": service{
|
||||
Defaults: endpoint{
|
||||
Protocols: []string{"https"},
|
||||
|
|
@ -839,6 +886,7 @@ var awsPartition = partition{
|
|||
"ap-southeast-2": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"eu-west-2": endpoint{},
|
||||
"fips": endpoint{
|
||||
Hostname: "appstream2-fips.us-west-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
|
|
@ -855,6 +903,7 @@ var awsPartition = partition{
|
|||
"ap-east-1": endpoint{},
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-northeast-3": endpoint{},
|
||||
"ap-south-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
|
|
@ -959,6 +1008,7 @@ var awsPartition = partition{
|
|||
"ap-east-1": endpoint{},
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-northeast-3": endpoint{},
|
||||
"ap-south-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
|
|
@ -1592,11 +1642,12 @@ var awsPartition = partition{
|
|||
Region: "us-west-2",
|
||||
},
|
||||
},
|
||||
"sa-east-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-1": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
"me-south-1": endpoint{},
|
||||
"sa-east-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-1": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"cognito-idp": service{
|
||||
|
|
@ -1637,11 +1688,12 @@ var awsPartition = partition{
|
|||
Region: "us-west-2",
|
||||
},
|
||||
},
|
||||
"sa-east-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-1": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
"me-south-1": endpoint{},
|
||||
"sa-east-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-1": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"cognito-sync": service{
|
||||
|
|
@ -2344,17 +2396,6 @@ var awsPartition = partition{
|
|||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"ec2metadata": service{
|
||||
PartitionEndpoint: "aws-global",
|
||||
IsRegionalized: boxedFalse,
|
||||
|
||||
Endpoints: endpoints{
|
||||
"aws-global": endpoint{
|
||||
Hostname: "169.254.169.254/latest",
|
||||
Protocols: []string{"http"},
|
||||
},
|
||||
},
|
||||
},
|
||||
"ecs": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -2840,8 +2881,11 @@ var awsPartition = partition{
|
|||
"ap-southeast-2": endpoint{},
|
||||
"ca-central-1": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-north-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"eu-west-2": endpoint{},
|
||||
"eu-west-3": endpoint{},
|
||||
"sa-east-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-1": endpoint{},
|
||||
|
|
@ -2940,6 +2984,26 @@ var awsPartition = partition{
|
|||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"finspace": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"ca-central-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"finspace-api": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"ca-central-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"firehose": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -2999,6 +3063,7 @@ var awsPartition = partition{
|
|||
"ap-east-1": endpoint{},
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-northeast-3": endpoint{},
|
||||
"ap-south-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
|
|
@ -3141,9 +3206,27 @@ var awsPartition = partition{
|
|||
"ap-southeast-2": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
"fips-us-east-1": endpoint{
|
||||
Hostname: "forecast-fips.us-east-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-1",
|
||||
},
|
||||
},
|
||||
"fips-us-east-2": endpoint{
|
||||
Hostname: "forecast-fips.us-east-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-2",
|
||||
},
|
||||
},
|
||||
"fips-us-west-2": endpoint{
|
||||
Hostname: "forecast-fips.us-west-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-west-2",
|
||||
},
|
||||
},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"forecastquery": service{
|
||||
|
|
@ -3156,9 +3239,27 @@ var awsPartition = partition{
|
|||
"ap-southeast-2": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
"fips-us-east-1": endpoint{
|
||||
Hostname: "forecastquery-fips.us-east-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-1",
|
||||
},
|
||||
},
|
||||
"fips-us-east-2": endpoint{
|
||||
Hostname: "forecastquery-fips.us-east-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-2",
|
||||
},
|
||||
},
|
||||
"fips-us-west-2": endpoint{
|
||||
Hostname: "forecastquery-fips.us-west-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-west-2",
|
||||
},
|
||||
},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"fsx": service{
|
||||
|
|
@ -3372,6 +3473,7 @@ var awsPartition = partition{
|
|||
|
||||
Endpoints: endpoints{
|
||||
"af-south-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-north-1": endpoint{},
|
||||
|
|
@ -3470,6 +3572,8 @@ var awsPartition = partition{
|
|||
},
|
||||
Endpoints: endpoints{
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"honeycode": service{
|
||||
|
|
@ -3731,6 +3835,18 @@ var awsPartition = partition{
|
|||
"iotwireless": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"ap-northeast-1": endpoint{
|
||||
Hostname: "api.iotwireless.ap-northeast-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "ap-northeast-1",
|
||||
},
|
||||
},
|
||||
"ap-southeast-2": endpoint{
|
||||
Hostname: "api.iotwireless.ap-southeast-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "ap-southeast-2",
|
||||
},
|
||||
},
|
||||
"eu-west-1": endpoint{
|
||||
Hostname: "api.iotwireless.eu-west-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
|
|
@ -3743,6 +3859,12 @@ var awsPartition = partition{
|
|||
Region: "us-east-1",
|
||||
},
|
||||
},
|
||||
"us-west-2": endpoint{
|
||||
Hostname: "api.iotwireless.us-west-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-west-2",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
"kafka": service{
|
||||
|
|
@ -3892,6 +4014,7 @@ var awsPartition = partition{
|
|||
"lakeformation": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"af-south-1": endpoint{},
|
||||
"ap-east-1": endpoint{},
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
|
|
@ -4047,6 +4170,7 @@ var awsPartition = partition{
|
|||
"ap-southeast-2": endpoint{},
|
||||
"ca-central-1": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-north-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"eu-west-2": endpoint{},
|
||||
"eu-west-3": endpoint{},
|
||||
|
|
@ -4724,6 +4848,12 @@ var awsPartition = partition{
|
|||
Region: "eu-west-2",
|
||||
},
|
||||
},
|
||||
"eu-west-3": endpoint{
|
||||
Hostname: "oidc.eu-west-3.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "eu-west-3",
|
||||
},
|
||||
},
|
||||
"us-east-1": endpoint{
|
||||
Hostname: "oidc.us-east-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
|
|
@ -4804,6 +4934,7 @@ var awsPartition = partition{
|
|||
"ap-east-1": endpoint{},
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-northeast-3": endpoint{},
|
||||
"ap-south-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
|
|
@ -5022,6 +5153,7 @@ var awsPartition = partition{
|
|||
"ap-northeast-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
"ca-central-1": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-west-2": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
|
|
@ -5049,9 +5181,28 @@ var awsPartition = partition{
|
|||
"ap-southeast-2": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
"eu-west-2": endpoint{},
|
||||
"fips-us-east-1": endpoint{
|
||||
Hostname: "qldb-fips.us-east-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-1",
|
||||
},
|
||||
},
|
||||
"fips-us-east-2": endpoint{
|
||||
Hostname: "qldb-fips.us-east-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-2",
|
||||
},
|
||||
},
|
||||
"fips-us-west-2": endpoint{
|
||||
Hostname: "qldb-fips.us-west-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-west-2",
|
||||
},
|
||||
},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"ram": service{
|
||||
|
|
@ -5368,6 +5519,7 @@ var awsPartition = partition{
|
|||
"ap-east-1": endpoint{},
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-northeast-3": endpoint{},
|
||||
"ap-south-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
|
|
@ -6069,6 +6221,61 @@ var awsPartition = partition{
|
|||
},
|
||||
},
|
||||
},
|
||||
"servicecatalog-appregistry": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"af-south-1": endpoint{},
|
||||
"ap-east-1": endpoint{},
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-south-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
"ca-central-1": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-north-1": endpoint{},
|
||||
"eu-south-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"eu-west-2": endpoint{},
|
||||
"eu-west-3": endpoint{},
|
||||
"fips-ca-central-1": endpoint{
|
||||
Hostname: "servicecatalog-appregistry-fips.ca-central-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "ca-central-1",
|
||||
},
|
||||
},
|
||||
"fips-us-east-1": endpoint{
|
||||
Hostname: "servicecatalog-appregistry-fips.us-east-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-1",
|
||||
},
|
||||
},
|
||||
"fips-us-east-2": endpoint{
|
||||
Hostname: "servicecatalog-appregistry-fips.us-east-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-2",
|
||||
},
|
||||
},
|
||||
"fips-us-west-1": endpoint{
|
||||
Hostname: "servicecatalog-appregistry-fips.us-west-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-west-1",
|
||||
},
|
||||
},
|
||||
"fips-us-west-2": endpoint{
|
||||
Hostname: "servicecatalog-appregistry-fips.us-west-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-west-2",
|
||||
},
|
||||
},
|
||||
"me-south-1": endpoint{},
|
||||
"sa-east-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-1": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"servicediscovery": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -6137,9 +6344,28 @@ var awsPartition = partition{
|
|||
"ap-southeast-2": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
"eu-west-2": endpoint{},
|
||||
"fips-us-east-1": endpoint{
|
||||
Hostname: "session.qldb-fips.us-east-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-1",
|
||||
},
|
||||
},
|
||||
"fips-us-east-2": endpoint{
|
||||
Hostname: "session.qldb-fips.us-east-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-east-2",
|
||||
},
|
||||
},
|
||||
"fips-us-west-2": endpoint{
|
||||
Hostname: "session.qldb-fips.us-west-2.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-west-2",
|
||||
},
|
||||
},
|
||||
"us-east-1": endpoint{},
|
||||
"us-east-2": endpoint{},
|
||||
"us-west-2": endpoint{},
|
||||
},
|
||||
},
|
||||
"shield": service{
|
||||
|
|
@ -6554,6 +6780,7 @@ var awsPartition = partition{
|
|||
"ap-east-1": endpoint{},
|
||||
"ap-northeast-1": endpoint{},
|
||||
"ap-northeast-2": endpoint{},
|
||||
"ap-northeast-3": endpoint{},
|
||||
"ap-south-1": endpoint{},
|
||||
"ap-southeast-1": endpoint{},
|
||||
"ap-southeast-2": endpoint{},
|
||||
|
|
@ -6864,6 +7091,7 @@ var awsPartition = partition{
|
|||
"ca-central-1": endpoint{},
|
||||
"eu-central-1": endpoint{},
|
||||
"eu-north-1": endpoint{},
|
||||
"eu-south-1": endpoint{},
|
||||
"eu-west-1": endpoint{},
|
||||
"eu-west-2": endpoint{},
|
||||
"eu-west-3": endpoint{},
|
||||
|
|
@ -6992,6 +7220,12 @@ var awsPartition = partition{
|
|||
Region: "ap-northeast-2",
|
||||
},
|
||||
},
|
||||
"ap-northeast-3": endpoint{
|
||||
Hostname: "waf-regional.ap-northeast-3.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "ap-northeast-3",
|
||||
},
|
||||
},
|
||||
"ap-south-1": endpoint{
|
||||
Hostname: "waf-regional.ap-south-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
|
|
@ -7076,6 +7310,12 @@ var awsPartition = partition{
|
|||
Region: "ap-northeast-2",
|
||||
},
|
||||
},
|
||||
"fips-ap-northeast-3": endpoint{
|
||||
Hostname: "waf-regional-fips.ap-northeast-3.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "ap-northeast-3",
|
||||
},
|
||||
},
|
||||
"fips-ap-south-1": endpoint{
|
||||
Hostname: "waf-regional-fips.ap-south-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
|
|
@ -7611,17 +7851,6 @@ var awscnPartition = partition{
|
|||
"cn-northwest-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"ec2metadata": service{
|
||||
PartitionEndpoint: "aws-global",
|
||||
IsRegionalized: boxedFalse,
|
||||
|
||||
Endpoints: endpoints{
|
||||
"aws-global": endpoint{
|
||||
Hostname: "169.254.169.254/latest",
|
||||
Protocols: []string{"http"},
|
||||
},
|
||||
},
|
||||
},
|
||||
"ecs": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -8068,6 +8297,13 @@ var awscnPartition = partition{
|
|||
},
|
||||
},
|
||||
},
|
||||
"servicecatalog": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"cn-north-1": endpoint{},
|
||||
"cn-northwest-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"servicediscovery": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -8205,6 +8441,49 @@ var awscnPartition = partition{
|
|||
},
|
||||
},
|
||||
},
|
||||
"transcribestreaming": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"cn-north-1": endpoint{},
|
||||
"cn-northwest-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"transfer": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"cn-north-1": endpoint{},
|
||||
"cn-northwest-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"waf-regional": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"cn-north-1": endpoint{
|
||||
Hostname: "waf-regional.cn-north-1.amazonaws.com.cn",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "cn-north-1",
|
||||
},
|
||||
},
|
||||
"cn-northwest-1": endpoint{
|
||||
Hostname: "waf-regional.cn-northwest-1.amazonaws.com.cn",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "cn-northwest-1",
|
||||
},
|
||||
},
|
||||
"fips-cn-north-1": endpoint{
|
||||
Hostname: "waf-regional-fips.cn-north-1.amazonaws.com.cn",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "cn-north-1",
|
||||
},
|
||||
},
|
||||
"fips-cn-northwest-1": endpoint{
|
||||
Hostname: "waf-regional-fips.cn-northwest-1.amazonaws.com.cn",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "cn-northwest-1",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
"workspaces": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -8812,17 +9091,6 @@ var awsusgovPartition = partition{
|
|||
},
|
||||
},
|
||||
},
|
||||
"ec2metadata": service{
|
||||
PartitionEndpoint: "aws-global",
|
||||
IsRegionalized: boxedFalse,
|
||||
|
||||
Endpoints: endpoints{
|
||||
"aws-global": endpoint{
|
||||
Hostname: "169.254.169.254/latest",
|
||||
Protocols: []string{"http"},
|
||||
},
|
||||
},
|
||||
},
|
||||
"ecs": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -9387,6 +9655,25 @@ var awsusgovPartition = partition{
|
|||
"us-gov-west-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"mq": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"fips-us-gov-east-1": endpoint{
|
||||
Hostname: "mq-fips.us-gov-east-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-gov-east-1",
|
||||
},
|
||||
},
|
||||
"fips-us-gov-west-1": endpoint{
|
||||
Hostname: "mq-fips.us-gov-west-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-gov-west-1",
|
||||
},
|
||||
},
|
||||
"us-gov-east-1": endpoint{},
|
||||
"us-gov-west-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"neptune": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -9768,6 +10055,25 @@ var awsusgovPartition = partition{
|
|||
},
|
||||
},
|
||||
},
|
||||
"servicecatalog-appregistry": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"fips-us-gov-east-1": endpoint{
|
||||
Hostname: "servicecatalog-appregistry.us-gov-east-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-gov-east-1",
|
||||
},
|
||||
},
|
||||
"fips-us-gov-west-1": endpoint{
|
||||
Hostname: "servicecatalog-appregistry.us-gov-west-1.amazonaws.com",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-gov-west-1",
|
||||
},
|
||||
},
|
||||
"us-gov-east-1": endpoint{},
|
||||
"us-gov-west-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"servicequotas": service{
|
||||
Defaults: endpoint{
|
||||
Protocols: []string{"https"},
|
||||
|
|
@ -10257,17 +10563,6 @@ var awsisoPartition = partition{
|
|||
"us-iso-east-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"ec2metadata": service{
|
||||
PartitionEndpoint: "aws-global",
|
||||
IsRegionalized: boxedFalse,
|
||||
|
||||
Endpoints: endpoints{
|
||||
"aws-global": endpoint{
|
||||
Hostname: "169.254.169.254/latest",
|
||||
Protocols: []string{"http"},
|
||||
},
|
||||
},
|
||||
},
|
||||
"ecs": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -10280,6 +10575,18 @@ var awsisoPartition = partition{
|
|||
"us-iso-east-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"elasticfilesystem": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"fips-us-iso-east-1": endpoint{
|
||||
Hostname: "elasticfilesystem-fips.us-iso-east-1.c2s.ic.gov",
|
||||
CredentialScope: credentialScope{
|
||||
Region: "us-iso-east-1",
|
||||
},
|
||||
},
|
||||
"us-iso-east-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"elasticloadbalancing": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -10395,6 +10702,12 @@ var awsisoPartition = partition{
|
|||
"us-iso-east-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"ram": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
"us-iso-east-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"rds": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
@ -10656,17 +10969,6 @@ var awsisobPartition = partition{
|
|||
"us-isob-east-1": endpoint{},
|
||||
},
|
||||
},
|
||||
"ec2metadata": service{
|
||||
PartitionEndpoint: "aws-global",
|
||||
IsRegionalized: boxedFalse,
|
||||
|
||||
Endpoints: endpoints{
|
||||
"aws-global": endpoint{
|
||||
Hostname: "169.254.169.254/latest",
|
||||
Protocols: []string{"http"},
|
||||
},
|
||||
},
|
||||
},
|
||||
"ecs": service{
|
||||
|
||||
Endpoints: endpoints{
|
||||
|
|
|
|||
|
|
@ -48,6 +48,9 @@ type Options struct {
|
|||
// This option is ignored if StrictMatching is enabled.
|
||||
ResolveUnknownService bool
|
||||
|
||||
// Specifies the EC2 Instance Metadata Service default endpoint selection mode (IPv4 or IPv6)
|
||||
EC2MetadataEndpointMode EC2IMDSEndpointModeState
|
||||
|
||||
// STS Regional Endpoint flag helps with resolving the STS endpoint
|
||||
STSRegionalEndpoint STSRegionalEndpoint
|
||||
|
||||
|
|
@ -55,6 +58,33 @@ type Options struct {
|
|||
S3UsEast1RegionalEndpoint S3UsEast1RegionalEndpoint
|
||||
}
|
||||
|
||||
// EC2IMDSEndpointModeState is an enum configuration variable describing the client endpoint mode.
|
||||
type EC2IMDSEndpointModeState uint
|
||||
|
||||
// Enumeration values for EC2IMDSEndpointModeState
|
||||
const (
|
||||
EC2IMDSEndpointModeStateUnset EC2IMDSEndpointModeState = iota
|
||||
EC2IMDSEndpointModeStateIPv4
|
||||
EC2IMDSEndpointModeStateIPv6
|
||||
)
|
||||
|
||||
// SetFromString sets the EC2IMDSEndpointModeState based on the provided string value. Unknown values will default to EC2IMDSEndpointModeStateUnset
|
||||
func (e *EC2IMDSEndpointModeState) SetFromString(v string) error {
|
||||
v = strings.TrimSpace(v)
|
||||
|
||||
switch {
|
||||
case len(v) == 0:
|
||||
*e = EC2IMDSEndpointModeStateUnset
|
||||
case strings.EqualFold(v, "IPv6"):
|
||||
*e = EC2IMDSEndpointModeStateIPv6
|
||||
case strings.EqualFold(v, "IPv4"):
|
||||
*e = EC2IMDSEndpointModeStateIPv4
|
||||
default:
|
||||
return fmt.Errorf("unknown EC2 IMDS endpoint mode, must be either IPv6 or IPv4")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// STSRegionalEndpoint is an enum for the states of the STS Regional Endpoint
|
||||
// options.
|
||||
type STSRegionalEndpoint int
|
||||
|
|
@ -247,7 +277,7 @@ func RegionsForService(ps []Partition, partitionID, serviceID string) (map[strin
|
|||
if p.ID() != partitionID {
|
||||
continue
|
||||
}
|
||||
if _, ok := p.p.Services[serviceID]; !ok {
|
||||
if _, ok := p.p.Services[serviceID]; !(ok || serviceID == Ec2metadataServiceID) {
|
||||
break
|
||||
}
|
||||
|
||||
|
|
@ -333,6 +363,7 @@ func (p Partition) Regions() map[string]Region {
|
|||
// enumerating over the services in a partition.
|
||||
func (p Partition) Services() map[string]Service {
|
||||
ss := make(map[string]Service, len(p.p.Services))
|
||||
|
||||
for id := range p.p.Services {
|
||||
ss[id] = Service{
|
||||
id: id,
|
||||
|
|
@ -340,6 +371,15 @@ func (p Partition) Services() map[string]Service {
|
|||
}
|
||||
}
|
||||
|
||||
// Since we have removed the customization that injected this into the model
|
||||
// we still need to pretend that this is a modeled service.
|
||||
if _, ok := ss[Ec2metadataServiceID]; !ok {
|
||||
ss[Ec2metadataServiceID] = Service{
|
||||
id: Ec2metadataServiceID,
|
||||
p: p.p,
|
||||
}
|
||||
}
|
||||
|
||||
return ss
|
||||
}
|
||||
|
||||
|
|
@ -400,7 +440,18 @@ func (s Service) ResolveEndpoint(region string, opts ...func(*Options)) (Resolve
|
|||
// an URL that can be resolved to a instance of a service.
|
||||
func (s Service) Regions() map[string]Region {
|
||||
rs := map[string]Region{}
|
||||
for id := range s.p.Services[s.id].Endpoints {
|
||||
|
||||
service, ok := s.p.Services[s.id]
|
||||
|
||||
// Since ec2metadata customization has been removed we need to check
|
||||
// if it was defined in non-standard endpoints.json file. If it's not
|
||||
// then we can return the empty map as there is no regional-endpoints for IMDS.
|
||||
// Otherwise, we iterate need to iterate the non-standard model.
|
||||
if s.id == Ec2metadataServiceID && !ok {
|
||||
return rs
|
||||
}
|
||||
|
||||
for id := range service.Endpoints {
|
||||
if r, ok := s.p.Regions[id]; ok {
|
||||
rs[id] = Region{
|
||||
id: id,
|
||||
|
|
|
|||
|
|
@ -7,6 +7,11 @@ import (
|
|||
"strings"
|
||||
)
|
||||
|
||||
const (
|
||||
ec2MetadataEndpointIPv6 = "http://[fd00:ec2::254]/latest"
|
||||
ec2MetadataEndpointIPv4 = "http://169.254.169.254/latest"
|
||||
)
|
||||
|
||||
var regionValidationRegex = regexp.MustCompile(`^[[:alnum:]]([[:alnum:]\-]*[[:alnum:]])?$`)
|
||||
|
||||
type partitions []partition
|
||||
|
|
@ -102,6 +107,12 @@ func (p partition) EndpointFor(service, region string, opts ...func(*Options)) (
|
|||
opt.Set(opts...)
|
||||
|
||||
s, hasService := p.Services[service]
|
||||
|
||||
if service == Ec2metadataServiceID && !hasService {
|
||||
endpoint := getEC2MetadataEndpoint(p.ID, service, opt.EC2MetadataEndpointMode)
|
||||
return endpoint, nil
|
||||
}
|
||||
|
||||
if len(service) == 0 || !(hasService || opt.ResolveUnknownService) {
|
||||
// Only return error if the resolver will not fallback to creating
|
||||
// endpoint based on service endpoint ID passed in.
|
||||
|
|
@ -129,6 +140,31 @@ func (p partition) EndpointFor(service, region string, opts ...func(*Options)) (
|
|||
return e.resolve(service, p.ID, region, p.DNSSuffix, defs, opt)
|
||||
}
|
||||
|
||||
func getEC2MetadataEndpoint(partitionID, service string, mode EC2IMDSEndpointModeState) ResolvedEndpoint {
|
||||
switch mode {
|
||||
case EC2IMDSEndpointModeStateIPv6:
|
||||
return ResolvedEndpoint{
|
||||
URL: ec2MetadataEndpointIPv6,
|
||||
PartitionID: partitionID,
|
||||
SigningRegion: "aws-global",
|
||||
SigningName: service,
|
||||
SigningNameDerived: true,
|
||||
SigningMethod: "v4",
|
||||
}
|
||||
case EC2IMDSEndpointModeStateIPv4:
|
||||
fallthrough
|
||||
default:
|
||||
return ResolvedEndpoint{
|
||||
URL: ec2MetadataEndpointIPv4,
|
||||
PartitionID: partitionID,
|
||||
SigningRegion: "aws-global",
|
||||
SigningName: service,
|
||||
SigningNameDerived: true,
|
||||
SigningMethod: "v4",
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func serviceList(ss services) []string {
|
||||
list := make([]string, 0, len(ss))
|
||||
for k := range ss {
|
||||
|
|
@ -178,14 +214,14 @@ type service struct {
|
|||
}
|
||||
|
||||
func (s *service) endpointForRegion(region string) (endpoint, bool) {
|
||||
if s.IsRegionalized == boxedFalse {
|
||||
return s.Endpoints[s.PartitionEndpoint], region == s.PartitionEndpoint
|
||||
}
|
||||
|
||||
if e, ok := s.Endpoints[region]; ok {
|
||||
return e, true
|
||||
}
|
||||
|
||||
if s.IsRegionalized == boxedFalse {
|
||||
return s.Endpoints[s.PartitionEndpoint], region == s.PartitionEndpoint
|
||||
}
|
||||
|
||||
// Unable to find any matching endpoint, return
|
||||
// blank that will be used for generic endpoint creation.
|
||||
return endpoint{}, false
|
||||
|
|
|
|||
|
|
@ -129,12 +129,27 @@ func New(cfg aws.Config, clientInfo metadata.ClientInfo, handlers Handlers,
|
|||
httpReq, _ := http.NewRequest(method, "", nil)
|
||||
|
||||
var err error
|
||||
httpReq.URL, err = url.Parse(clientInfo.Endpoint + operation.HTTPPath)
|
||||
httpReq.URL, err = url.Parse(clientInfo.Endpoint)
|
||||
if err != nil {
|
||||
httpReq.URL = &url.URL{}
|
||||
err = awserr.New("InvalidEndpointURL", "invalid endpoint uri", err)
|
||||
}
|
||||
|
||||
if len(operation.HTTPPath) != 0 {
|
||||
opHTTPPath := operation.HTTPPath
|
||||
var opQueryString string
|
||||
if idx := strings.Index(opHTTPPath, "?"); idx >= 0 {
|
||||
opQueryString = opHTTPPath[idx+1:]
|
||||
opHTTPPath = opHTTPPath[:idx]
|
||||
}
|
||||
|
||||
if strings.HasSuffix(httpReq.URL.Path, "/") && strings.HasPrefix(opHTTPPath, "/") {
|
||||
opHTTPPath = opHTTPPath[1:]
|
||||
}
|
||||
httpReq.URL.Path += opHTTPPath
|
||||
httpReq.URL.RawQuery = opQueryString
|
||||
}
|
||||
|
||||
r := &Request{
|
||||
Config: cfg,
|
||||
ClientInfo: clientInfo,
|
||||
|
|
|
|||
|
|
@ -101,13 +101,6 @@ func resolveCredsFromProfile(cfg *aws.Config,
|
|||
sharedCfg.Creds,
|
||||
)
|
||||
|
||||
case sharedCfg.hasSSOConfiguration():
|
||||
creds, err = resolveSSOCredentials(cfg, sharedCfg, handlers)
|
||||
|
||||
case len(sharedCfg.CredentialProcess) != 0:
|
||||
// Get credentials from CredentialProcess
|
||||
creds = processcreds.NewCredentials(sharedCfg.CredentialProcess)
|
||||
|
||||
case len(sharedCfg.CredentialSource) != 0:
|
||||
creds, err = resolveCredsFromSource(cfg, envCfg,
|
||||
sharedCfg, handlers, sessOpts,
|
||||
|
|
@ -123,6 +116,13 @@ func resolveCredsFromProfile(cfg *aws.Config,
|
|||
sharedCfg.RoleSessionName,
|
||||
)
|
||||
|
||||
case sharedCfg.hasSSOConfiguration():
|
||||
creds, err = resolveSSOCredentials(cfg, sharedCfg, handlers)
|
||||
|
||||
case len(sharedCfg.CredentialProcess) != 0:
|
||||
// Get credentials from CredentialProcess
|
||||
creds = processcreds.NewCredentials(sharedCfg.CredentialProcess)
|
||||
|
||||
default:
|
||||
// Fallback to default credentials provider, include mock errors for
|
||||
// the credential chain so user can identify why credentials failed to
|
||||
|
|
|
|||
|
|
@ -283,7 +283,7 @@ component must be enclosed in square brackets.
|
|||
The custom EC2 IMDS endpoint can also be specified via the Session options.
|
||||
|
||||
sess, err := session.NewSessionWithOptions(session.Options{
|
||||
EC2IMDSEndpoint: "http://[::1]",
|
||||
EC2MetadataEndpoint: "http://[::1]",
|
||||
})
|
||||
*/
|
||||
package session
|
||||
|
|
|
|||
|
|
@ -161,10 +161,15 @@ type envConfig struct {
|
|||
// AWS_S3_USE_ARN_REGION=true
|
||||
S3UseARNRegion bool
|
||||
|
||||
// Specifies the alternative endpoint to use for EC2 IMDS.
|
||||
// Specifies the EC2 Instance Metadata Service endpoint to use. If specified it overrides EC2IMDSEndpointMode.
|
||||
//
|
||||
// AWS_EC2_METADATA_SERVICE_ENDPOINT=http://[::1]
|
||||
EC2IMDSEndpoint string
|
||||
|
||||
// Specifies the EC2 Instance Metadata Service default endpoint selection mode (IPv4 or IPv6)
|
||||
//
|
||||
// AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE=IPv6
|
||||
EC2IMDSEndpointMode endpoints.EC2IMDSEndpointModeState
|
||||
}
|
||||
|
||||
var (
|
||||
|
|
@ -231,6 +236,9 @@ var (
|
|||
ec2IMDSEndpointEnvKey = []string{
|
||||
"AWS_EC2_METADATA_SERVICE_ENDPOINT",
|
||||
}
|
||||
ec2IMDSEndpointModeEnvKey = []string{
|
||||
"AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE",
|
||||
}
|
||||
useCABundleKey = []string{
|
||||
"AWS_CA_BUNDLE",
|
||||
}
|
||||
|
|
@ -364,6 +372,9 @@ func envConfigLoad(enableSharedConfig bool) (envConfig, error) {
|
|||
}
|
||||
|
||||
setFromEnvVal(&cfg.EC2IMDSEndpoint, ec2IMDSEndpointEnvKey)
|
||||
if err := setEC2IMDSEndpointMode(&cfg.EC2IMDSEndpointMode, ec2IMDSEndpointModeEnvKey); err != nil {
|
||||
return envConfig{}, err
|
||||
}
|
||||
|
||||
return cfg, nil
|
||||
}
|
||||
|
|
@ -376,3 +387,17 @@ func setFromEnvVal(dst *string, keys []string) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
func setEC2IMDSEndpointMode(mode *endpoints.EC2IMDSEndpointModeState, keys []string) error {
|
||||
for _, k := range keys {
|
||||
value := os.Getenv(k)
|
||||
if len(value) == 0 {
|
||||
continue
|
||||
}
|
||||
if err := mode.SetFromString(value); err != nil {
|
||||
return fmt.Errorf("invalid value for environment variable, %s=%s, %v", k, value, err)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -283,8 +283,8 @@ type Options struct {
|
|||
Handlers request.Handlers
|
||||
|
||||
// Allows specifying a custom endpoint to be used by the EC2 IMDS client
|
||||
// when making requests to the EC2 IMDS API. The must endpoint value must
|
||||
// include protocol prefix.
|
||||
// when making requests to the EC2 IMDS API. The endpoint value should
|
||||
// include the URI scheme. If the scheme is not present it will be defaulted to http.
|
||||
//
|
||||
// If unset, will the EC2 IMDS client will use its default endpoint.
|
||||
//
|
||||
|
|
@ -298,6 +298,11 @@ type Options struct {
|
|||
//
|
||||
// AWS_EC2_METADATA_SERVICE_ENDPOINT=http://[::1]
|
||||
EC2IMDSEndpoint string
|
||||
|
||||
// Specifies the EC2 Instance Metadata Service default endpoint selection mode (IPv4 or IPv6)
|
||||
//
|
||||
// AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE=IPv6
|
||||
EC2IMDSEndpointMode endpoints.EC2IMDSEndpointModeState
|
||||
}
|
||||
|
||||
// NewSessionWithOptions returns a new Session created from SDK defaults, config files,
|
||||
|
|
@ -375,19 +380,23 @@ func Must(sess *Session, err error) *Session {
|
|||
|
||||
// Wraps the endpoint resolver with a resolver that will return a custom
|
||||
// endpoint for EC2 IMDS.
|
||||
func wrapEC2IMDSEndpoint(resolver endpoints.Resolver, endpoint string) endpoints.Resolver {
|
||||
func wrapEC2IMDSEndpoint(resolver endpoints.Resolver, endpoint string, mode endpoints.EC2IMDSEndpointModeState) endpoints.Resolver {
|
||||
return endpoints.ResolverFunc(
|
||||
func(service, region string, opts ...func(*endpoints.Options)) (
|
||||
endpoints.ResolvedEndpoint, error,
|
||||
) {
|
||||
if service == ec2MetadataServiceID {
|
||||
if service == ec2MetadataServiceID && len(endpoint) > 0 {
|
||||
return endpoints.ResolvedEndpoint{
|
||||
URL: endpoint,
|
||||
SigningName: ec2MetadataServiceID,
|
||||
SigningRegion: region,
|
||||
}, nil
|
||||
} else if service == ec2MetadataServiceID {
|
||||
opts = append(opts, func(o *endpoints.Options) {
|
||||
o.EC2MetadataEndpointMode = mode
|
||||
})
|
||||
}
|
||||
return resolver.EndpointFor(service, region)
|
||||
return resolver.EndpointFor(service, region, opts...)
|
||||
})
|
||||
}
|
||||
|
||||
|
|
@ -404,8 +413,8 @@ func deprecatedNewSession(envCfg envConfig, cfgs ...*aws.Config) *Session {
|
|||
cfg.EndpointResolver = endpoints.DefaultResolver()
|
||||
}
|
||||
|
||||
if len(envCfg.EC2IMDSEndpoint) != 0 {
|
||||
cfg.EndpointResolver = wrapEC2IMDSEndpoint(cfg.EndpointResolver, envCfg.EC2IMDSEndpoint)
|
||||
if !(len(envCfg.EC2IMDSEndpoint) == 0 && envCfg.EC2IMDSEndpointMode == endpoints.EC2IMDSEndpointModeStateUnset) {
|
||||
cfg.EndpointResolver = wrapEC2IMDSEndpoint(cfg.EndpointResolver, envCfg.EC2IMDSEndpoint, envCfg.EC2IMDSEndpointMode)
|
||||
}
|
||||
|
||||
cfg.Credentials = defaults.CredChain(cfg, handlers)
|
||||
|
|
@ -737,12 +746,32 @@ func mergeConfigSrcs(cfg, userCfg *aws.Config,
|
|||
endpoints.LegacyS3UsEast1Endpoint,
|
||||
})
|
||||
|
||||
ec2IMDSEndpoint := sessOpts.EC2IMDSEndpoint
|
||||
if len(ec2IMDSEndpoint) == 0 {
|
||||
ec2IMDSEndpoint = envCfg.EC2IMDSEndpoint
|
||||
var ec2IMDSEndpoint string
|
||||
for _, v := range []string{
|
||||
sessOpts.EC2IMDSEndpoint,
|
||||
envCfg.EC2IMDSEndpoint,
|
||||
sharedCfg.EC2IMDSEndpoint,
|
||||
} {
|
||||
if len(v) != 0 {
|
||||
ec2IMDSEndpoint = v
|
||||
break
|
||||
}
|
||||
}
|
||||
if len(ec2IMDSEndpoint) != 0 {
|
||||
cfg.EndpointResolver = wrapEC2IMDSEndpoint(cfg.EndpointResolver, ec2IMDSEndpoint)
|
||||
|
||||
var endpointMode endpoints.EC2IMDSEndpointModeState
|
||||
for _, v := range []endpoints.EC2IMDSEndpointModeState{
|
||||
sessOpts.EC2IMDSEndpointMode,
|
||||
envCfg.EC2IMDSEndpointMode,
|
||||
sharedCfg.EC2IMDSEndpointMode,
|
||||
} {
|
||||
if v != endpoints.EC2IMDSEndpointModeStateUnset {
|
||||
endpointMode = v
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
if len(ec2IMDSEndpoint) != 0 || endpointMode != endpoints.EC2IMDSEndpointModeStateUnset {
|
||||
cfg.EndpointResolver = wrapEC2IMDSEndpoint(cfg.EndpointResolver, ec2IMDSEndpoint, endpointMode)
|
||||
}
|
||||
|
||||
// Configure credentials if not already set by the user when creating the
|
||||
|
|
|
|||
|
|
@ -66,6 +66,12 @@ const (
|
|||
|
||||
// S3 ARN Region Usage
|
||||
s3UseARNRegionKey = "s3_use_arn_region"
|
||||
|
||||
// EC2 IMDS Endpoint Mode
|
||||
ec2MetadataServiceEndpointModeKey = "ec2_metadata_service_endpoint_mode"
|
||||
|
||||
// EC2 IMDS Endpoint
|
||||
ec2MetadataServiceEndpointKey = "ec2_metadata_service_endpoint"
|
||||
)
|
||||
|
||||
// sharedConfig represents the configuration fields of the SDK config files.
|
||||
|
|
@ -145,6 +151,16 @@ type sharedConfig struct {
|
|||
//
|
||||
// s3_use_arn_region=true
|
||||
S3UseARNRegion bool
|
||||
|
||||
// Specifies the EC2 Instance Metadata Service default endpoint selection mode (IPv4 or IPv6)
|
||||
//
|
||||
// ec2_metadata_service_endpoint_mode=IPv6
|
||||
EC2IMDSEndpointMode endpoints.EC2IMDSEndpointModeState
|
||||
|
||||
// Specifies the EC2 Instance Metadata Service endpoint to use. If specified it overrides EC2IMDSEndpointMode.
|
||||
//
|
||||
// ec2_metadata_service_endpoint=http://fd00:ec2::254
|
||||
EC2IMDSEndpoint string
|
||||
}
|
||||
|
||||
type sharedConfigFile struct {
|
||||
|
|
@ -334,6 +350,12 @@ func (cfg *sharedConfig) setFromIniFile(profile string, file sharedConfigFile, e
|
|||
updateString(&cfg.SSORegion, section, ssoRegionKey)
|
||||
updateString(&cfg.SSORoleName, section, ssoRoleNameKey)
|
||||
updateString(&cfg.SSOStartURL, section, ssoStartURL)
|
||||
|
||||
if err := updateEC2MetadataServiceEndpointMode(&cfg.EC2IMDSEndpointMode, section, ec2MetadataServiceEndpointModeKey); err != nil {
|
||||
return fmt.Errorf("failed to load %s from shared config, %s, %v",
|
||||
ec2MetadataServiceEndpointModeKey, file.Filename, err)
|
||||
}
|
||||
updateString(&cfg.EC2IMDSEndpoint, section, ec2MetadataServiceEndpointKey)
|
||||
}
|
||||
|
||||
updateString(&cfg.CredentialProcess, section, credentialProcessKey)
|
||||
|
|
@ -364,6 +386,14 @@ func (cfg *sharedConfig) setFromIniFile(profile string, file sharedConfigFile, e
|
|||
return nil
|
||||
}
|
||||
|
||||
func updateEC2MetadataServiceEndpointMode(endpointMode *endpoints.EC2IMDSEndpointModeState, section ini.Section, key string) error {
|
||||
if !section.Has(key) {
|
||||
return nil
|
||||
}
|
||||
value := section.String(key)
|
||||
return endpointMode.SetFromString(value)
|
||||
}
|
||||
|
||||
func (cfg *sharedConfig) validateCredentialsConfig(profile string) error {
|
||||
if err := cfg.validateCredentialsRequireARN(profile); err != nil {
|
||||
return err
|
||||
|
|
@ -401,7 +431,6 @@ func (cfg *sharedConfig) validateCredentialType() error {
|
|||
len(cfg.CredentialSource) != 0,
|
||||
len(cfg.CredentialProcess) != 0,
|
||||
len(cfg.WebIdentityTokenFile) != 0,
|
||||
cfg.hasSSOConfiguration(),
|
||||
) {
|
||||
return ErrSharedConfigSourceCollision
|
||||
}
|
||||
|
|
@ -459,6 +488,10 @@ func (cfg *sharedConfig) clearCredentialOptions() {
|
|||
cfg.CredentialProcess = ""
|
||||
cfg.WebIdentityTokenFile = ""
|
||||
cfg.Creds = credentials.Value{}
|
||||
cfg.SSOAccountID = ""
|
||||
cfg.SSORegion = ""
|
||||
cfg.SSORoleName = ""
|
||||
cfg.SSOStartURL = ""
|
||||
}
|
||||
|
||||
func (cfg *sharedConfig) clearAssumeRoleOptions() {
|
||||
|
|
|
|||
|
|
@ -34,23 +34,23 @@ func (m mapRule) IsValid(value string) bool {
|
|||
return ok
|
||||
}
|
||||
|
||||
// whitelist is a generic rule for whitelisting
|
||||
type whitelist struct {
|
||||
// allowList is a generic rule for allow listing
|
||||
type allowList struct {
|
||||
rule
|
||||
}
|
||||
|
||||
// IsValid for whitelist checks if the value is within the whitelist
|
||||
func (w whitelist) IsValid(value string) bool {
|
||||
// IsValid for allow list checks if the value is within the allow list
|
||||
func (w allowList) IsValid(value string) bool {
|
||||
return w.rule.IsValid(value)
|
||||
}
|
||||
|
||||
// blacklist is a generic rule for blacklisting
|
||||
type blacklist struct {
|
||||
// excludeList is a generic rule for exclude listing
|
||||
type excludeList struct {
|
||||
rule
|
||||
}
|
||||
|
||||
// IsValid for whitelist checks if the value is within the whitelist
|
||||
func (b blacklist) IsValid(value string) bool {
|
||||
// IsValid for exclude list checks if the value is within the exclude list
|
||||
func (b excludeList) IsValid(value string) bool {
|
||||
return !b.rule.IsValid(value)
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -90,7 +90,7 @@ const (
|
|||
)
|
||||
|
||||
var ignoredHeaders = rules{
|
||||
blacklist{
|
||||
excludeList{
|
||||
mapRule{
|
||||
authorizationHeader: struct{}{},
|
||||
"User-Agent": struct{}{},
|
||||
|
|
@ -99,9 +99,9 @@ var ignoredHeaders = rules{
|
|||
},
|
||||
}
|
||||
|
||||
// requiredSignedHeaders is a whitelist for build canonical headers.
|
||||
// requiredSignedHeaders is a allow list for build canonical headers.
|
||||
var requiredSignedHeaders = rules{
|
||||
whitelist{
|
||||
allowList{
|
||||
mapRule{
|
||||
"Cache-Control": struct{}{},
|
||||
"Content-Disposition": struct{}{},
|
||||
|
|
@ -145,12 +145,13 @@ var requiredSignedHeaders = rules{
|
|||
},
|
||||
},
|
||||
patterns{"X-Amz-Meta-"},
|
||||
patterns{"X-Amz-Object-Lock-"},
|
||||
}
|
||||
|
||||
// allowedHoisting is a whitelist for build query headers. The boolean value
|
||||
// allowedHoisting is a allow list for build query headers. The boolean value
|
||||
// represents whether or not it is a pattern.
|
||||
var allowedQueryHoisting = inclusiveRules{
|
||||
blacklist{requiredSignedHeaders},
|
||||
excludeList{requiredSignedHeaders},
|
||||
patterns{"X-Amz-"},
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,4 +5,4 @@ package aws
|
|||
const SDKName = "aws-sdk-go"
|
||||
|
||||
// SDKVersion is the version of this SDK
|
||||
const SDKVersion = "1.38.29"
|
||||
const SDKVersion = "1.40.0"
|
||||
|
|
|
|||
|
|
@ -13,17 +13,30 @@
|
|||
// }
|
||||
//
|
||||
// Below is the BNF that describes this parser
|
||||
// Grammar:
|
||||
// stmt -> value stmt'
|
||||
// stmt' -> epsilon | op stmt
|
||||
// value -> number | string | boolean | quoted_string
|
||||
// Grammar:
|
||||
// stmt -> section | stmt'
|
||||
// stmt' -> epsilon | expr
|
||||
// expr -> value (stmt)* | equal_expr (stmt)*
|
||||
// equal_expr -> value ( ':' | '=' ) equal_expr'
|
||||
// equal_expr' -> number | string | quoted_string
|
||||
// quoted_string -> " quoted_string'
|
||||
// quoted_string' -> string quoted_string_end
|
||||
// quoted_string_end -> "
|
||||
//
|
||||
// section -> [ section'
|
||||
// section' -> value section_close
|
||||
// section_close -> ]
|
||||
// section -> [ section'
|
||||
// section' -> section_value section_close
|
||||
// section_value -> number | string_subset | boolean | quoted_string_subset
|
||||
// quoted_string_subset -> " quoted_string_subset'
|
||||
// quoted_string_subset' -> string_subset quoted_string_end
|
||||
// quoted_string_subset -> "
|
||||
// section_close -> ]
|
||||
//
|
||||
// SkipState will skip (NL WS)+
|
||||
// value -> number | string_subset | boolean
|
||||
// string -> ? UTF-8 Code-Points except '\n' (U+000A) and '\r\n' (U+000D U+000A) ?
|
||||
// string_subset -> ? Code-points excepted by <string> grammar except ':' (U+003A), '=' (U+003D), '[' (U+005B), and ']' (U+005D) ?
|
||||
//
|
||||
// comment -> # comment' | ; comment'
|
||||
// comment' -> epsilon | value
|
||||
// SkipState will skip (NL WS)+
|
||||
//
|
||||
// comment -> # comment' | ; comment'
|
||||
// comment' -> epsilon | value
|
||||
package ini
|
||||
|
|
|
|||
|
|
@ -5,9 +5,12 @@ import (
|
|||
"io"
|
||||
)
|
||||
|
||||
// ParseState represents the current state of the parser.
|
||||
type ParseState uint
|
||||
|
||||
// State enums for the parse table
|
||||
const (
|
||||
InvalidState = iota
|
||||
InvalidState ParseState = iota
|
||||
// stmt -> value stmt'
|
||||
StatementState
|
||||
// stmt' -> MarkComplete | op stmt
|
||||
|
|
@ -36,8 +39,8 @@ const (
|
|||
)
|
||||
|
||||
// parseTable is a state machine to dictate the grammar above.
|
||||
var parseTable = map[ASTKind]map[TokenType]int{
|
||||
ASTKindStart: map[TokenType]int{
|
||||
var parseTable = map[ASTKind]map[TokenType]ParseState{
|
||||
ASTKindStart: {
|
||||
TokenLit: StatementState,
|
||||
TokenSep: OpenScopeState,
|
||||
TokenWS: SkipTokenState,
|
||||
|
|
@ -45,7 +48,7 @@ var parseTable = map[ASTKind]map[TokenType]int{
|
|||
TokenComment: CommentState,
|
||||
TokenNone: TerminalState,
|
||||
},
|
||||
ASTKindCommentStatement: map[TokenType]int{
|
||||
ASTKindCommentStatement: {
|
||||
TokenLit: StatementState,
|
||||
TokenSep: OpenScopeState,
|
||||
TokenWS: SkipTokenState,
|
||||
|
|
@ -53,7 +56,7 @@ var parseTable = map[ASTKind]map[TokenType]int{
|
|||
TokenComment: CommentState,
|
||||
TokenNone: MarkCompleteState,
|
||||
},
|
||||
ASTKindExpr: map[TokenType]int{
|
||||
ASTKindExpr: {
|
||||
TokenOp: StatementPrimeState,
|
||||
TokenLit: ValueState,
|
||||
TokenSep: OpenScopeState,
|
||||
|
|
@ -62,13 +65,15 @@ var parseTable = map[ASTKind]map[TokenType]int{
|
|||
TokenComment: CommentState,
|
||||
TokenNone: MarkCompleteState,
|
||||
},
|
||||
ASTKindEqualExpr: map[TokenType]int{
|
||||
TokenLit: ValueState,
|
||||
TokenWS: SkipTokenState,
|
||||
TokenNL: SkipState,
|
||||
TokenNone: SkipState,
|
||||
ASTKindEqualExpr: {
|
||||
TokenLit: ValueState,
|
||||
TokenSep: ValueState,
|
||||
TokenOp: ValueState,
|
||||
TokenWS: SkipTokenState,
|
||||
TokenNL: SkipState,
|
||||
TokenNone: SkipState,
|
||||
},
|
||||
ASTKindStatement: map[TokenType]int{
|
||||
ASTKindStatement: {
|
||||
TokenLit: SectionState,
|
||||
TokenSep: CloseScopeState,
|
||||
TokenWS: SkipTokenState,
|
||||
|
|
@ -76,9 +81,9 @@ var parseTable = map[ASTKind]map[TokenType]int{
|
|||
TokenComment: CommentState,
|
||||
TokenNone: MarkCompleteState,
|
||||
},
|
||||
ASTKindExprStatement: map[TokenType]int{
|
||||
ASTKindExprStatement: {
|
||||
TokenLit: ValueState,
|
||||
TokenSep: OpenScopeState,
|
||||
TokenSep: ValueState,
|
||||
TokenOp: ValueState,
|
||||
TokenWS: ValueState,
|
||||
TokenNL: MarkCompleteState,
|
||||
|
|
@ -86,14 +91,14 @@ var parseTable = map[ASTKind]map[TokenType]int{
|
|||
TokenNone: TerminalState,
|
||||
TokenComma: SkipState,
|
||||
},
|
||||
ASTKindSectionStatement: map[TokenType]int{
|
||||
ASTKindSectionStatement: {
|
||||
TokenLit: SectionState,
|
||||
TokenOp: SectionState,
|
||||
TokenSep: CloseScopeState,
|
||||
TokenWS: SectionState,
|
||||
TokenNL: SkipTokenState,
|
||||
},
|
||||
ASTKindCompletedSectionStatement: map[TokenType]int{
|
||||
ASTKindCompletedSectionStatement: {
|
||||
TokenWS: SkipTokenState,
|
||||
TokenNL: SkipTokenState,
|
||||
TokenLit: StatementState,
|
||||
|
|
@ -101,7 +106,7 @@ var parseTable = map[ASTKind]map[TokenType]int{
|
|||
TokenComment: CommentState,
|
||||
TokenNone: MarkCompleteState,
|
||||
},
|
||||
ASTKindSkipStatement: map[TokenType]int{
|
||||
ASTKindSkipStatement: {
|
||||
TokenLit: StatementState,
|
||||
TokenSep: OpenScopeState,
|
||||
TokenWS: SkipTokenState,
|
||||
|
|
@ -205,18 +210,6 @@ loop:
|
|||
case ValueState:
|
||||
// ValueState requires the previous state to either be an equal expression
|
||||
// or an expression statement.
|
||||
//
|
||||
// This grammar occurs when the RHS is a number, word, or quoted string.
|
||||
// equal_expr -> lit op equal_expr'
|
||||
// equal_expr' -> number | string | quoted_string
|
||||
// quoted_string -> " quoted_string'
|
||||
// quoted_string' -> string quoted_string_end
|
||||
// quoted_string_end -> "
|
||||
//
|
||||
// otherwise
|
||||
// expr_stmt -> equal_expr (expr_stmt')*
|
||||
// expr_stmt' -> ws S | op S | MarkComplete
|
||||
// S -> equal_expr' expr_stmt'
|
||||
switch k.Kind {
|
||||
case ASTKindEqualExpr:
|
||||
// assigning a value to some key
|
||||
|
|
@ -243,7 +236,7 @@ loop:
|
|||
}
|
||||
|
||||
children[len(children)-1] = rhs
|
||||
k.SetChildren(children)
|
||||
root.SetChildren(children)
|
||||
|
||||
stack.Push(k)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,7 +50,10 @@ func (v *DefaultVisitor) VisitExpr(expr AST) error {
|
|||
|
||||
rhs := children[1]
|
||||
|
||||
if rhs.Root.Type() != TokenLit {
|
||||
// The right-hand value side the equality expression is allowed to contain '[', ']', ':', '=' in the values.
|
||||
// If the token is not either a literal or one of the token types that identifies those four additional
|
||||
// tokens then error.
|
||||
if !(rhs.Root.Type() == TokenLit || rhs.Root.Type() == TokenOp || rhs.Root.Type() == TokenSep) {
|
||||
return NewParseError("unexpected token type")
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -48,6 +48,10 @@ func ParseResource(s string, resParser ResourceParser) (resARN Resource, err err
|
|||
return nil, InvalidARNError{ARN: a, Reason: "service is not supported"}
|
||||
}
|
||||
|
||||
if strings.HasPrefix(a.Region, "fips-") || strings.HasSuffix(a.Region, "-fips") {
|
||||
return nil, InvalidARNError{ARN: a, Reason: "FIPS region not allowed in ARN"}
|
||||
}
|
||||
|
||||
if len(a.Resource) == 0 {
|
||||
return nil, InvalidARNError{ARN: a, Reason: "resource not set"}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -71,6 +71,8 @@ func NewInvalidARNWithUnsupportedPartitionError(resource arn.Resource, err error
|
|||
}
|
||||
|
||||
// NewInvalidARNWithFIPSError ARN not supported for FIPS region
|
||||
//
|
||||
// Deprecated: FIPS will not appear in the ARN region component.
|
||||
func NewInvalidARNWithFIPSError(resource arn.Resource, err error) InvalidARNError {
|
||||
return InvalidARNError{
|
||||
message: "resource ARN not supported for FIPS region",
|
||||
|
|
@ -155,6 +157,17 @@ func NewClientConfiguredForFIPSError(resource arn.Resource, clientPartitionID, c
|
|||
}
|
||||
}
|
||||
|
||||
// NewFIPSConfigurationError denotes a configuration error when a client or request is configured for FIPS
|
||||
func NewFIPSConfigurationError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
message: "use of ARN is not supported when client or request is configured for FIPS",
|
||||
origErr: err,
|
||||
resource: resource,
|
||||
clientPartitionID: clientPartitionID,
|
||||
clientRegion: clientRegion,
|
||||
}
|
||||
}
|
||||
|
||||
// NewClientConfiguredForAccelerateError denotes client config error for unsupported S3 accelerate
|
||||
func NewClientConfiguredForAccelerateError(resource arn.Resource, clientPartitionID, clientRegion string, err error) ConfigurationError {
|
||||
return ConfigurationError{
|
||||
|
|
|
|||
|
|
@ -31,6 +31,8 @@ func (r ResourceRequest) UseFIPS() bool {
|
|||
}
|
||||
|
||||
// ResourceConfiguredForFIPS returns true if resource ARNs region is FIPS
|
||||
//
|
||||
// Deprecated: FIPS pseudo-regions will not be in the ARN
|
||||
func (r ResourceRequest) ResourceConfiguredForFIPS() bool {
|
||||
return IsFIPS(r.ARN().Region)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -98,7 +98,7 @@ func buildLocationElements(r *request.Request, v reflect.Value, buildGETQuery bo
|
|||
|
||||
// Support the ability to customize values to be marshaled as a
|
||||
// blob even though they were modeled as a string. Required for S3
|
||||
// API operations like SSECustomerKey is modeled as stirng but
|
||||
// API operations like SSECustomerKey is modeled as string but
|
||||
// required to be base64 encoded in request.
|
||||
if field.Tag.Get("marshal-as") == "blob" {
|
||||
m = m.Convert(byteSliceType)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
package protocol
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"math"
|
||||
"strconv"
|
||||
"time"
|
||||
|
|
@ -19,7 +21,9 @@ const (
|
|||
// Output time is intended to not contain decimals
|
||||
const (
|
||||
// RFC 7231#section-7.1.1.1 timetamp format. e.g Tue, 29 Apr 2014 18:30:38 GMT
|
||||
RFC822TimeFormat = "Mon, 2 Jan 2006 15:04:05 GMT"
|
||||
RFC822TimeFormat = "Mon, 2 Jan 2006 15:04:05 GMT"
|
||||
rfc822TimeFormatSingleDigitDay = "Mon, _2 Jan 2006 15:04:05 GMT"
|
||||
rfc822TimeFormatSingleDigitDayTwoDigitYear = "Mon, _2 Jan 06 15:04:05 GMT"
|
||||
|
||||
// This format is used for output time without seconds precision
|
||||
RFC822OutputTimeFormat = "Mon, 02 Jan 2006 15:04:05 GMT"
|
||||
|
|
@ -67,10 +71,20 @@ func FormatTime(name string, t time.Time) string {
|
|||
// the time if it was able to be parsed, and fails otherwise.
|
||||
func ParseTime(formatName, value string) (time.Time, error) {
|
||||
switch formatName {
|
||||
case RFC822TimeFormatName:
|
||||
return time.Parse(RFC822TimeFormat, value)
|
||||
case ISO8601TimeFormatName:
|
||||
return time.Parse(ISO8601TimeFormat, value)
|
||||
case RFC822TimeFormatName: // Smithy HTTPDate format
|
||||
return tryParse(value,
|
||||
RFC822TimeFormat,
|
||||
rfc822TimeFormatSingleDigitDay,
|
||||
rfc822TimeFormatSingleDigitDayTwoDigitYear,
|
||||
time.RFC850,
|
||||
time.ANSIC,
|
||||
)
|
||||
case ISO8601TimeFormatName: // Smithy DateTime format
|
||||
return tryParse(value,
|
||||
ISO8601TimeFormat,
|
||||
time.RFC3339Nano,
|
||||
time.RFC3339,
|
||||
)
|
||||
case UnixTimeFormatName:
|
||||
v, err := strconv.ParseFloat(value, 64)
|
||||
_, dec := math.Modf(v)
|
||||
|
|
@ -83,3 +97,36 @@ func ParseTime(formatName, value string) (time.Time, error) {
|
|||
panic("unknown timestamp format name, " + formatName)
|
||||
}
|
||||
}
|
||||
|
||||
func tryParse(v string, formats ...string) (time.Time, error) {
|
||||
var errs parseErrors
|
||||
for _, f := range formats {
|
||||
t, err := time.Parse(f, v)
|
||||
if err != nil {
|
||||
errs = append(errs, parseError{
|
||||
Format: f,
|
||||
Err: err,
|
||||
})
|
||||
continue
|
||||
}
|
||||
return t, nil
|
||||
}
|
||||
|
||||
return time.Time{}, fmt.Errorf("unable to parse time string, %v", errs)
|
||||
}
|
||||
|
||||
type parseErrors []parseError
|
||||
|
||||
func (es parseErrors) Error() string {
|
||||
var s bytes.Buffer
|
||||
for _, e := range es {
|
||||
fmt.Fprintf(&s, "\n * %q: %v", e.Format, e.Err)
|
||||
}
|
||||
|
||||
return "parse errors:" + s.String()
|
||||
}
|
||||
|
||||
type parseError struct {
|
||||
Format string
|
||||
Err error
|
||||
}
|
||||
|
|
|
|||
|
|
@ -308,6 +308,8 @@ func (b *xmlBuilder) buildScalar(value reflect.Value, current *XMLNode, tag refl
|
|||
if tag.Get("xmlAttribute") != "" { // put into current node's attribute list
|
||||
attr := xml.Attr{Name: xname, Value: str}
|
||||
current.Attr = append(current.Attr, attr)
|
||||
} else if len(xname.Local) == 0 {
|
||||
current.Text = str
|
||||
} else { // regular text node
|
||||
current.AddChild(&XMLNode{Name: xname, Text: str})
|
||||
}
|
||||
|
|
|
|||
22
vendor/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/xml_to_struct.go
generated
vendored
22
vendor/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/xml_to_struct.go
generated
vendored
|
|
@ -18,6 +18,14 @@ type XMLNode struct {
|
|||
parent *XMLNode
|
||||
}
|
||||
|
||||
// textEncoder is a string type alias that implemnts the TextMarshaler interface.
|
||||
// This alias type is used to ensure that the line feed (\n) (U+000A) is escaped.
|
||||
type textEncoder string
|
||||
|
||||
func (t textEncoder) MarshalText() ([]byte, error) {
|
||||
return []byte(t), nil
|
||||
}
|
||||
|
||||
// NewXMLElement returns a pointer to a new XMLNode initialized to default values.
|
||||
func NewXMLElement(name xml.Name) *XMLNode {
|
||||
return &XMLNode{
|
||||
|
|
@ -130,11 +138,16 @@ func StructToXML(e *xml.Encoder, node *XMLNode, sorted bool) error {
|
|||
attrs = sortedAttrs
|
||||
}
|
||||
|
||||
e.EncodeToken(xml.StartElement{Name: node.Name, Attr: attrs})
|
||||
startElement := xml.StartElement{Name: node.Name, Attr: attrs}
|
||||
|
||||
if node.Text != "" {
|
||||
e.EncodeToken(xml.CharData([]byte(node.Text)))
|
||||
} else if sorted {
|
||||
e.EncodeElement(textEncoder(node.Text), startElement)
|
||||
return e.Flush()
|
||||
}
|
||||
|
||||
e.EncodeToken(startElement)
|
||||
|
||||
if sorted {
|
||||
sortedNames := []string{}
|
||||
for k := range node.Children {
|
||||
sortedNames = append(sortedNames, k)
|
||||
|
|
@ -154,6 +167,7 @@ func StructToXML(e *xml.Encoder, node *XMLNode, sorted bool) error {
|
|||
}
|
||||
}
|
||||
|
||||
e.EncodeToken(xml.EndElement{Name: node.Name})
|
||||
e.EncodeToken(startElement.End())
|
||||
|
||||
return e.Flush()
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
4
vendor/github.com/aws/aws-sdk-go/service/autoscaling/autoscalingiface/interface.go
generated
vendored
4
vendor/github.com/aws/aws-sdk-go/service/autoscaling/autoscalingiface/interface.go
generated
vendored
|
|
@ -268,6 +268,10 @@ type AutoScalingAPI interface {
|
|||
ExitStandbyWithContext(aws.Context, *autoscaling.ExitStandbyInput, ...request.Option) (*autoscaling.ExitStandbyOutput, error)
|
||||
ExitStandbyRequest(*autoscaling.ExitStandbyInput) (*request.Request, *autoscaling.ExitStandbyOutput)
|
||||
|
||||
GetPredictiveScalingForecast(*autoscaling.GetPredictiveScalingForecastInput) (*autoscaling.GetPredictiveScalingForecastOutput, error)
|
||||
GetPredictiveScalingForecastWithContext(aws.Context, *autoscaling.GetPredictiveScalingForecastInput, ...request.Option) (*autoscaling.GetPredictiveScalingForecastOutput, error)
|
||||
GetPredictiveScalingForecastRequest(*autoscaling.GetPredictiveScalingForecastInput) (*request.Request, *autoscaling.GetPredictiveScalingForecastOutput)
|
||||
|
||||
PutLifecycleHook(*autoscaling.PutLifecycleHookInput) (*autoscaling.PutLifecycleHookOutput, error)
|
||||
PutLifecycleHookWithContext(aws.Context, *autoscaling.PutLifecycleHookInput, ...request.Option) (*autoscaling.PutLifecycleHookOutput, error)
|
||||
PutLifecycleHookRequest(*autoscaling.PutLifecycleHookInput) (*request.Request, *autoscaling.PutLifecycleHookOutput)
|
||||
|
|
|
|||
|
|
@ -5,12 +5,14 @@
|
|||
//
|
||||
// Amazon EC2 Auto Scaling is designed to automatically launch or terminate
|
||||
// EC2 instances based on user-defined scaling policies, scheduled actions,
|
||||
// and health checks. Use this service with AWS Auto Scaling, Amazon CloudWatch,
|
||||
// and Elastic Load Balancing.
|
||||
// and health checks.
|
||||
//
|
||||
// For more information, including information about granting IAM users required
|
||||
// permissions for Amazon EC2 Auto Scaling actions, see the Amazon EC2 Auto
|
||||
// For more information about Amazon EC2 Auto Scaling, see the Amazon EC2 Auto
|
||||
// Scaling User Guide (https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html).
|
||||
// For information about granting IAM users required permissions for calls to
|
||||
// Amazon EC2 Auto Scaling, see Granting IAM users required permissions for
|
||||
// Amazon EC2 Auto Scaling resources (https://docs.aws.amazon.com/autoscaling/ec2/APIReference/ec2-auto-scaling-api-permissions.html)
|
||||
// in the Amazon EC2 Auto Scaling API Reference.
|
||||
//
|
||||
// See https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01 for more information on this service.
|
||||
//
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -131,9 +131,15 @@ const (
|
|||
// A client request token already exists.
|
||||
ErrCodeTokenAlreadyExistsException = "TokenAlreadyExistsException"
|
||||
|
||||
// ErrCodeTypeConfigurationNotFoundException for service response error code
|
||||
// "TypeConfigurationNotFoundException".
|
||||
//
|
||||
// The specified extension configuration cannot be found.
|
||||
ErrCodeTypeConfigurationNotFoundException = "TypeConfigurationNotFoundException"
|
||||
|
||||
// ErrCodeTypeNotFoundException for service response error code
|
||||
// "TypeNotFoundException".
|
||||
//
|
||||
// The specified type does not exist in the CloudFormation registry.
|
||||
// The specified extension does not exist in the CloudFormation registry.
|
||||
ErrCodeTypeNotFoundException = "TypeNotFoundException"
|
||||
)
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -144,6 +144,10 @@ type EC2API interface {
|
|||
AssociateTransitGatewayRouteTableWithContext(aws.Context, *ec2.AssociateTransitGatewayRouteTableInput, ...request.Option) (*ec2.AssociateTransitGatewayRouteTableOutput, error)
|
||||
AssociateTransitGatewayRouteTableRequest(*ec2.AssociateTransitGatewayRouteTableInput) (*request.Request, *ec2.AssociateTransitGatewayRouteTableOutput)
|
||||
|
||||
AssociateTrunkInterface(*ec2.AssociateTrunkInterfaceInput) (*ec2.AssociateTrunkInterfaceOutput, error)
|
||||
AssociateTrunkInterfaceWithContext(aws.Context, *ec2.AssociateTrunkInterfaceInput, ...request.Option) (*ec2.AssociateTrunkInterfaceOutput, error)
|
||||
AssociateTrunkInterfaceRequest(*ec2.AssociateTrunkInterfaceInput) (*request.Request, *ec2.AssociateTrunkInterfaceOutput)
|
||||
|
||||
AssociateVpcCidrBlock(*ec2.AssociateVpcCidrBlockInput) (*ec2.AssociateVpcCidrBlockOutput, error)
|
||||
AssociateVpcCidrBlockWithContext(aws.Context, *ec2.AssociateVpcCidrBlockInput, ...request.Option) (*ec2.AssociateVpcCidrBlockOutput, error)
|
||||
AssociateVpcCidrBlockRequest(*ec2.AssociateVpcCidrBlockInput) (*request.Request, *ec2.AssociateVpcCidrBlockOutput)
|
||||
|
|
@ -1208,6 +1212,13 @@ type EC2API interface {
|
|||
DescribeSecurityGroupReferencesWithContext(aws.Context, *ec2.DescribeSecurityGroupReferencesInput, ...request.Option) (*ec2.DescribeSecurityGroupReferencesOutput, error)
|
||||
DescribeSecurityGroupReferencesRequest(*ec2.DescribeSecurityGroupReferencesInput) (*request.Request, *ec2.DescribeSecurityGroupReferencesOutput)
|
||||
|
||||
DescribeSecurityGroupRules(*ec2.DescribeSecurityGroupRulesInput) (*ec2.DescribeSecurityGroupRulesOutput, error)
|
||||
DescribeSecurityGroupRulesWithContext(aws.Context, *ec2.DescribeSecurityGroupRulesInput, ...request.Option) (*ec2.DescribeSecurityGroupRulesOutput, error)
|
||||
DescribeSecurityGroupRulesRequest(*ec2.DescribeSecurityGroupRulesInput) (*request.Request, *ec2.DescribeSecurityGroupRulesOutput)
|
||||
|
||||
DescribeSecurityGroupRulesPages(*ec2.DescribeSecurityGroupRulesInput, func(*ec2.DescribeSecurityGroupRulesOutput, bool) bool) error
|
||||
DescribeSecurityGroupRulesPagesWithContext(aws.Context, *ec2.DescribeSecurityGroupRulesInput, func(*ec2.DescribeSecurityGroupRulesOutput, bool) bool, ...request.Option) error
|
||||
|
||||
DescribeSecurityGroups(*ec2.DescribeSecurityGroupsInput) (*ec2.DescribeSecurityGroupsOutput, error)
|
||||
DescribeSecurityGroupsWithContext(aws.Context, *ec2.DescribeSecurityGroupsInput, ...request.Option) (*ec2.DescribeSecurityGroupsOutput, error)
|
||||
DescribeSecurityGroupsRequest(*ec2.DescribeSecurityGroupsInput) (*request.Request, *ec2.DescribeSecurityGroupsOutput)
|
||||
|
|
@ -1364,6 +1375,10 @@ type EC2API interface {
|
|||
DescribeTransitGatewaysPages(*ec2.DescribeTransitGatewaysInput, func(*ec2.DescribeTransitGatewaysOutput, bool) bool) error
|
||||
DescribeTransitGatewaysPagesWithContext(aws.Context, *ec2.DescribeTransitGatewaysInput, func(*ec2.DescribeTransitGatewaysOutput, bool) bool, ...request.Option) error
|
||||
|
||||
DescribeTrunkInterfaceAssociations(*ec2.DescribeTrunkInterfaceAssociationsInput) (*ec2.DescribeTrunkInterfaceAssociationsOutput, error)
|
||||
DescribeTrunkInterfaceAssociationsWithContext(aws.Context, *ec2.DescribeTrunkInterfaceAssociationsInput, ...request.Option) (*ec2.DescribeTrunkInterfaceAssociationsOutput, error)
|
||||
DescribeTrunkInterfaceAssociationsRequest(*ec2.DescribeTrunkInterfaceAssociationsInput) (*request.Request, *ec2.DescribeTrunkInterfaceAssociationsOutput)
|
||||
|
||||
DescribeVolumeAttribute(*ec2.DescribeVolumeAttributeInput) (*ec2.DescribeVolumeAttributeOutput, error)
|
||||
DescribeVolumeAttributeWithContext(aws.Context, *ec2.DescribeVolumeAttributeInput, ...request.Option) (*ec2.DescribeVolumeAttributeOutput, error)
|
||||
DescribeVolumeAttributeRequest(*ec2.DescribeVolumeAttributeInput) (*request.Request, *ec2.DescribeVolumeAttributeOutput)
|
||||
|
|
@ -1493,6 +1508,10 @@ type EC2API interface {
|
|||
DisableFastSnapshotRestoresWithContext(aws.Context, *ec2.DisableFastSnapshotRestoresInput, ...request.Option) (*ec2.DisableFastSnapshotRestoresOutput, error)
|
||||
DisableFastSnapshotRestoresRequest(*ec2.DisableFastSnapshotRestoresInput) (*request.Request, *ec2.DisableFastSnapshotRestoresOutput)
|
||||
|
||||
DisableImageDeprecation(*ec2.DisableImageDeprecationInput) (*ec2.DisableImageDeprecationOutput, error)
|
||||
DisableImageDeprecationWithContext(aws.Context, *ec2.DisableImageDeprecationInput, ...request.Option) (*ec2.DisableImageDeprecationOutput, error)
|
||||
DisableImageDeprecationRequest(*ec2.DisableImageDeprecationInput) (*request.Request, *ec2.DisableImageDeprecationOutput)
|
||||
|
||||
DisableSerialConsoleAccess(*ec2.DisableSerialConsoleAccessInput) (*ec2.DisableSerialConsoleAccessOutput, error)
|
||||
DisableSerialConsoleAccessWithContext(aws.Context, *ec2.DisableSerialConsoleAccessInput, ...request.Option) (*ec2.DisableSerialConsoleAccessOutput, error)
|
||||
DisableSerialConsoleAccessRequest(*ec2.DisableSerialConsoleAccessInput) (*request.Request, *ec2.DisableSerialConsoleAccessOutput)
|
||||
|
|
@ -1545,6 +1564,10 @@ type EC2API interface {
|
|||
DisassociateTransitGatewayRouteTableWithContext(aws.Context, *ec2.DisassociateTransitGatewayRouteTableInput, ...request.Option) (*ec2.DisassociateTransitGatewayRouteTableOutput, error)
|
||||
DisassociateTransitGatewayRouteTableRequest(*ec2.DisassociateTransitGatewayRouteTableInput) (*request.Request, *ec2.DisassociateTransitGatewayRouteTableOutput)
|
||||
|
||||
DisassociateTrunkInterface(*ec2.DisassociateTrunkInterfaceInput) (*ec2.DisassociateTrunkInterfaceOutput, error)
|
||||
DisassociateTrunkInterfaceWithContext(aws.Context, *ec2.DisassociateTrunkInterfaceInput, ...request.Option) (*ec2.DisassociateTrunkInterfaceOutput, error)
|
||||
DisassociateTrunkInterfaceRequest(*ec2.DisassociateTrunkInterfaceInput) (*request.Request, *ec2.DisassociateTrunkInterfaceOutput)
|
||||
|
||||
DisassociateVpcCidrBlock(*ec2.DisassociateVpcCidrBlockInput) (*ec2.DisassociateVpcCidrBlockOutput, error)
|
||||
DisassociateVpcCidrBlockWithContext(aws.Context, *ec2.DisassociateVpcCidrBlockInput, ...request.Option) (*ec2.DisassociateVpcCidrBlockOutput, error)
|
||||
DisassociateVpcCidrBlockRequest(*ec2.DisassociateVpcCidrBlockInput) (*request.Request, *ec2.DisassociateVpcCidrBlockOutput)
|
||||
|
|
@ -1557,6 +1580,10 @@ type EC2API interface {
|
|||
EnableFastSnapshotRestoresWithContext(aws.Context, *ec2.EnableFastSnapshotRestoresInput, ...request.Option) (*ec2.EnableFastSnapshotRestoresOutput, error)
|
||||
EnableFastSnapshotRestoresRequest(*ec2.EnableFastSnapshotRestoresInput) (*request.Request, *ec2.EnableFastSnapshotRestoresOutput)
|
||||
|
||||
EnableImageDeprecation(*ec2.EnableImageDeprecationInput) (*ec2.EnableImageDeprecationOutput, error)
|
||||
EnableImageDeprecationWithContext(aws.Context, *ec2.EnableImageDeprecationInput, ...request.Option) (*ec2.EnableImageDeprecationOutput, error)
|
||||
EnableImageDeprecationRequest(*ec2.EnableImageDeprecationInput) (*request.Request, *ec2.EnableImageDeprecationOutput)
|
||||
|
||||
EnableSerialConsoleAccess(*ec2.EnableSerialConsoleAccessInput) (*ec2.EnableSerialConsoleAccessOutput, error)
|
||||
EnableSerialConsoleAccessWithContext(aws.Context, *ec2.EnableSerialConsoleAccessInput, ...request.Option) (*ec2.EnableSerialConsoleAccessOutput, error)
|
||||
EnableSerialConsoleAccessRequest(*ec2.EnableSerialConsoleAccessInput) (*request.Request, *ec2.EnableSerialConsoleAccessOutput)
|
||||
|
|
@ -1828,6 +1855,10 @@ type EC2API interface {
|
|||
ModifyReservedInstancesWithContext(aws.Context, *ec2.ModifyReservedInstancesInput, ...request.Option) (*ec2.ModifyReservedInstancesOutput, error)
|
||||
ModifyReservedInstancesRequest(*ec2.ModifyReservedInstancesInput) (*request.Request, *ec2.ModifyReservedInstancesOutput)
|
||||
|
||||
ModifySecurityGroupRules(*ec2.ModifySecurityGroupRulesInput) (*ec2.ModifySecurityGroupRulesOutput, error)
|
||||
ModifySecurityGroupRulesWithContext(aws.Context, *ec2.ModifySecurityGroupRulesInput, ...request.Option) (*ec2.ModifySecurityGroupRulesOutput, error)
|
||||
ModifySecurityGroupRulesRequest(*ec2.ModifySecurityGroupRulesInput) (*request.Request, *ec2.ModifySecurityGroupRulesOutput)
|
||||
|
||||
ModifySnapshotAttribute(*ec2.ModifySnapshotAttributeInput) (*ec2.ModifySnapshotAttributeOutput, error)
|
||||
ModifySnapshotAttributeWithContext(aws.Context, *ec2.ModifySnapshotAttributeInput, ...request.Option) (*ec2.ModifySnapshotAttributeOutput, error)
|
||||
ModifySnapshotAttributeRequest(*ec2.ModifySnapshotAttributeInput) (*request.Request, *ec2.ModifySnapshotAttributeOutput)
|
||||
|
|
|
|||
|
|
@ -417,7 +417,8 @@ func (c *ELBV2) CreateLoadBalancerRequest(input *CreateLoadBalancerInput) (req *
|
|||
// A load balancer with the specified name already exists.
|
||||
//
|
||||
// * ErrCodeTooManyLoadBalancersException "TooManyLoadBalancers"
|
||||
// You've reached the limit on the number of load balancers for your AWS account.
|
||||
// You've reached the limit on the number of load balancers for your Amazon
|
||||
// Web Services account.
|
||||
//
|
||||
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
|
||||
// The requested configuration is not valid.
|
||||
|
|
@ -540,7 +541,8 @@ func (c *ELBV2) CreateRuleRequest(input *CreateRuleInput) (req *request.Request,
|
|||
// The specified priority is in use.
|
||||
//
|
||||
// * ErrCodeTooManyTargetGroupsException "TooManyTargetGroups"
|
||||
// You've reached the limit on the number of target groups for your AWS account.
|
||||
// You've reached the limit on the number of target groups for your Amazon Web
|
||||
// Services account.
|
||||
//
|
||||
// * ErrCodeTooManyRulesException "TooManyRules"
|
||||
// You've reached the limit on the number of rules per load balancer.
|
||||
|
|
@ -676,7 +678,8 @@ func (c *ELBV2) CreateTargetGroupRequest(input *CreateTargetGroupInput) (req *re
|
|||
// A target group with the specified name already exists.
|
||||
//
|
||||
// * ErrCodeTooManyTargetGroupsException "TooManyTargetGroups"
|
||||
// You've reached the limit on the number of target groups for your AWS account.
|
||||
// You've reached the limit on the number of target groups for your Amazon Web
|
||||
// Services account.
|
||||
//
|
||||
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
|
||||
// The requested configuration is not valid.
|
||||
|
|
@ -1184,8 +1187,8 @@ func (c *ELBV2) DescribeAccountLimitsRequest(input *DescribeAccountLimitsInput)
|
|||
|
||||
// DescribeAccountLimits API operation for Elastic Load Balancing.
|
||||
//
|
||||
// Describes the current Elastic Load Balancing resource limits for your AWS
|
||||
// account.
|
||||
// Describes the current Elastic Load Balancing resource limits for your Amazon
|
||||
// Web Services account.
|
||||
//
|
||||
// For more information, see the following:
|
||||
//
|
||||
|
|
@ -4683,7 +4686,7 @@ type CreateTargetGroupInput struct {
|
|||
// [HTTP1 or HTTP2 protocol version] The ping path. The default is /.
|
||||
//
|
||||
// [GRPC protocol version] The path of a custom health check method with the
|
||||
// format /package.service/method. The default is /AWS.ALB/healthcheck.
|
||||
// format /package.service/method. The default is /Amazon Web Services.ALB/healthcheck.
|
||||
HealthCheckPath *string `min:"1" type:"string"`
|
||||
|
||||
// The port the load balancer uses when performing health checks on targets.
|
||||
|
|
@ -6365,7 +6368,8 @@ func (s *HttpRequestMethodConditionConfig) SetValues(v []*string) *HttpRequestMe
|
|||
return s
|
||||
}
|
||||
|
||||
// Information about an Elastic Load Balancing resource limit for your AWS account.
|
||||
// Information about an Elastic Load Balancing resource limit for your Amazon
|
||||
// Web Services account.
|
||||
type Limit struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
|
|
@ -6763,7 +6767,8 @@ type LoadBalancerAttribute struct {
|
|||
//
|
||||
// * waf.fail_open.enabled - Indicates whether to allow a WAF-enabled load
|
||||
// balancer to route requests to targets if it is unable to forward the request
|
||||
// to AWS WAF. The value is true or false. The default is false.
|
||||
// to Amazon Web Services WAF. The value is true or false. The default is
|
||||
// false.
|
||||
//
|
||||
// The following attribute is supported by Network Load Balancers and Gateway
|
||||
// Load Balancers:
|
||||
|
|
@ -7286,16 +7291,19 @@ type ModifyTargetGroupInput struct {
|
|||
// [HTTP1 or HTTP2 protocol version] The ping path. The default is /.
|
||||
//
|
||||
// [GRPC protocol version] The path of a custom health check method with the
|
||||
// format /package.service/method. The default is /AWS.ALB/healthcheck.
|
||||
// format /package.service/method. The default is /Amazon Web Services.ALB/healthcheck.
|
||||
HealthCheckPath *string `min:"1" type:"string"`
|
||||
|
||||
// The port the load balancer uses when performing health checks on targets.
|
||||
HealthCheckPort *string `type:"string"`
|
||||
|
||||
// The protocol the load balancer uses when performing health checks on targets.
|
||||
// The TCP protocol is supported for health checks only if the protocol of the
|
||||
// target group is TCP, TLS, UDP, or TCP_UDP. The GENEVE, TLS, UDP, and TCP_UDP
|
||||
// protocols are not supported for health checks.
|
||||
// For Application Load Balancers, the default is HTTP. For Network Load Balancers
|
||||
// and Gateway Load Balancers, the default is TCP. The TCP protocol is not supported
|
||||
// for health checks if the protocol of the target group is HTTP or HTTPS. It
|
||||
// is supported for health checks only if the protocol of the target group is
|
||||
// TCP, TLS, UDP, or TCP_UDP. The GENEVE, TLS, UDP, and TCP_UDP protocols are
|
||||
// not supported for health checks.
|
||||
//
|
||||
// With Network Load Balancers, you can't modify this setting.
|
||||
HealthCheckProtocol *string `type:"string" enum:"ProtocolEnum"`
|
||||
|
|
@ -8982,8 +8990,9 @@ type TargetGroupAttribute struct {
|
|||
// default is 0 seconds (disabled).
|
||||
//
|
||||
// * stickiness.app_cookie.cookie_name - Indicates the name of the application-based
|
||||
// cookie. Names that start with the following names are not allowed: AWSALB,
|
||||
// AWSALBAPP, and AWSALBTG. They're reserved for use by the load balancer.
|
||||
// cookie. Names that start with the following prefixes are not allowed:
|
||||
// AWSALB, AWSALBAPP, and AWSALBTG; they're reserved for use by the load
|
||||
// balancer.
|
||||
//
|
||||
// * stickiness.app_cookie.duration_seconds - The time period, in seconds,
|
||||
// during which requests from a client should be routed to the same target.
|
||||
|
|
|
|||
|
|
@ -183,7 +183,8 @@ const (
|
|||
// ErrCodeTooManyLoadBalancersException for service response error code
|
||||
// "TooManyLoadBalancers".
|
||||
//
|
||||
// You've reached the limit on the number of load balancers for your AWS account.
|
||||
// You've reached the limit on the number of load balancers for your Amazon
|
||||
// Web Services account.
|
||||
ErrCodeTooManyLoadBalancersException = "TooManyLoadBalancers"
|
||||
|
||||
// ErrCodeTooManyRegistrationsForTargetIdException for service response error code
|
||||
|
|
@ -208,7 +209,8 @@ const (
|
|||
// ErrCodeTooManyTargetGroupsException for service response error code
|
||||
// "TooManyTargetGroups".
|
||||
//
|
||||
// You've reached the limit on the number of target groups for your AWS account.
|
||||
// You've reached the limit on the number of target groups for your Amazon Web
|
||||
// Services account.
|
||||
ErrCodeTooManyTargetGroupsException = "TooManyTargetGroups"
|
||||
|
||||
// ErrCodeTooManyTargetsException for service response error code
|
||||
|
|
|
|||
|
|
@ -1358,6 +1358,10 @@ func (c *EventBridge) DeleteRuleRequest(input *DeleteRuleInput) (req *request.Re
|
|||
// When you delete a rule, incoming events might continue to match to the deleted
|
||||
// rule. Allow a short period of time for changes to take effect.
|
||||
//
|
||||
// If you call delete rule multiple times for the same rule, all calls will
|
||||
// succeed. When you call delete rule for a non-existent custom eventbus, ResourceNotFoundException
|
||||
// is returned.
|
||||
//
|
||||
// Managed rules are rules created and managed by another AWS service on your
|
||||
// behalf. These rules are created by those other AWS services to support functionality
|
||||
// in those services. You can delete these rules using the Force option, but
|
||||
|
|
@ -3763,43 +3767,55 @@ func (c *EventBridge) PutTargetsRequest(input *PutTargetsInput) (req *request.Re
|
|||
//
|
||||
// You can configure the following as targets for Events:
|
||||
//
|
||||
// * EC2 instances
|
||||
// * API destination (https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-api-destinations.html)
|
||||
//
|
||||
// * SSM Run Command
|
||||
// * Amazon API Gateway REST API endpoints
|
||||
//
|
||||
// * SSM Automation
|
||||
// * API Gateway
|
||||
//
|
||||
// * AWS Lambda functions
|
||||
// * AWS Batch job queue
|
||||
//
|
||||
// * Data streams in Amazon Kinesis Data Streams
|
||||
// * CloudWatch Logs group
|
||||
//
|
||||
// * Data delivery streams in Amazon Kinesis Data Firehose
|
||||
// * CodeBuild project
|
||||
//
|
||||
// * CodePineline
|
||||
//
|
||||
// * Amazon EC2 CreateSnapshot API call
|
||||
//
|
||||
// * Amazon EC2 RebootInstances API call
|
||||
//
|
||||
// * Amazon EC2 StopInstances API call
|
||||
//
|
||||
// * Amazon EC2 TerminateInstances API call
|
||||
//
|
||||
// * Amazon ECS tasks
|
||||
//
|
||||
// * AWS Step Functions state machines
|
||||
// * Event bus in a different AWS account or Region. You can use an event
|
||||
// bus in the US East (N. Virginia) us-east-1, US West (Oregon) us-west-2,
|
||||
// or Europe (Ireland) eu-west-1 Regions as a target for a rule.
|
||||
//
|
||||
// * AWS Batch jobs
|
||||
// * Firehose delivery stream (Kinesis Data Firehose)
|
||||
//
|
||||
// * AWS CodeBuild projects
|
||||
// * Inspector assessment template (Amazon Inspector)
|
||||
//
|
||||
// * Pipelines in AWS CodePipeline
|
||||
// * Kinesis stream (Kinesis Data Stream)
|
||||
//
|
||||
// * Amazon Inspector assessment templates
|
||||
// * AWS Lambda function
|
||||
//
|
||||
// * Amazon SNS topics
|
||||
// * Redshift clusters (Data API statement execution)
|
||||
//
|
||||
// * Amazon SQS queues, including FIFO queues
|
||||
// * Amazon SNS topic
|
||||
//
|
||||
// * The default event bus of another AWS account
|
||||
// * Amazon SQS queues (includes FIFO queues
|
||||
//
|
||||
// * Amazon API Gateway REST APIs
|
||||
// * SSM Automation
|
||||
//
|
||||
// * Redshift Clusters to invoke Data API ExecuteStatement on
|
||||
// * SSM OpsItem
|
||||
//
|
||||
// * Custom/SaaS HTTPS APIs via EventBridge API Destinations
|
||||
// * SSM Run Command
|
||||
//
|
||||
// * Amazon SageMaker Model Building Pipelines
|
||||
// * Step Functions state machines
|
||||
//
|
||||
// Creating rules with built-in targets is supported only in the AWS Management
|
||||
// Console. The built-in targets are EC2 CreateSnapshot API call, EC2 RebootInstances
|
||||
|
|
@ -4461,7 +4477,7 @@ func (c *EventBridge) UntagResourceRequest(input *UntagResourceInput) (req *requ
|
|||
// UntagResource API operation for Amazon EventBridge.
|
||||
//
|
||||
// Removes one or more tags from the specified EventBridge resource. In Amazon
|
||||
// EventBridge (CloudWatch Events, rules and event buses can be tagged.
|
||||
// EventBridge (CloudWatch Events), rules and event buses can be tagged.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -5300,6 +5316,73 @@ func (s *CancelReplayOutput) SetStateReason(v string) *CancelReplayOutput {
|
|||
return s
|
||||
}
|
||||
|
||||
// The details of a capacity provider strategy. To learn more, see CapacityProviderStrategyItem
|
||||
// (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CapacityProviderStrategyItem.html)
|
||||
// in the Amazon ECS API Reference.
|
||||
type CapacityProviderStrategyItem struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
// The base value designates how many tasks, at a minimum, to run on the specified
|
||||
// capacity provider. Only one capacity provider in a capacity provider strategy
|
||||
// can have a base defined. If no value is specified, the default value of 0
|
||||
// is used.
|
||||
Base *int64 `locationName:"base" type:"integer"`
|
||||
|
||||
// The short name of the capacity provider.
|
||||
//
|
||||
// CapacityProvider is a required field
|
||||
CapacityProvider *string `locationName:"capacityProvider" min:"1" type:"string" required:"true"`
|
||||
|
||||
// The weight value designates the relative percentage of the total number of
|
||||
// tasks launched that should use the specified capacity provider. The weight
|
||||
// value is taken into consideration after the base value, if defined, is satisfied.
|
||||
Weight *int64 `locationName:"weight" type:"integer"`
|
||||
}
|
||||
|
||||
// String returns the string representation
|
||||
func (s CapacityProviderStrategyItem) String() string {
|
||||
return awsutil.Prettify(s)
|
||||
}
|
||||
|
||||
// GoString returns the string representation
|
||||
func (s CapacityProviderStrategyItem) GoString() string {
|
||||
return s.String()
|
||||
}
|
||||
|
||||
// Validate inspects the fields of the type to determine if they are valid.
|
||||
func (s *CapacityProviderStrategyItem) Validate() error {
|
||||
invalidParams := request.ErrInvalidParams{Context: "CapacityProviderStrategyItem"}
|
||||
if s.CapacityProvider == nil {
|
||||
invalidParams.Add(request.NewErrParamRequired("CapacityProvider"))
|
||||
}
|
||||
if s.CapacityProvider != nil && len(*s.CapacityProvider) < 1 {
|
||||
invalidParams.Add(request.NewErrParamMinLen("CapacityProvider", 1))
|
||||
}
|
||||
|
||||
if invalidParams.Len() > 0 {
|
||||
return invalidParams
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// SetBase sets the Base field's value.
|
||||
func (s *CapacityProviderStrategyItem) SetBase(v int64) *CapacityProviderStrategyItem {
|
||||
s.Base = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetCapacityProvider sets the CapacityProvider field's value.
|
||||
func (s *CapacityProviderStrategyItem) SetCapacityProvider(v string) *CapacityProviderStrategyItem {
|
||||
s.CapacityProvider = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetWeight sets the Weight field's value.
|
||||
func (s *CapacityProviderStrategyItem) SetWeight(v int64) *CapacityProviderStrategyItem {
|
||||
s.Weight = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// There is concurrent modification on a rule, target, archive, or replay.
|
||||
type ConcurrentModificationException struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
|
@ -8576,6 +8659,23 @@ func (s DisableRuleOutput) GoString() string {
|
|||
type EcsParameters struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
// The capacity provider strategy to use for the task.
|
||||
//
|
||||
// If a capacityProviderStrategy is specified, the launchType parameter must
|
||||
// be omitted. If no capacityProviderStrategy or launchType is specified, the
|
||||
// defaultCapacityProviderStrategy for the cluster is used.
|
||||
CapacityProviderStrategy []*CapacityProviderStrategyItem `type:"list"`
|
||||
|
||||
// Specifies whether to enable Amazon ECS managed tags for the task. For more
|
||||
// information, see Tagging Your Amazon ECS Resources (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html)
|
||||
// in the Amazon Elastic Container Service Developer Guide.
|
||||
EnableECSManagedTags *bool `type:"boolean"`
|
||||
|
||||
// Whether or not to enable the execute command functionality for the containers
|
||||
// in this task. If true, this enables execute command functionality on all
|
||||
// containers in the task.
|
||||
EnableExecuteCommand *bool `type:"boolean"`
|
||||
|
||||
// Specifies an ECS task group for the task. The maximum length is 255 characters.
|
||||
Group *string `type:"string"`
|
||||
|
||||
|
|
@ -8596,6 +8696,15 @@ type EcsParameters struct {
|
|||
// the awsvpc network mode, the task fails.
|
||||
NetworkConfiguration *NetworkConfiguration `type:"structure"`
|
||||
|
||||
// An array of placement constraint objects to use for the task. You can specify
|
||||
// up to 10 constraints per task (including constraints in the task definition
|
||||
// and those specified at runtime).
|
||||
PlacementConstraints []*PlacementConstraint `type:"list"`
|
||||
|
||||
// The placement strategy objects to use for the task. You can specify a maximum
|
||||
// of five strategy rules per task.
|
||||
PlacementStrategy []*PlacementStrategy `type:"list"`
|
||||
|
||||
// Specifies the platform version for the task. Specify only the numeric portion
|
||||
// of the platform version, such as 1.1.0.
|
||||
//
|
||||
|
|
@ -8604,6 +8713,21 @@ type EcsParameters struct {
|
|||
// in the Amazon Elastic Container Service Developer Guide.
|
||||
PlatformVersion *string `type:"string"`
|
||||
|
||||
// Specifies whether to propagate the tags from the task definition to the task.
|
||||
// If no value is specified, the tags are not propagated. Tags can only be propagated
|
||||
// to the task during task creation. To add tags to a task after task creation,
|
||||
// use the TagResource API action.
|
||||
PropagateTags *string `type:"string" enum:"PropagateTags"`
|
||||
|
||||
// The reference ID to use for the task.
|
||||
ReferenceId *string `type:"string"`
|
||||
|
||||
// The metadata that you apply to the task to help you categorize and organize
|
||||
// them. Each tag consists of a key and an optional value, both of which you
|
||||
// define. To learn more, see RunTask (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html#ECS-RunTask-request-tags)
|
||||
// in the Amazon ECS API Reference.
|
||||
Tags []*Tag `type:"list"`
|
||||
|
||||
// The number of tasks to create based on TaskDefinition. The default is 1.
|
||||
TaskCount *int64 `min:"1" type:"integer"`
|
||||
|
||||
|
|
@ -8636,11 +8760,31 @@ func (s *EcsParameters) Validate() error {
|
|||
if s.TaskDefinitionArn != nil && len(*s.TaskDefinitionArn) < 1 {
|
||||
invalidParams.Add(request.NewErrParamMinLen("TaskDefinitionArn", 1))
|
||||
}
|
||||
if s.CapacityProviderStrategy != nil {
|
||||
for i, v := range s.CapacityProviderStrategy {
|
||||
if v == nil {
|
||||
continue
|
||||
}
|
||||
if err := v.Validate(); err != nil {
|
||||
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CapacityProviderStrategy", i), err.(request.ErrInvalidParams))
|
||||
}
|
||||
}
|
||||
}
|
||||
if s.NetworkConfiguration != nil {
|
||||
if err := s.NetworkConfiguration.Validate(); err != nil {
|
||||
invalidParams.AddNested("NetworkConfiguration", err.(request.ErrInvalidParams))
|
||||
}
|
||||
}
|
||||
if s.Tags != nil {
|
||||
for i, v := range s.Tags {
|
||||
if v == nil {
|
||||
continue
|
||||
}
|
||||
if err := v.Validate(); err != nil {
|
||||
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if invalidParams.Len() > 0 {
|
||||
return invalidParams
|
||||
|
|
@ -8648,6 +8792,24 @@ func (s *EcsParameters) Validate() error {
|
|||
return nil
|
||||
}
|
||||
|
||||
// SetCapacityProviderStrategy sets the CapacityProviderStrategy field's value.
|
||||
func (s *EcsParameters) SetCapacityProviderStrategy(v []*CapacityProviderStrategyItem) *EcsParameters {
|
||||
s.CapacityProviderStrategy = v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetEnableECSManagedTags sets the EnableECSManagedTags field's value.
|
||||
func (s *EcsParameters) SetEnableECSManagedTags(v bool) *EcsParameters {
|
||||
s.EnableECSManagedTags = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetEnableExecuteCommand sets the EnableExecuteCommand field's value.
|
||||
func (s *EcsParameters) SetEnableExecuteCommand(v bool) *EcsParameters {
|
||||
s.EnableExecuteCommand = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetGroup sets the Group field's value.
|
||||
func (s *EcsParameters) SetGroup(v string) *EcsParameters {
|
||||
s.Group = &v
|
||||
|
|
@ -8666,12 +8828,42 @@ func (s *EcsParameters) SetNetworkConfiguration(v *NetworkConfiguration) *EcsPar
|
|||
return s
|
||||
}
|
||||
|
||||
// SetPlacementConstraints sets the PlacementConstraints field's value.
|
||||
func (s *EcsParameters) SetPlacementConstraints(v []*PlacementConstraint) *EcsParameters {
|
||||
s.PlacementConstraints = v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetPlacementStrategy sets the PlacementStrategy field's value.
|
||||
func (s *EcsParameters) SetPlacementStrategy(v []*PlacementStrategy) *EcsParameters {
|
||||
s.PlacementStrategy = v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetPlatformVersion sets the PlatformVersion field's value.
|
||||
func (s *EcsParameters) SetPlatformVersion(v string) *EcsParameters {
|
||||
s.PlatformVersion = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetPropagateTags sets the PropagateTags field's value.
|
||||
func (s *EcsParameters) SetPropagateTags(v string) *EcsParameters {
|
||||
s.PropagateTags = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetReferenceId sets the ReferenceId field's value.
|
||||
func (s *EcsParameters) SetReferenceId(v string) *EcsParameters {
|
||||
s.ReferenceId = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetTags sets the Tags field's value.
|
||||
func (s *EcsParameters) SetTags(v []*Tag) *EcsParameters {
|
||||
s.Tags = v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetTaskCount sets the TaskCount field's value.
|
||||
func (s *EcsParameters) SetTaskCount(v int64) *EcsParameters {
|
||||
s.TaskCount = &v
|
||||
|
|
@ -8753,11 +8945,10 @@ func (s EnableRuleOutput) GoString() string {
|
|||
}
|
||||
|
||||
// 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 rules from
|
||||
// AWS services. A custom event bus can receive rules from AWS services as well
|
||||
// as 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.
|
||||
// with that event bus. Your account's default event bus receives events from
|
||||
// AWS 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"`
|
||||
|
||||
|
|
@ -10829,6 +11020,92 @@ func (s *PartnerEventSourceAccount) SetState(v string) *PartnerEventSourceAccoun
|
|||
return s
|
||||
}
|
||||
|
||||
// An object representing a constraint on task placement. To learn more, see
|
||||
// Task Placement Constraints (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-constraints.html)
|
||||
// in the Amazon Elastic Container Service Developer Guide.
|
||||
type PlacementConstraint struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
// A cluster query language expression to apply to the constraint. You cannot
|
||||
// specify an expression if the constraint type is distinctInstance. To learn
|
||||
// more, see Cluster Query Language (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cluster-query-language.html)
|
||||
// in the Amazon Elastic Container Service Developer Guide.
|
||||
Expression *string `locationName:"expression" type:"string"`
|
||||
|
||||
// The type of constraint. Use distinctInstance to ensure that each task in
|
||||
// a particular group is running on a different container instance. Use memberOf
|
||||
// to restrict the selection to a group of valid candidates.
|
||||
Type *string `locationName:"type" type:"string" enum:"PlacementConstraintType"`
|
||||
}
|
||||
|
||||
// String returns the string representation
|
||||
func (s PlacementConstraint) String() string {
|
||||
return awsutil.Prettify(s)
|
||||
}
|
||||
|
||||
// GoString returns the string representation
|
||||
func (s PlacementConstraint) GoString() string {
|
||||
return s.String()
|
||||
}
|
||||
|
||||
// SetExpression sets the Expression field's value.
|
||||
func (s *PlacementConstraint) SetExpression(v string) *PlacementConstraint {
|
||||
s.Expression = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetType sets the Type field's value.
|
||||
func (s *PlacementConstraint) SetType(v string) *PlacementConstraint {
|
||||
s.Type = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// The task placement strategy for a task or service. To learn more, see Task
|
||||
// Placement Strategies (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-strategies.html)
|
||||
// in the Amazon Elastic Container Service Developer Guide.
|
||||
type PlacementStrategy struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
// The field to apply the placement strategy against. For the spread placement
|
||||
// strategy, valid values are instanceId (or host, which has the same effect),
|
||||
// or any platform or custom attribute that is applied to a container instance,
|
||||
// such as attribute:ecs.availability-zone. For the binpack placement strategy,
|
||||
// valid values are cpu and memory. For the random placement strategy, this
|
||||
// field is not used.
|
||||
Field *string `locationName:"field" type:"string"`
|
||||
|
||||
// The type of placement strategy. The random placement strategy randomly places
|
||||
// tasks on available candidates. The spread placement strategy spreads placement
|
||||
// across available candidates evenly based on the field parameter. The binpack
|
||||
// strategy places tasks on available candidates that have the least available
|
||||
// amount of the resource that is specified with the field parameter. For example,
|
||||
// if you binpack on memory, a task is placed on the instance with the least
|
||||
// amount of remaining memory (but still enough to run the task).
|
||||
Type *string `locationName:"type" type:"string" enum:"PlacementStrategyType"`
|
||||
}
|
||||
|
||||
// String returns the string representation
|
||||
func (s PlacementStrategy) String() string {
|
||||
return awsutil.Prettify(s)
|
||||
}
|
||||
|
||||
// GoString returns the string representation
|
||||
func (s PlacementStrategy) GoString() string {
|
||||
return s.String()
|
||||
}
|
||||
|
||||
// SetField sets the Field field's value.
|
||||
func (s *PlacementStrategy) SetField(v string) *PlacementStrategy {
|
||||
s.Field = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// SetType sets the Type field's value.
|
||||
func (s *PlacementStrategy) SetType(v string) *PlacementStrategy {
|
||||
s.Type = &v
|
||||
return s
|
||||
}
|
||||
|
||||
// The event bus policy is too long. For more information, see the limits.
|
||||
type PolicyLengthExceededException struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
|
@ -14399,6 +14676,54 @@ func LaunchType_Values() []string {
|
|||
}
|
||||
}
|
||||
|
||||
const (
|
||||
// PlacementConstraintTypeDistinctInstance is a PlacementConstraintType enum value
|
||||
PlacementConstraintTypeDistinctInstance = "distinctInstance"
|
||||
|
||||
// PlacementConstraintTypeMemberOf is a PlacementConstraintType enum value
|
||||
PlacementConstraintTypeMemberOf = "memberOf"
|
||||
)
|
||||
|
||||
// PlacementConstraintType_Values returns all elements of the PlacementConstraintType enum
|
||||
func PlacementConstraintType_Values() []string {
|
||||
return []string{
|
||||
PlacementConstraintTypeDistinctInstance,
|
||||
PlacementConstraintTypeMemberOf,
|
||||
}
|
||||
}
|
||||
|
||||
const (
|
||||
// PlacementStrategyTypeRandom is a PlacementStrategyType enum value
|
||||
PlacementStrategyTypeRandom = "random"
|
||||
|
||||
// PlacementStrategyTypeSpread is a PlacementStrategyType enum value
|
||||
PlacementStrategyTypeSpread = "spread"
|
||||
|
||||
// PlacementStrategyTypeBinpack is a PlacementStrategyType enum value
|
||||
PlacementStrategyTypeBinpack = "binpack"
|
||||
)
|
||||
|
||||
// PlacementStrategyType_Values returns all elements of the PlacementStrategyType enum
|
||||
func PlacementStrategyType_Values() []string {
|
||||
return []string{
|
||||
PlacementStrategyTypeRandom,
|
||||
PlacementStrategyTypeSpread,
|
||||
PlacementStrategyTypeBinpack,
|
||||
}
|
||||
}
|
||||
|
||||
const (
|
||||
// PropagateTagsTaskDefinition is a PropagateTags enum value
|
||||
PropagateTagsTaskDefinition = "TASK_DEFINITION"
|
||||
)
|
||||
|
||||
// PropagateTags_Values returns all elements of the PropagateTags enum
|
||||
func PropagateTags_Values() []string {
|
||||
return []string{
|
||||
PropagateTagsTaskDefinition,
|
||||
}
|
||||
}
|
||||
|
||||
const (
|
||||
// ReplayStateStarting is a ReplayState enum value
|
||||
ReplayStateStarting = "STARTING"
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -3,12 +3,12 @@
|
|||
// Package iam provides the client and types for making API
|
||||
// requests to AWS Identity and Access Management.
|
||||
//
|
||||
// AWS Identity and Access Management (IAM) is a web service for securely controlling
|
||||
// access to AWS services. With IAM, you can centrally manage users, security
|
||||
// credentials such as access keys, and permissions that control which AWS resources
|
||||
// users and applications can access. For more information about IAM, see AWS
|
||||
// Identity and Access Management (IAM) (http://aws.amazon.com/iam/) and the
|
||||
// AWS Identity and Access Management User Guide (https://docs.aws.amazon.com/IAM/latest/UserGuide/).
|
||||
// Identity and Access Management (IAM) is a web service for securely controlling
|
||||
// access to Amazon Web Services services. With IAM, you can centrally manage
|
||||
// users, security credentials such as access keys, and permissions that control
|
||||
// which Amazon Web Services resources users and applications can access. For
|
||||
// more information about IAM, see Identity and Access Management (IAM) (http://aws.amazon.com/iam/)
|
||||
// and the Identity and Access Management User Guide (https://docs.aws.amazon.com/IAM/latest/UserGuide/).
|
||||
//
|
||||
// See https://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08 for more information on this service.
|
||||
//
|
||||
|
|
|
|||
|
|
@ -117,7 +117,8 @@ const (
|
|||
// "LimitExceeded".
|
||||
//
|
||||
// The request was rejected because it attempted to create resources beyond
|
||||
// the current AWS account limits. The error message describes the limit exceeded.
|
||||
// the current Amazon Web Services account limits. The error message describes
|
||||
// the limit exceeded.
|
||||
ErrCodeLimitExceededException = "LimitExceeded"
|
||||
|
||||
// ErrCodeMalformedCertificateException for service response error code
|
||||
|
|
@ -158,8 +159,8 @@ const (
|
|||
// ErrCodePolicyNotAttachableException for service response error code
|
||||
// "PolicyNotAttachable".
|
||||
//
|
||||
// The request failed because AWS service role policies can only be attached
|
||||
// to the service-linked role for that service.
|
||||
// The request failed because Amazon Web Services service role policies can
|
||||
// only be attached to the service-linked role for that service.
|
||||
ErrCodePolicyNotAttachableException = "PolicyNotAttachable"
|
||||
|
||||
// ErrCodeReportGenerationLimitExceededException for service response error code
|
||||
|
|
|
|||
|
|
@ -562,6 +562,9 @@ type IAMAPI interface {
|
|||
ListUserTagsWithContext(aws.Context, *iam.ListUserTagsInput, ...request.Option) (*iam.ListUserTagsOutput, error)
|
||||
ListUserTagsRequest(*iam.ListUserTagsInput) (*request.Request, *iam.ListUserTagsOutput)
|
||||
|
||||
ListUserTagsPages(*iam.ListUserTagsInput, func(*iam.ListUserTagsOutput, bool) bool) error
|
||||
ListUserTagsPagesWithContext(aws.Context, *iam.ListUserTagsInput, func(*iam.ListUserTagsOutput, bool) bool, ...request.Option) error
|
||||
|
||||
ListUsers(*iam.ListUsersInput) (*iam.ListUsersOutput, error)
|
||||
ListUsersWithContext(aws.Context, *iam.ListUsersInput, ...request.Option) (*iam.ListUsersOutput, error)
|
||||
ListUsersRequest(*iam.ListUsersInput) (*request.Request, *iam.ListUsersOutput)
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -356,9 +356,8 @@ func (c *S3) CopyObjectRequest(input *CopyObjectInput) (req *request.Request, ou
|
|||
// use the s3:x-amz-metadata-directive condition key to enforce certain metadata
|
||||
// behavior when objects are uploaded. For more information, see Specifying
|
||||
// Conditions in a Policy (https://docs.aws.amazon.com/AmazonS3/latest/dev/amazon-s3-policy-keys.html)
|
||||
// in the Amazon S3 Developer Guide. For a complete list of Amazon S3-specific
|
||||
// condition keys, see Actions, Resources, and Condition Keys for Amazon S3
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html).
|
||||
// in the Amazon S3 User Guide. For a complete list of Amazon S3-specific condition
|
||||
// keys, see Actions, Resources, and Condition Keys for Amazon S3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html).
|
||||
//
|
||||
// x-amz-copy-source-if Headers
|
||||
//
|
||||
|
|
@ -422,7 +421,7 @@ func (c *S3) CopyObjectRequest(input *CopyObjectInput) (req *request.Request, ou
|
|||
// You can use the CopyObject action to change the storage class of an object
|
||||
// that is already stored in Amazon S3 using the StorageClass parameter. For
|
||||
// more information, see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html)
|
||||
// in the Amazon S3 Service Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Versioning
|
||||
//
|
||||
|
|
@ -535,7 +534,7 @@ func (c *S3) CreateBucketRequest(input *CreateBucketInput) (req *request.Request
|
|||
// become the bucket owner.
|
||||
//
|
||||
// Not every string is an acceptable bucket name. For information about bucket
|
||||
// naming restrictions, see Working with Amazon S3 buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html).
|
||||
// naming restrictions, see Bucket naming rules (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html).
|
||||
//
|
||||
// If you want to create an Amazon S3 on Outposts bucket, see Create Bucket
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html).
|
||||
|
|
@ -723,10 +722,11 @@ func (c *S3) CreateMultipartUploadRequest(input *CreateMultipartUploadInput) (re
|
|||
// by using CreateMultipartUpload.
|
||||
//
|
||||
// To perform a multipart upload with encryption using an AWS KMS CMK, the requester
|
||||
// must have permission to the kms:Encrypt, kms:Decrypt, kms:ReEncrypt*, kms:GenerateDataKey*,
|
||||
// and kms:DescribeKey actions on the key. These permissions are required because
|
||||
// Amazon S3 must decrypt and read data from the encrypted file parts before
|
||||
// it completes the multipart upload.
|
||||
// must have permission to the kms:Decrypt and kms:GenerateDataKey* actions
|
||||
// on the key. These permissions are required because Amazon S3 must decrypt
|
||||
// and read data from the encrypted file parts before it completes the multipart
|
||||
// upload. For more information, see Multipart upload API and permissions (https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// If your AWS Identity and Access Management (IAM) user or role is in the same
|
||||
// AWS account as the AWS KMS CMK, then you must have these permissions on the
|
||||
|
|
@ -1835,7 +1835,7 @@ func (c *S3) DeleteBucketReplicationRequest(input *DeleteBucketReplicationInput)
|
|||
// propagate.
|
||||
//
|
||||
// For information about replication configuration, see Replication (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// The following operations are related to DeleteBucketReplication:
|
||||
//
|
||||
|
|
@ -6497,12 +6497,13 @@ func (c *S3) ListObjectsV2Request(input *ListObjectsV2Input) (req *request.Reque
|
|||
|
||||
// ListObjectsV2 API operation for Amazon Simple Storage Service.
|
||||
//
|
||||
// Returns some or all (up to 1,000) of the objects in a bucket. You can use
|
||||
// the request parameters as selection criteria to return a subset of the objects
|
||||
// in a bucket. A 200 OK response can contain valid or invalid XML. Make sure
|
||||
// to design your application to parse the contents of the response and handle
|
||||
// it appropriately. Objects are returned sorted in an ascending order of the
|
||||
// respective key names in the list.
|
||||
// Returns some or all (up to 1,000) of the objects in a bucket with each request.
|
||||
// You can use the request parameters as selection criteria to return a subset
|
||||
// of the objects in a bucket. A 200 OK response can contain valid or invalid
|
||||
// XML. Make sure to design your application to parse the contents of the response
|
||||
// and handle it appropriately. Objects are returned sorted in an ascending
|
||||
// order of the respective key names in the list. For more information about
|
||||
// listing objects, see Listing object keys programmatically (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ListingKeysUsingAPIs.html)
|
||||
//
|
||||
// To use this operation, you must have READ access to the bucket.
|
||||
//
|
||||
|
|
@ -7816,7 +7817,7 @@ func (c *S3) PutBucketLifecycleConfigurationRequest(input *PutBucketLifecycleCon
|
|||
//
|
||||
// Creates a new lifecycle configuration for the bucket or replaces an existing
|
||||
// lifecycle configuration. For information about lifecycle configuration, see
|
||||
// Managing Access Permissions to Your Amazon S3 Resources (https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html).
|
||||
// Managing your storage lifecycle (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html).
|
||||
//
|
||||
// Bucket lifecycle configuration now supports specifying a lifecycle rule using
|
||||
// an object key name prefix, one or more object tags, or a combination of both.
|
||||
|
|
@ -8587,7 +8588,7 @@ func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req
|
|||
//
|
||||
// Creates a replication configuration or replaces an existing one. For more
|
||||
// information, see Replication (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// To perform this operation, the user or role performing the action must have
|
||||
// the iam:PassRole (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html)
|
||||
|
|
@ -8814,11 +8815,12 @@ func (c *S3) PutBucketTaggingRequest(input *PutBucketTaggingInput) (req *request
|
|||
// according to resources with the same tag key values. For example, you can
|
||||
// tag several resources with a specific application name, and then organize
|
||||
// your billing information to see the total cost of that application across
|
||||
// several services. For more information, see Cost Allocation and Tagging (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html).
|
||||
// several services. For more information, see Cost Allocation and Tagging (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)
|
||||
// and Using Cost Allocation in Amazon S3 Bucket Tags (https://docs.aws.amazon.com/AmazonS3/latest/dev/CostAllocTagging.html).
|
||||
//
|
||||
// Within a bucket, if you add a tag that has the same key as an existing tag,
|
||||
// the new value overwrites the old value. For more information, see Using Cost
|
||||
// Allocation in Amazon S3 Bucket Tags (https://docs.aws.amazon.com/AmazonS3/latest/dev/CostAllocTagging.html).
|
||||
// When this operation sets the tags for a bucket, it will overwrite any current
|
||||
// tags the bucket already has. You cannot use this operation to add tags to
|
||||
// an existing list of tags.
|
||||
//
|
||||
// To use this operation, you must have permissions to perform the s3:PutBucketTagging
|
||||
// action. The bucket owner has this permission by default and can grant this
|
||||
|
|
@ -9229,7 +9231,7 @@ func (c *S3) PutObjectRequest(input *PutObjectInput) (req *request.Request, outp
|
|||
// Depending on performance needs, you can specify a different Storage Class.
|
||||
// Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information,
|
||||
// see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html)
|
||||
// in the Amazon S3 Service Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Versioning
|
||||
//
|
||||
|
|
@ -9339,7 +9341,7 @@ func (c *S3) PutObjectAclRequest(input *PutObjectAclInput) (req *request.Request
|
|||
// have an existing application that updates a bucket ACL using the request
|
||||
// body, you can continue to use that approach. For more information, see Access
|
||||
// Control List (ACL) Overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access Permissions
|
||||
//
|
||||
|
|
@ -10997,7 +10999,7 @@ type AbortMultipartUploadInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -11025,7 +11027,7 @@ type AbortMultipartUploadInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Upload ID that identifies the multipart upload.
|
||||
|
|
@ -11242,7 +11244,7 @@ type AccessControlTranslation struct {
|
|||
|
||||
// Specifies the replica ownership. For default and valid values, see PUT bucket
|
||||
// replication (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html)
|
||||
// in the Amazon Simple Storage Service API Reference.
|
||||
// in the Amazon S3 API Reference.
|
||||
//
|
||||
// Owner is a required field
|
||||
Owner *string `type:"string" required:"true" enum:"OwnerOverride"`
|
||||
|
|
@ -11693,7 +11695,7 @@ type BucketLoggingStatus struct {
|
|||
// Describes where logs are stored and the prefix that Amazon S3 assigns to
|
||||
// all log object keys for a bucket. For more information, see PUT Bucket logging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html)
|
||||
// in the Amazon Simple Storage Service API Reference.
|
||||
// in the Amazon S3 API Reference.
|
||||
LoggingEnabled *LoggingEnabled `type:"structure"`
|
||||
}
|
||||
|
||||
|
|
@ -12168,7 +12170,7 @@ type CompleteMultipartUploadInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// ID for the initiated multipart upload.
|
||||
|
|
@ -12291,7 +12293,7 @@ type CompleteMultipartUploadOutput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -12577,7 +12579,7 @@ type CopyObjectInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -12735,7 +12737,7 @@ type CopyObjectInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
|
|
@ -12764,7 +12766,7 @@ type CopyObjectInput struct {
|
|||
// or using SigV4. For information about configuring using any of the officially
|
||||
// supported AWS SDKs and AWS CLI, see Specifying the Signature Version in Request
|
||||
// Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon
|
||||
|
|
@ -12776,7 +12778,7 @@ type CopyObjectInput struct {
|
|||
// Depending on performance needs, you can specify a different Storage Class.
|
||||
// Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information,
|
||||
// see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html)
|
||||
// in the Amazon S3 Service Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
|
||||
|
||||
// The tag-set for the object destination object this value must be used in
|
||||
|
|
@ -13358,7 +13360,10 @@ type CreateBucketInput struct {
|
|||
// Allows grantee to read the bucket ACL.
|
||||
GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
|
||||
|
||||
// Allows grantee to create, overwrite, and delete any object in the bucket.
|
||||
// Allows grantee to create new objects in the bucket.
|
||||
//
|
||||
// For the bucket and object owners of existing objects, also allows deletions
|
||||
// and overwrites of those objects.
|
||||
GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`
|
||||
|
||||
// Allows grantee to write the ACL for the applicable bucket.
|
||||
|
|
@ -13494,7 +13499,7 @@ type CreateMultipartUploadInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -13583,7 +13588,7 @@ type CreateMultipartUploadInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
|
|
@ -13612,7 +13617,7 @@ type CreateMultipartUploadInput struct {
|
|||
// KMS will fail if not made via SSL or using SigV4. For information about configuring
|
||||
// using any of the officially supported AWS SDKs and AWS CLI, see Specifying
|
||||
// the Signature Version in Request Authentication (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon
|
||||
|
|
@ -13624,7 +13629,7 @@ type CreateMultipartUploadInput struct {
|
|||
// Depending on performance needs, you can specify a different Storage Class.
|
||||
// Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information,
|
||||
// see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html)
|
||||
// in the Amazon S3 Service Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
|
||||
|
||||
// The tag-set for the object. The tag-set must be encoded as URL Query parameters.
|
||||
|
|
@ -13908,7 +13913,7 @@ type CreateMultipartUploadOutput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -15613,7 +15618,7 @@ type DeleteObjectInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -15651,7 +15656,7 @@ type DeleteObjectInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// VersionId used to reference a specific version of the object.
|
||||
|
|
@ -15819,7 +15824,7 @@ type DeleteObjectTaggingInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -15970,7 +15975,7 @@ type DeleteObjectsInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -16009,7 +16014,7 @@ type DeleteObjectsInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
}
|
||||
|
||||
|
|
@ -16333,7 +16338,7 @@ type Destination struct {
|
|||
// the destination bucket by specifying the AccessControlTranslation property,
|
||||
// this is the account ID of the destination bucket owner. For more information,
|
||||
// see Replication Additional Configuration: Changing the Replica Owner (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html)
|
||||
// in the Amazon Simple Storage Service Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
Account *string `type:"string"`
|
||||
|
||||
// The Amazon Resource Name (ARN) of the bucket where you want Amazon S3 to
|
||||
|
|
@ -16361,7 +16366,7 @@ type Destination struct {
|
|||
//
|
||||
// For valid values, see the StorageClass element of the PUT Bucket replication
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html)
|
||||
// action in the Amazon Simple Storage Service API Reference.
|
||||
// action in the Amazon S3 API Reference.
|
||||
StorageClass *string `type:"string" enum:"StorageClass"`
|
||||
}
|
||||
|
||||
|
|
@ -16468,8 +16473,8 @@ type Encryption struct {
|
|||
|
||||
// If the encryption type is aws:kms, this optional value specifies the ID of
|
||||
// the symmetric customer managed AWS KMS CMK to use for encryption of job results.
|
||||
// Amazon S3 only supports symmetric CMKs. For more information, see Using Symmetric
|
||||
// and Asymmetric Keys (https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)
|
||||
// Amazon S3 only supports symmetric CMKs. For more information, see Using symmetric
|
||||
// and asymmetric keys (https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)
|
||||
// in the AWS Key Management Service Developer Guide.
|
||||
KMSKeyId *string `type:"string" sensitive:"true"`
|
||||
}
|
||||
|
|
@ -16520,11 +16525,11 @@ func (s *Encryption) SetKMSKeyId(v string) *Encryption {
|
|||
type EncryptionConfiguration struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
// Specifies the ID (Key ARN or Alias ARN) of the customer managed customer
|
||||
// master key (CMK) stored in AWS Key Management Service (KMS) for the destination
|
||||
// bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only
|
||||
// supports symmetric customer managed CMKs. For more information, see Using
|
||||
// Symmetric and Asymmetric Keys (https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)
|
||||
// Specifies the ID (Key ARN or Alias ARN) of the customer managed AWS KMS key
|
||||
// stored in AWS Key Management Service (KMS) for the destination bucket. Amazon
|
||||
// S3 uses this key to encrypt replica objects. Amazon S3 only supports symmetric,
|
||||
// customer managed KMS keys. For more information, see Using symmetric and
|
||||
// asymmetric keys (https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)
|
||||
// in the AWS Key Management Service Developer Guide.
|
||||
ReplicaKmsKeyID *string `type:"string"`
|
||||
}
|
||||
|
|
@ -17035,7 +17040,7 @@ func (s *ErrorDocument) SetKey(v string) *ErrorDocument {
|
|||
|
||||
// Optional configuration to replicate existing source bucket objects. For more
|
||||
// information, see Replicating Existing Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-what-is-isnot-replicated.html#existing-object-replication)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
type ExistingObjectReplication struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
|
|
@ -18337,7 +18342,7 @@ type GetBucketLoggingOutput struct {
|
|||
// Describes where logs are stored and the prefix that Amazon S3 assigns to
|
||||
// all log object keys for a bucket. For more information, see PUT Bucket logging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html)
|
||||
// in the Amazon Simple Storage Service API Reference.
|
||||
// in the Amazon S3 API Reference.
|
||||
LoggingEnabled *LoggingEnabled `type:"structure"`
|
||||
}
|
||||
|
||||
|
|
@ -19490,7 +19495,7 @@ type GetObjectAclInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Bucket is a required field
|
||||
|
|
@ -19510,7 +19515,7 @@ type GetObjectAclInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// VersionId used to reference a specific version of the object.
|
||||
|
|
@ -19664,7 +19669,7 @@ type GetObjectInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -19720,7 +19725,7 @@ type GetObjectInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Sets the Cache-Control header of the response.
|
||||
|
|
@ -19964,7 +19969,7 @@ type GetObjectLegalHoldInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Bucket is a required field
|
||||
|
|
@ -19984,7 +19989,7 @@ type GetObjectLegalHoldInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// The version ID of the object whose Legal Hold status you want to retrieve.
|
||||
|
|
@ -20119,7 +20124,7 @@ type GetObjectLockConfigurationInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Bucket is a required field
|
||||
|
|
@ -20567,7 +20572,7 @@ type GetObjectRetentionInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Bucket is a required field
|
||||
|
|
@ -20587,7 +20592,7 @@ type GetObjectRetentionInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// The version ID for the object whose retention settings you want to retrieve.
|
||||
|
|
@ -20722,7 +20727,7 @@ type GetObjectTaggingInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -20750,7 +20755,7 @@ type GetObjectTaggingInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// The versionId of the object for which to get the tagging information.
|
||||
|
|
@ -20910,7 +20915,7 @@ type GetObjectTorrentInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
}
|
||||
|
||||
|
|
@ -21342,7 +21347,7 @@ type HeadBucketInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -21457,7 +21462,7 @@ type HeadObjectInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -21514,7 +21519,7 @@ type HeadObjectInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
|
|
@ -22417,7 +22422,7 @@ func (s *IntelligentTieringFilter) SetTag(v *Tag) *IntelligentTieringFilter {
|
|||
|
||||
// Specifies the inventory configuration for an Amazon S3 bucket. For more information,
|
||||
// see GET Bucket inventory (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html)
|
||||
// in the Amazon Simple Storage Service API Reference.
|
||||
// in the Amazon S3 API Reference.
|
||||
type InventoryConfiguration struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
|
|
@ -23987,7 +23992,7 @@ type ListMultipartUploadsInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -24627,7 +24632,7 @@ type ListObjectsInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -24921,7 +24926,7 @@ type ListObjectsV2Input struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -25157,7 +25162,7 @@ type ListObjectsV2Output struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -25273,7 +25278,7 @@ type ListPartsInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -25308,7 +25313,7 @@ type ListPartsInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Upload ID identifying the multipart upload whose parts are being listed.
|
||||
|
|
@ -25730,7 +25735,7 @@ func (s *Location) SetUserMetadata(v []*MetadataEntry) *Location {
|
|||
// Describes where logs are stored and the prefix that Amazon S3 assigns to
|
||||
// all log object keys for a bucket. For more information, see PUT Bucket logging
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html)
|
||||
// in the Amazon Simple Storage Service API Reference.
|
||||
// in the Amazon S3 API Reference.
|
||||
type LoggingEnabled struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
|
|
@ -25953,7 +25958,7 @@ func (s *MetricsAndOperator) SetTags(v []*Tag) *MetricsAndOperator {
|
|||
// the existing metrics configuration. If you don't include the elements you
|
||||
// want to keep, they are erased. For more information, see PUT Bucket metrics
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html)
|
||||
// in the Amazon Simple Storage Service API Reference.
|
||||
// in the Amazon S3 API Reference.
|
||||
type MetricsConfiguration struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
|
|
@ -26155,7 +26160,7 @@ type NoncurrentVersionExpiration struct {
|
|||
// perform the associated action. For information about the noncurrent days
|
||||
// calculations, see How Amazon S3 Calculates When an Object Became Noncurrent
|
||||
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations)
|
||||
// in the Amazon Simple Storage Service Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
NoncurrentDays *int64 `type:"integer"`
|
||||
}
|
||||
|
||||
|
|
@ -27336,7 +27341,10 @@ type PutBucketAclInput struct {
|
|||
// Allows grantee to read the bucket ACL.
|
||||
GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
|
||||
|
||||
// Allows grantee to create, overwrite, and delete any object in the bucket.
|
||||
// Allows grantee to create new objects in the bucket.
|
||||
//
|
||||
// For the bucket and object owners of existing objects, also allows deletions
|
||||
// and overwrites of those objects.
|
||||
GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`
|
||||
|
||||
// Allows grantee to write the ACL for the applicable bucket.
|
||||
|
|
@ -29693,7 +29701,7 @@ type PutObjectAclInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Bucket is a required field
|
||||
|
|
@ -29720,7 +29728,10 @@ type PutObjectAclInput struct {
|
|||
// This action is not supported by Amazon S3 on Outposts.
|
||||
GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
|
||||
|
||||
// Allows grantee to create, overwrite, and delete any object in the bucket.
|
||||
// Allows grantee to create new objects in the bucket.
|
||||
//
|
||||
// For the bucket and object owners of existing objects, also allows deletions
|
||||
// and overwrites of those objects.
|
||||
GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`
|
||||
|
||||
// Allows grantee to write the ACL for the applicable bucket.
|
||||
|
|
@ -29734,7 +29745,7 @@ type PutObjectAclInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -29752,7 +29763,7 @@ type PutObjectAclInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// VersionId used to reference a specific version of the object.
|
||||
|
|
@ -29944,7 +29955,7 @@ type PutObjectInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -30046,14 +30057,15 @@ type PutObjectInput struct {
|
|||
// The Object Lock mode that you want to apply to this object.
|
||||
ObjectLockMode *string `location:"header" locationName:"x-amz-object-lock-mode" type:"string" enum:"ObjectLockMode"`
|
||||
|
||||
// The date and time when you want this object's Object Lock to expire.
|
||||
// The date and time when you want this object's Object Lock to expire. Must
|
||||
// be formatted as a timestamp parameter.
|
||||
ObjectLockRetainUntilDate *time.Time `location:"header" locationName:"x-amz-object-lock-retain-until-date" type:"timestamp" timestampFormat:"iso8601"`
|
||||
|
||||
// Confirms that the requester knows that they will be charged for the request.
|
||||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
|
|
@ -30080,13 +30092,11 @@ type PutObjectInput struct {
|
|||
// If x-amz-server-side-encryption is present and has the value of aws:kms,
|
||||
// this header specifies the ID of the AWS Key Management Service (AWS KMS)
|
||||
// symmetrical customer managed customer master key (CMK) that was used for
|
||||
// the object.
|
||||
//
|
||||
// If the value of x-amz-server-side-encryption is aws:kms, this header specifies
|
||||
// the ID of the symmetric customer managed AWS KMS CMK that will be used for
|
||||
// the object. If you specify x-amz-server-side-encryption:aws:kms, but do not
|
||||
// providex-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the AWS
|
||||
// managed CMK in AWS to protect the data.
|
||||
// managed CMK in AWS to protect the data. If the KMS key does not exist in
|
||||
// the same account issuing the command, you must use the full ARN and not just
|
||||
// the ID.
|
||||
SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string" sensitive:"true"`
|
||||
|
||||
// The server-side encryption algorithm used when storing this object in Amazon
|
||||
|
|
@ -30098,7 +30108,7 @@ type PutObjectInput struct {
|
|||
// Depending on performance needs, you can specify a different Storage Class.
|
||||
// Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For more information,
|
||||
// see Storage Classes (https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html)
|
||||
// in the Amazon S3 Service Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
|
||||
|
||||
// The tag-set for the object. The tag-set must be encoded as URL Query parameters.
|
||||
|
|
@ -30401,7 +30411,7 @@ type PutObjectLegalHoldInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Bucket is a required field
|
||||
|
|
@ -30425,7 +30435,7 @@ type PutObjectLegalHoldInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// The version ID of the object that you want to place a Legal Hold on.
|
||||
|
|
@ -30578,7 +30588,7 @@ type PutObjectLockConfigurationInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// A token to allow Object Lock to be enabled for an existing bucket.
|
||||
|
|
@ -30831,7 +30841,7 @@ type PutObjectRetentionInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// Bucket is a required field
|
||||
|
|
@ -30855,7 +30865,7 @@ type PutObjectRetentionInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// The container element for the Object Retention configuration.
|
||||
|
|
@ -31007,7 +31017,7 @@ type PutObjectTaggingInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -31035,7 +31045,7 @@ type PutObjectTaggingInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Container for the TagSet and Tag elements
|
||||
|
|
@ -31752,7 +31762,7 @@ type ReplicationRule struct {
|
|||
|
||||
// Optional configuration to replicate existing source bucket objects. For more
|
||||
// information, see Replicating Existing Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-what-is-isnot-replicated.html#existing-object-replication)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
ExistingObjectReplication *ExistingObjectReplication `type:"structure"`
|
||||
|
||||
// A filter that identifies the subset of objects to which the replication rule
|
||||
|
|
@ -32195,7 +32205,7 @@ type RestoreObjectInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -32223,7 +32233,7 @@ type RestoreObjectInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Container for restore job parameters.
|
||||
|
|
@ -32540,8 +32550,8 @@ func (s *RoutingRule) SetRedirect(v *Redirect) *RoutingRule {
|
|||
|
||||
// Specifies lifecycle rules for an Amazon S3 bucket. For more information,
|
||||
// see Put Bucket Lifecycle Configuration (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlifecycle.html)
|
||||
// in the Amazon Simple Storage Service API Reference. For examples, see Put
|
||||
// Bucket Lifecycle Configuration Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html#API_PutBucketLifecycleConfiguration_Examples).
|
||||
// in the Amazon S3 API Reference. For examples, see Put Bucket Lifecycle Configuration
|
||||
// Examples (https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html#API_PutBucketLifecycleConfiguration_Examples).
|
||||
type Rule struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
|
|
@ -33287,17 +33297,17 @@ func (s *SelectParameters) SetOutputSerialization(v *OutputSerialization) *Selec
|
|||
// bucket. If a PUT Object request doesn't specify any server-side encryption,
|
||||
// this default encryption will be applied. For more information, see PUT Bucket
|
||||
// encryption (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html)
|
||||
// in the Amazon Simple Storage Service API Reference.
|
||||
// in the Amazon S3 API Reference.
|
||||
type ServerSideEncryptionByDefault struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
// AWS Key Management Service (KMS) customer master key ID to use for the default
|
||||
// AWS Key Management Service (KMS) customer AWS KMS key ID to use for the default
|
||||
// encryption. This parameter is allowed if and only if SSEAlgorithm is set
|
||||
// to aws:kms.
|
||||
//
|
||||
// You can specify the key ID or the Amazon Resource Name (ARN) of the CMK.
|
||||
// You can specify the key ID or the Amazon Resource Name (ARN) of the KMS key.
|
||||
// However, if you are using encryption with cross-account operations, you must
|
||||
// use a fully qualified CMK ARN. For more information, see Using encryption
|
||||
// use a fully qualified KMS key ARN. For more information, see Using encryption
|
||||
// for cross-account operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy).
|
||||
//
|
||||
// For example:
|
||||
|
|
@ -33306,8 +33316,8 @@ type ServerSideEncryptionByDefault struct {
|
|||
//
|
||||
// * Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
|
||||
//
|
||||
// Amazon S3 only supports symmetric CMKs and not asymmetric CMKs. For more
|
||||
// information, see Using Symmetric and Asymmetric Keys (https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)
|
||||
// Amazon S3 only supports symmetric KMS keys and not asymmetric KMS keys. For
|
||||
// more information, see Using symmetric and asymmetric keys (https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)
|
||||
// in the AWS Key Management Service Developer Guide.
|
||||
KMSMasterKeyID *string `type:"string" sensitive:"true"`
|
||||
|
||||
|
|
@ -33531,7 +33541,7 @@ type SseKmsEncryptedObjects struct {
|
|||
_ struct{} `type:"structure"`
|
||||
|
||||
// Specifies whether Amazon S3 replicates objects created with server-side encryption
|
||||
// using a customer master key (CMK) stored in AWS Key Management Service.
|
||||
// using an AWS KMS key stored in AWS Key Management Service.
|
||||
//
|
||||
// Status is a required field
|
||||
Status *string `type:"string" required:"true" enum:"SseKmsEncryptedObjectsStatus"`
|
||||
|
|
@ -34170,7 +34180,7 @@ type UploadPartCopyInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -34275,7 +34285,7 @@ type UploadPartCopyInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
|
|
@ -34612,7 +34622,7 @@ type UploadPartInput struct {
|
|||
// the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com.
|
||||
// When using this action with an access point through the AWS SDKs, you provide
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see Using Access Points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// When using this action with Amazon S3 on Outposts, you must direct requests
|
||||
|
|
@ -34655,7 +34665,7 @@ type UploadPartInput struct {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
|
||||
|
||||
// Specifies the algorithm to use to when encrypting the object (for example,
|
||||
|
|
@ -34919,7 +34929,7 @@ func (s *UploadPartOutput) SetServerSideEncryption(v string) *UploadPartOutput {
|
|||
|
||||
// Describes the versioning state of an Amazon S3 bucket. For more information,
|
||||
// see PUT Bucket versioning (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTVersioningStatus.html)
|
||||
// in the Amazon Simple Storage Service API Reference.
|
||||
// in the Amazon S3 API Reference.
|
||||
type VersioningConfiguration struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
|
|
@ -36028,6 +36038,9 @@ const (
|
|||
|
||||
// InventoryOptionalFieldIntelligentTieringAccessTier is a InventoryOptionalField enum value
|
||||
InventoryOptionalFieldIntelligentTieringAccessTier = "IntelligentTieringAccessTier"
|
||||
|
||||
// InventoryOptionalFieldBucketKeyStatus is a InventoryOptionalField enum value
|
||||
InventoryOptionalFieldBucketKeyStatus = "BucketKeyStatus"
|
||||
)
|
||||
|
||||
// InventoryOptionalField_Values returns all elements of the InventoryOptionalField enum
|
||||
|
|
@ -36044,6 +36057,7 @@ func InventoryOptionalField_Values() []string {
|
|||
InventoryOptionalFieldObjectLockMode,
|
||||
InventoryOptionalFieldObjectLockLegalHoldStatus,
|
||||
InventoryOptionalFieldIntelligentTieringAccessTier,
|
||||
InventoryOptionalFieldBucketKeyStatus,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -36477,7 +36491,7 @@ func RequestCharged_Values() []string {
|
|||
// Bucket owners need not specify this parameter in their requests. For information
|
||||
// about downloading objects from requester pays buckets, see Downloading Objects
|
||||
// in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html)
|
||||
// in the Amazon S3 Developer Guide.
|
||||
// in the Amazon S3 User Guide.
|
||||
const (
|
||||
// RequestPayerRequester is a RequestPayer enum value
|
||||
RequestPayerRequester = "requester"
|
||||
|
|
|
|||
|
|
@ -155,8 +155,9 @@ func endpointHandler(req *request.Request) {
|
|||
}
|
||||
case arn.OutpostAccessPointARN:
|
||||
// outposts does not support FIPS regions
|
||||
if resReq.ResourceConfiguredForFIPS() {
|
||||
req.Error = s3shared.NewInvalidARNWithFIPSError(resource, nil)
|
||||
if resReq.UseFIPS() {
|
||||
req.Error = s3shared.NewFIPSConfigurationError(resource, req.ClientInfo.PartitionID,
|
||||
aws.StringValue(req.Config.Region), nil)
|
||||
return
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -64,12 +64,12 @@ func (c *SQS) AddPermissionRequest(input *AddPermissionInput) (req *request.Requ
|
|||
// Only you, the owner of the queue, can grant or deny permissions to the queue.
|
||||
// For more information about these permissions, see Allow Developers to Write
|
||||
// Messages to a Shared Queue (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-writing-an-sqs-policy.html#write-messages-to-shared-queue)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// * AddPermission generates a policy for you. You can use SetQueueAttributes
|
||||
// to upload your policy. For more information, see Using Custom Policies
|
||||
// with the Amazon SQS Access Policy Language (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// * An Amazon SQS policy can have a maximum of 7 actions.
|
||||
//
|
||||
|
|
@ -87,7 +87,7 @@ func (c *SQS) AddPermissionRequest(input *AddPermissionInput) (req *request.Requ
|
|||
//
|
||||
// Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -174,7 +174,7 @@ func (c *SQS) ChangeMessageVisibilityRequest(input *ChangeMessageVisibilityInput
|
|||
// value. The default visibility timeout for a message is 30 seconds. The minimum
|
||||
// is 0 seconds. The maximum is 12 hours. For more information, see Visibility
|
||||
// Timeout (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// For example, you have a message with a visibility timeout of 5 minutes. After
|
||||
// 3 minutes, you call ChangeMessageVisibility with a timeout of 10 minutes.
|
||||
|
|
@ -415,7 +415,7 @@ func (c *SQS) CreateQueueRequest(input *CreateQueueInput) (req *request.Request,
|
|||
// create a new FIFO queue for your application or delete your existing standard
|
||||
// queue and recreate it as a FIFO queue. For more information, see Moving
|
||||
// From a Standard Queue to a FIFO Queue (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-moving)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// * If you don't provide a value for an attribute, the queue is created
|
||||
// with the default value for the attribute.
|
||||
|
|
@ -450,7 +450,7 @@ func (c *SQS) CreateQueueRequest(input *CreateQueueInput) (req *request.Request,
|
|||
//
|
||||
// Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -755,7 +755,7 @@ func (c *SQS) DeleteQueueRequest(input *DeleteQueueInput) (req *request.Request,
|
|||
//
|
||||
// Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -918,7 +918,7 @@ func (c *SQS) GetQueueUrlRequest(input *GetQueueUrlInput) (req *request.Request,
|
|||
// must grant you permission to access the queue. For more information about
|
||||
// shared queue access, see AddPermission or see Allow Developers to Write Messages
|
||||
// to a Shared Queue (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-writing-an-sqs-policy.html#write-messages-to-shared-queue)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -1016,7 +1016,7 @@ func (c *SQS) ListDeadLetterSourceQueuesRequest(input *ListDeadLetterSourceQueue
|
|||
//
|
||||
// For more information about using dead-letter queues, see Using Amazon SQS
|
||||
// Dead-Letter Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -1149,11 +1149,11 @@ func (c *SQS) ListQueueTagsRequest(input *ListQueueTagsInput) (req *request.Requ
|
|||
//
|
||||
// List all cost allocation tags added to the specified Amazon SQS queue. For
|
||||
// an overview, see Tagging Your Amazon SQS Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -1247,7 +1247,7 @@ func (c *SQS) ListQueuesRequest(input *ListQueuesInput) (req *request.Request, o
|
|||
//
|
||||
// Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -1473,7 +1473,7 @@ func (c *SQS) ReceiveMessageRequest(input *ReceiveMessageInput) (req *request.Re
|
|||
// Retrieves one or more messages (up to 10), from the specified queue. Using
|
||||
// the WaitTimeSeconds parameter enables long-poll support. For more information,
|
||||
// see Amazon SQS Long Polling (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-long-polling.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Short poll is the default behavior where a weighted random set of machines
|
||||
// is sampled on a ReceiveMessage call. Thus, only the messages on the sampled
|
||||
|
|
@ -1500,14 +1500,14 @@ func (c *SQS) ReceiveMessageRequest(input *ReceiveMessageInput) (req *request.Re
|
|||
//
|
||||
// The receipt handle is the identifier you must provide when deleting the message.
|
||||
// For more information, see Queue and Message Identifiers (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// You can provide the VisibilityTimeout parameter in your request. The parameter
|
||||
// is applied to the messages that Amazon SQS returns in the response. If you
|
||||
// don't include the parameter, the overall visibility timeout for the queue
|
||||
// is used for the returned messages. For more information, see Visibility Timeout
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// A message that isn't deleted or a message whose visibility isn't extended
|
||||
// before the visibility timeout expires counts as a failed receive. Depending
|
||||
|
|
@ -1606,7 +1606,7 @@ func (c *SQS) RemovePermissionRequest(input *RemovePermissionInput) (req *reques
|
|||
//
|
||||
// * Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// * To remove the ability to change queue permissions, you must deny permission
|
||||
// to the AddPermission, RemovePermission, and SetQueueAttributes actions
|
||||
|
|
@ -1910,7 +1910,7 @@ func (c *SQS) SetQueueAttributesRequest(input *SetQueueAttributesInput) (req *re
|
|||
//
|
||||
// * Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// * To remove the ability to change queue permissions, you must deny permission
|
||||
// to the AddPermission, RemovePermission, and SetQueueAttributes actions
|
||||
|
|
@ -1996,7 +1996,7 @@ func (c *SQS) TagQueueRequest(input *TagQueueInput) (req *request.Request, outpu
|
|||
//
|
||||
// Add cost allocation tags to the specified Amazon SQS queue. For an overview,
|
||||
// see Tagging Your Amazon SQS Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// When you use queue tags, keep the following guidelines in mind:
|
||||
//
|
||||
|
|
@ -2010,12 +2010,12 @@ func (c *SQS) TagQueueRequest(input *TagQueueInput) (req *request.Request, outpu
|
|||
// * A new tag with a key identical to that of an existing tag overwrites
|
||||
// the existing tag.
|
||||
//
|
||||
// For a full list of tag restrictions, see Limits Related to Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// For a full list of tag restrictions, see Quotas related to queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -2092,11 +2092,11 @@ func (c *SQS) UntagQueueRequest(input *UntagQueueInput) (req *request.Request, o
|
|||
//
|
||||
// Remove cost allocation tags from the specified Amazon SQS queue. For an overview,
|
||||
// see Tagging Your Amazon SQS Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
|
||||
// with awserr.Error's Code and Message methods to get detailed information about
|
||||
|
|
@ -2129,11 +2129,10 @@ func (c *SQS) UntagQueueWithContext(ctx aws.Context, input *UntagQueueInput, opt
|
|||
type AddPermissionInput struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
// The AWS account number of the principal (https://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P)
|
||||
// who is given permission. The principal must have an AWS account, but does
|
||||
// not need to be signed up for Amazon SQS. For information about locating the
|
||||
// AWS account identification, see Your AWS Identifiers (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-making-api-requests.html#sqs-api-request-authentication)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// The account numbers of the principals (https://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P)
|
||||
// who are to receive permission. For information about locating the account
|
||||
// identification, see Your Amazon Web Services Identifiers (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-making-api-requests.html#sqs-api-request-authentication)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// AWSAccountIds is a required field
|
||||
AWSAccountIds []*string `locationNameList:"AWSAccountId" type:"list" flattened:"true" required:"true"`
|
||||
|
|
@ -2143,7 +2142,7 @@ type AddPermissionInput struct {
|
|||
//
|
||||
// For more information about these actions, see Overview of Managing Access
|
||||
// Permissions to Your Amazon Simple Queue Service Resource (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-overview-of-managing-access.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Specifying SendMessage, DeleteMessage, or ChangeMessageVisibility for ActionName.n
|
||||
// also grants permissions for the corresponding batch versions of those actions:
|
||||
|
|
@ -2607,8 +2606,9 @@ type CreateQueueInput struct {
|
|||
// Amazon SQS retains a message. Valid values: An integer from 60 seconds
|
||||
// (1 minute) to 1,209,600 seconds (14 days). Default: 345,600 (4 days).
|
||||
//
|
||||
// * Policy – The queue's policy. A valid AWS policy. For more information
|
||||
// about policy structure, see Overview of AWS IAM Policies (https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html)
|
||||
// * Policy – The queue's policy. A valid Amazon Web Services policy. For
|
||||
// more information about policy structure, see Overview of Amazon Web Services
|
||||
// IAM Policies (https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html)
|
||||
// in the Amazon IAM User Guide.
|
||||
//
|
||||
// * ReceiveMessageWaitTimeSeconds – The length of time, in seconds, for
|
||||
|
|
@ -2619,9 +2619,9 @@ type CreateQueueInput struct {
|
|||
// queue functionality of the source queue as a JSON object. For more information
|
||||
// about the redrive policy and dead-letter queues, see Using Amazon SQS
|
||||
// Dead-Letter Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide. deadLetterTargetArn
|
||||
// – The Amazon Resource Name (ARN) of the dead-letter queue to which Amazon
|
||||
// SQS moves messages after the value of maxReceiveCount is exceeded. maxReceiveCount
|
||||
// in the Amazon SQS Developer Guide. deadLetterTargetArn – The Amazon
|
||||
// Resource Name (ARN) of the dead-letter queue to which Amazon SQS moves
|
||||
// messages after the value of maxReceiveCount is exceeded. maxReceiveCount
|
||||
// – The number of times a message is delivered to the source queue before
|
||||
// being moved to the dead-letter queue. When the ReceiveCount for a message
|
||||
// exceeds the maxReceiveCount for a queue, Amazon SQS moves the message
|
||||
|
|
@ -2633,25 +2633,26 @@ type CreateQueueInput struct {
|
|||
// Valid values: An integer from 0 to 43,200 (12 hours). Default: 30. For
|
||||
// more information about the visibility timeout, see Visibility Timeout
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// The following attributes apply only to server-side-encryption (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html):
|
||||
//
|
||||
// * KmsMasterKeyId – The ID of an AWS-managed customer master key (CMK)
|
||||
// for Amazon SQS or a custom CMK. For more information, see Key Terms (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms).
|
||||
// While the alias of the AWS-managed CMK for Amazon SQS is always alias/aws/sqs,
|
||||
// the alias of a custom CMK can, for example, be alias/MyAlias . For more
|
||||
// examples, see KeyId (https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters)
|
||||
// in the AWS Key Management Service API Reference.
|
||||
// * KmsMasterKeyId – The ID of an Amazon Web Services managed customer
|
||||
// master key (CMK) for Amazon SQS or a custom CMK. For more information,
|
||||
// see Key Terms (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms).
|
||||
// While the alias of the Amazon Web Services managed CMK for Amazon SQS
|
||||
// is always alias/aws/sqs, the alias of a custom CMK can, for example, be
|
||||
// alias/MyAlias . For more examples, see KeyId (https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters)
|
||||
// in the Key Management Service API Reference.
|
||||
//
|
||||
// * KmsDataKeyReusePeriodSeconds – The length of time, in seconds, for
|
||||
// which Amazon SQS can reuse a data key (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys)
|
||||
// to encrypt or decrypt messages before calling AWS KMS again. An integer
|
||||
// representing seconds, between 60 seconds (1 minute) and 86,400 seconds
|
||||
// (24 hours). Default: 300 (5 minutes). A shorter time period provides better
|
||||
// security but results in more calls to KMS which might incur charges after
|
||||
// Free Tier. For more information, see How Does the Data Key Reuse Period
|
||||
// Work? (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work).
|
||||
// to encrypt or decrypt messages before calling KMS again. An integer representing
|
||||
// seconds, between 60 seconds (1 minute) and 86,400 seconds (24 hours).
|
||||
// Default: 300 (5 minutes). A shorter time period provides better security
|
||||
// but results in more calls to KMS which might incur charges after Free
|
||||
// Tier. For more information, see How Does the Data Key Reuse Period Work?
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work).
|
||||
//
|
||||
// The following attributes apply only to FIFO (first-in-first-out) queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html):
|
||||
//
|
||||
|
|
@ -2660,17 +2661,17 @@ type CreateQueueInput struct {
|
|||
// a standard queue. You can provide this attribute only during queue creation.
|
||||
// You can't change it for an existing queue. When you set this attribute,
|
||||
// you must also provide the MessageGroupId for your messages explicitly.
|
||||
// For more information, see FIFO Queue Logic (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// For more information, see FIFO queue logic (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// * ContentBasedDeduplication – Enables content-based deduplication. Valid
|
||||
// values are true and false. For more information, see Exactly-Once Processing
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing)
|
||||
// in the Amazon Simple Queue Service Developer Guide. Note the following:
|
||||
// Every message must have a unique MessageDeduplicationId. You may provide
|
||||
// a MessageDeduplicationId explicitly. If you aren't able to provide a MessageDeduplicationId
|
||||
// and you enable ContentBasedDeduplication for your queue, Amazon SQS uses
|
||||
// a SHA-256 hash to generate the MessageDeduplicationId using the body of
|
||||
// values are true and false. For more information, see Exactly-once processing
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html)
|
||||
// in the Amazon SQS Developer Guide. Note the following: Every message must
|
||||
// have a unique MessageDeduplicationId. You may provide a MessageDeduplicationId
|
||||
// explicitly. If you aren't able to provide a MessageDeduplicationId and
|
||||
// you enable ContentBasedDeduplication for your queue, Amazon SQS uses a
|
||||
// SHA-256 hash to generate the MessageDeduplicationId using the body of
|
||||
// the message (but not the attributes of the message). If you don't provide
|
||||
// a MessageDeduplicationId and the queue doesn't have ContentBasedDeduplication
|
||||
// set, the action fails with an error. If the queue has ContentBasedDeduplication
|
||||
|
|
@ -2682,15 +2683,7 @@ type CreateQueueInput struct {
|
|||
// as the one generated for the first MessageDeduplicationId, the two messages
|
||||
// are treated as duplicates and only one copy of the message is delivered.
|
||||
//
|
||||
// Preview: High throughput for FIFO queues
|
||||
//
|
||||
// High throughput for Amazon SQS FIFO queues is in preview release and is subject
|
||||
// to change. This feature provides a high number of transactions per second
|
||||
// (TPS) for messages in FIFO queues. For information on throughput quotas,
|
||||
// see Quotas related to messages (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
//
|
||||
// This preview includes two new attributes:
|
||||
// The following attributes apply only to high throughput for FIFO queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html):
|
||||
//
|
||||
// * DeduplicationScope – Specifies whether message deduplication occurs
|
||||
// at the message group or queue level. Valid values are messageGroup and
|
||||
|
|
@ -2708,22 +2701,11 @@ type CreateQueueInput struct {
|
|||
// * Set FifoThroughputLimit to perMessageGroupId.
|
||||
//
|
||||
// If you set these attributes to anything other than the values shown for enabling
|
||||
// high throughput, standard throughput is in effect and deduplication occurs
|
||||
// high throughput, normal throughput is in effect and deduplication occurs
|
||||
// as specified.
|
||||
//
|
||||
// This preview is available in the following AWS Regions:
|
||||
//
|
||||
// * US East (Ohio); us-east-2
|
||||
//
|
||||
// * US East (N. Virginia); us-east-1
|
||||
//
|
||||
// * US West (Oregon); us-west-2
|
||||
//
|
||||
// * Europe (Ireland); eu-west-1
|
||||
//
|
||||
// For more information about high throughput for FIFO queues, see Preview:
|
||||
// High throughput for FIFO queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// For information on throughput quotas, see Quotas related to messages (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"`
|
||||
|
||||
// The name of the new queue. The following limits apply to this name:
|
||||
|
|
@ -2742,7 +2724,7 @@ type CreateQueueInput struct {
|
|||
|
||||
// Add cost allocation tags to the specified Amazon SQS queue. For an overview,
|
||||
// see Tagging Your Amazon SQS Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// When you use queue tags, keep the following guidelines in mind:
|
||||
//
|
||||
|
|
@ -2756,15 +2738,15 @@ type CreateQueueInput struct {
|
|||
// * A new tag with a key identical to that of an existing tag overwrites
|
||||
// the existing tag.
|
||||
//
|
||||
// For a full list of tag restrictions, see Limits Related to Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// For a full list of tag restrictions, see Quotas related to queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// To be able to tag a queue on creation, you must have the sqs:CreateQueue
|
||||
// and sqs:TagQueue permissions.
|
||||
//
|
||||
// Cross-account permissions don't apply to this action. For more information,
|
||||
// see Grant cross-account permissions to a role and a user name (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
Tags map[string]*string `locationName:"Tag" locationNameKey:"Key" locationNameValue:"Value" type:"map" flattened:"true"`
|
||||
}
|
||||
|
||||
|
|
@ -3148,6 +3130,9 @@ type GetQueueAttributesInput struct {
|
|||
|
||||
// A list of attributes for which to retrieve information.
|
||||
//
|
||||
// The AttributeName.N parameter is optional, but if you don't specify values
|
||||
// for this parameter, the request returns empty results.
|
||||
//
|
||||
// In the future, new attributes might be added. If you write code that calls
|
||||
// this action, we recommend that you structure your code so that it can handle
|
||||
// new attributes gracefully.
|
||||
|
|
@ -3199,9 +3184,9 @@ type GetQueueAttributesInput struct {
|
|||
// queue functionality of the source queue as a JSON object. For more information
|
||||
// about the redrive policy and dead-letter queues, see Using Amazon SQS
|
||||
// Dead-Letter Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide. deadLetterTargetArn
|
||||
// – The Amazon Resource Name (ARN) of the dead-letter queue to which Amazon
|
||||
// SQS moves messages after the value of maxReceiveCount is exceeded. maxReceiveCount
|
||||
// in the Amazon SQS Developer Guide. deadLetterTargetArn – The Amazon
|
||||
// Resource Name (ARN) of the dead-letter queue to which Amazon SQS moves
|
||||
// messages after the value of maxReceiveCount is exceeded. maxReceiveCount
|
||||
// – The number of times a message is delivered to the source queue before
|
||||
// being moved to the dead-letter queue. When the ReceiveCount for a message
|
||||
// exceeds the maxReceiveCount for a queue, Amazon SQS moves the message
|
||||
|
|
@ -3210,41 +3195,33 @@ type GetQueueAttributesInput struct {
|
|||
// * VisibilityTimeout – Returns the visibility timeout for the queue.
|
||||
// For more information about the visibility timeout, see Visibility Timeout
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// The following attributes apply only to server-side-encryption (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html):
|
||||
//
|
||||
// * KmsMasterKeyId – Returns the ID of an AWS-managed customer master
|
||||
// key (CMK) for Amazon SQS or a custom CMK. For more information, see Key
|
||||
// Terms (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms).
|
||||
// * KmsMasterKeyId – Returns the ID of an Amazon Web Services managed
|
||||
// customer master key (CMK) for Amazon SQS or a custom CMK. For more information,
|
||||
// see Key Terms (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms).
|
||||
//
|
||||
// * KmsDataKeyReusePeriodSeconds – Returns the length of time, in seconds,
|
||||
// for which Amazon SQS can reuse a data key to encrypt or decrypt messages
|
||||
// before calling AWS KMS again. For more information, see How Does the Data
|
||||
// before calling KMS again. For more information, see How Does the Data
|
||||
// Key Reuse Period Work? (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work).
|
||||
//
|
||||
// The following attributes apply only to FIFO (first-in-first-out) queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html):
|
||||
//
|
||||
// * FifoQueue – Returns information about whether the queue is FIFO. For
|
||||
// more information, see FIFO Queue Logic (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic)
|
||||
// in the Amazon Simple Queue Service Developer Guide. To determine whether
|
||||
// a queue is FIFO (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html),
|
||||
// more information, see FIFO queue logic (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html)
|
||||
// in the Amazon SQS Developer Guide. To determine whether a queue is FIFO
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html),
|
||||
// you can check whether QueueName ends with the .fifo suffix.
|
||||
//
|
||||
// * ContentBasedDeduplication – Returns whether content-based deduplication
|
||||
// is enabled for the queue. For more information, see Exactly-Once Processing
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// is enabled for the queue. For more information, see Exactly-once processing
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Preview: High throughput for FIFO queues
|
||||
//
|
||||
// High throughput for Amazon SQS FIFO queues is in preview release and is subject
|
||||
// to change. This feature provides a high number of transactions per second
|
||||
// (TPS) for messages in FIFO queues. For information on throughput quotas,
|
||||
// see Quotas related to messages (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
//
|
||||
// This preview includes two new attributes:
|
||||
// The following attributes apply only to high throughput for FIFO queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html):
|
||||
//
|
||||
// * DeduplicationScope – Specifies whether message deduplication occurs
|
||||
// at the message group or queue level. Valid values are messageGroup and
|
||||
|
|
@ -3262,22 +3239,11 @@ type GetQueueAttributesInput struct {
|
|||
// * Set FifoThroughputLimit to perMessageGroupId.
|
||||
//
|
||||
// If you set these attributes to anything other than the values shown for enabling
|
||||
// high throughput, standard throughput is in effect and deduplication occurs
|
||||
// high throughput, normal throughput is in effect and deduplication occurs
|
||||
// as specified.
|
||||
//
|
||||
// This preview is available in the following AWS Regions:
|
||||
//
|
||||
// * US East (Ohio); us-east-2
|
||||
//
|
||||
// * US East (N. Virginia); us-east-1
|
||||
//
|
||||
// * US West (Oregon); us-west-2
|
||||
//
|
||||
// * Europe (Ireland); eu-west-1
|
||||
//
|
||||
// For more information about high throughput for FIFO queues, see Preview:
|
||||
// High throughput for FIFO queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// For information on throughput quotas, see Quotas related to messages (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
AttributeNames []*string `locationNameList:"AttributeName" type:"list" flattened:"true"`
|
||||
|
||||
// The URL of the Amazon SQS queue whose attribute information is retrieved.
|
||||
|
|
@ -3358,7 +3324,7 @@ type GetQueueUrlInput struct {
|
|||
// QueueName is a required field
|
||||
QueueName *string `type:"string" required:"true"`
|
||||
|
||||
// The AWS account ID of the account that created the queue.
|
||||
// The account ID of the account that created the queue.
|
||||
QueueOwnerAWSAccountId *string `type:"string"`
|
||||
}
|
||||
|
||||
|
|
@ -3398,7 +3364,7 @@ func (s *GetQueueUrlInput) SetQueueOwnerAWSAccountId(v string) *GetQueueUrlInput
|
|||
}
|
||||
|
||||
// For more information, see Interpreting Responses (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-api-responses.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
type GetQueueUrlOutput struct {
|
||||
_ struct{} `type:"structure"`
|
||||
|
||||
|
|
@ -3700,12 +3666,12 @@ type Message struct {
|
|||
MD5OfMessageAttributes *string `type:"string"`
|
||||
|
||||
// Each message attribute consists of a Name, Type, and Value. For more information,
|
||||
// see Amazon SQS Message Attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// see Amazon SQS message attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
MessageAttributes map[string]*MessageAttributeValue `locationName:"MessageAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"`
|
||||
|
||||
// A unique identifier for the message. A MessageIdis considered unique across
|
||||
// all AWS accounts for an extended period of time.
|
||||
// all accounts for an extended period of time.
|
||||
MessageId *string `type:"string"`
|
||||
|
||||
// An identifier associated with the act of receiving the message. A new receipt
|
||||
|
|
@ -3790,7 +3756,7 @@ type MessageAttributeValue struct {
|
|||
//
|
||||
// You can also append custom labels. For more information, see Amazon SQS Message
|
||||
// Attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// DataType is a required field
|
||||
DataType *string `type:"string" required:"true"`
|
||||
|
|
@ -3878,7 +3844,7 @@ type MessageSystemAttributeValue struct {
|
|||
//
|
||||
// You can also append custom labels. For more information, see Amazon SQS Message
|
||||
// Attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// DataType is a required field
|
||||
DataType *string `type:"string" required:"true"`
|
||||
|
|
@ -4013,7 +3979,7 @@ type ReceiveMessageInput struct {
|
|||
// * ApproximateReceiveCount – Returns the number of times a message has
|
||||
// been received across all queues but not deleted.
|
||||
//
|
||||
// * AWSTraceHeader – Returns the AWS X-Ray trace header string.
|
||||
// * AWSTraceHeader – Returns the X-Ray trace header string.
|
||||
//
|
||||
// * SenderId For an IAM user, returns the IAM user ID, for example ABCDEFGHI1JKLMNOPQ23R.
|
||||
// For an IAM role, returns the IAM role ID, for example ABCDE1F2GH3I4JK5LMNOP:i-a123b456.
|
||||
|
|
@ -4090,15 +4056,14 @@ type ReceiveMessageInput struct {
|
|||
// return the same messages and receipt handles. If a retry occurs within
|
||||
// the deduplication interval, it resets the visibility timeout. For more
|
||||
// information, see Visibility Timeout (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide. If a caller of the
|
||||
// ReceiveMessage action still processes messages when the visibility timeout
|
||||
// expires and messages become visible, another worker consuming from the
|
||||
// same queue can receive the same messages and therefore process duplicates.
|
||||
// Also, if a consumer whose message processing time is longer than the visibility
|
||||
// timeout tries to delete the processed messages, the action fails with
|
||||
// an error. To mitigate this effect, ensure that your application observes
|
||||
// a safe threshold before the visibility timeout expires and extend the
|
||||
// visibility timeout as necessary.
|
||||
// in the Amazon SQS Developer Guide. If a caller of the ReceiveMessage action
|
||||
// still processes messages when the visibility timeout expires and messages
|
||||
// become visible, another worker consuming from the same queue can receive
|
||||
// the same messages and therefore process duplicates. Also, if a consumer
|
||||
// whose message processing time is longer than the visibility timeout tries
|
||||
// to delete the processed messages, the action fails with an error. To mitigate
|
||||
// this effect, ensure that your application observes a safe threshold before
|
||||
// the visibility timeout expires and extend the visibility timeout as necessary.
|
||||
//
|
||||
// * While messages with a particular MessageGroupId are invisible, no more
|
||||
// messages belonging to the same MessageGroupId are returned until the visibility
|
||||
|
|
@ -4114,7 +4079,7 @@ type ReceiveMessageInput struct {
|
|||
//
|
||||
// For best practices of using ReceiveRequestAttemptId, see Using the ReceiveRequestAttemptId
|
||||
// Request Parameter (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-receiverequestattemptid-request-parameter.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
ReceiveRequestAttemptId *string `type:"string"`
|
||||
|
||||
// The duration (in seconds) that the received messages are hidden from subsequent
|
||||
|
|
@ -4421,8 +4386,8 @@ type SendMessageBatchRequestEntry struct {
|
|||
Id *string `type:"string" required:"true"`
|
||||
|
||||
// Each message attribute consists of a Name, Type, and Value. For more information,
|
||||
// see Amazon SQS Message Attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// see Amazon SQS message attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
MessageAttributes map[string]*MessageAttributeValue `locationName:"MessageAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"`
|
||||
|
||||
// The body of the message.
|
||||
|
|
@ -4435,8 +4400,8 @@ type SendMessageBatchRequestEntry struct {
|
|||
// The token used for deduplication of messages within a 5-minute minimum deduplication
|
||||
// interval. If a message with a particular MessageDeduplicationId is sent successfully,
|
||||
// subsequent messages with the same MessageDeduplicationId are accepted successfully
|
||||
// but aren't delivered. For more information, see Exactly-Once Processing (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// but aren't delivered. For more information, see Exactly-once processing (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// * Every message must have a unique MessageDeduplicationId, You may provide
|
||||
// a MessageDeduplicationId explicitly. If you aren't able to provide a MessageDeduplicationId
|
||||
|
|
@ -4471,7 +4436,7 @@ type SendMessageBatchRequestEntry struct {
|
|||
//
|
||||
// For best practices of using MessageDeduplicationId, see Using the MessageDeduplicationId
|
||||
// Property (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
MessageDeduplicationId *string `type:"string"`
|
||||
|
||||
// This parameter applies only to FIFO (first-in-first-out) queues.
|
||||
|
|
@ -4496,7 +4461,7 @@ type SendMessageBatchRequestEntry struct {
|
|||
//
|
||||
// For best practices of using MessageGroupId, see Using the MessageGroupId
|
||||
// Property (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// MessageGroupId is required for FIFO queues. You can't use it for Standard
|
||||
// queues.
|
||||
|
|
@ -4506,8 +4471,8 @@ type SendMessageBatchRequestEntry struct {
|
|||
// of a Name, Type, and Value.
|
||||
//
|
||||
// * Currently, the only supported message system attribute is AWSTraceHeader.
|
||||
// Its type must be String and its value must be a correctly formatted AWS
|
||||
// X-Ray trace header string.
|
||||
// Its type must be String and its value must be a correctly formatted X-Ray
|
||||
// trace header string.
|
||||
//
|
||||
// * The size of a message system attribute doesn't count towards the total
|
||||
// size of a message.
|
||||
|
|
@ -4704,8 +4669,8 @@ type SendMessageInput struct {
|
|||
DelaySeconds *int64 `type:"integer"`
|
||||
|
||||
// Each message attribute consists of a Name, Type, and Value. For more information,
|
||||
// see Amazon SQS Message Attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// see Amazon SQS message attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
MessageAttributes map[string]*MessageAttributeValue `locationName:"MessageAttribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true"`
|
||||
|
||||
// The message to send. The minimum size is one character. The maximum size
|
||||
|
|
@ -4727,9 +4692,9 @@ type SendMessageInput struct {
|
|||
// The token used for deduplication of sent messages. If a message with a particular
|
||||
// MessageDeduplicationId is sent successfully, any messages sent with the same
|
||||
// MessageDeduplicationId are accepted successfully but aren't delivered during
|
||||
// the 5-minute deduplication interval. For more information, see Exactly-Once
|
||||
// Processing (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// the 5-minute deduplication interval. For more information, see Exactly-once
|
||||
// processing (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// * Every message must have a unique MessageDeduplicationId, You may provide
|
||||
// a MessageDeduplicationId explicitly. If you aren't able to provide a MessageDeduplicationId
|
||||
|
|
@ -4764,7 +4729,7 @@ type SendMessageInput struct {
|
|||
//
|
||||
// For best practices of using MessageDeduplicationId, see Using the MessageDeduplicationId
|
||||
// Property (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
MessageDeduplicationId *string `type:"string"`
|
||||
|
||||
// This parameter applies only to FIFO (first-in-first-out) queues.
|
||||
|
|
@ -4789,7 +4754,7 @@ type SendMessageInput struct {
|
|||
//
|
||||
// For best practices of using MessageGroupId, see Using the MessageGroupId
|
||||
// Property (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// MessageGroupId is required for FIFO queues. You can't use it for Standard
|
||||
// queues.
|
||||
|
|
@ -4799,8 +4764,8 @@ type SendMessageInput struct {
|
|||
// of a Name, Type, and Value.
|
||||
//
|
||||
// * Currently, the only supported message system attribute is AWSTraceHeader.
|
||||
// Its type must be String and its value must be a correctly formatted AWS
|
||||
// X-Ray trace header string.
|
||||
// Its type must be String and its value must be a correctly formatted X-Ray
|
||||
// trace header string.
|
||||
//
|
||||
// * The size of a message system attribute doesn't count towards the total
|
||||
// size of a message.
|
||||
|
|
@ -4925,7 +4890,7 @@ type SendMessageOutput struct {
|
|||
|
||||
// An attribute containing the MessageId of the message sent to the queue. For
|
||||
// more information, see Queue and Message Identifiers (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
MessageId *string `type:"string"`
|
||||
|
||||
// This parameter applies only to FIFO (first-in-first-out) queues.
|
||||
|
|
@ -4997,9 +4962,10 @@ type SetQueueAttributesInput struct {
|
|||
// Amazon SQS retains a message. Valid values: An integer representing seconds,
|
||||
// from 60 (1 minute) to 1,209,600 (14 days). Default: 345,600 (4 days).
|
||||
//
|
||||
// * Policy – The queue's policy. A valid AWS policy. For more information
|
||||
// about policy structure, see Overview of AWS IAM Policies (https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html)
|
||||
// in the Amazon IAM User Guide.
|
||||
// * Policy – The queue's policy. A valid Amazon Web Services policy. For
|
||||
// more information about policy structure, see Overview of Amazon Web Services
|
||||
// IAM Policies (https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html)
|
||||
// in the Identity and Access Management User Guide.
|
||||
//
|
||||
// * ReceiveMessageWaitTimeSeconds – The length of time, in seconds, for
|
||||
// which a ReceiveMessage action waits for a message to arrive. Valid values:
|
||||
|
|
@ -5009,9 +4975,9 @@ type SetQueueAttributesInput struct {
|
|||
// queue functionality of the source queue as a JSON object. For more information
|
||||
// about the redrive policy and dead-letter queues, see Using Amazon SQS
|
||||
// Dead-Letter Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide. deadLetterTargetArn
|
||||
// – The Amazon Resource Name (ARN) of the dead-letter queue to which Amazon
|
||||
// SQS moves messages after the value of maxReceiveCount is exceeded. maxReceiveCount
|
||||
// in the Amazon SQS Developer Guide. deadLetterTargetArn – The Amazon
|
||||
// Resource Name (ARN) of the dead-letter queue to which Amazon SQS moves
|
||||
// messages after the value of maxReceiveCount is exceeded. maxReceiveCount
|
||||
// – The number of times a message is delivered to the source queue before
|
||||
// being moved to the dead-letter queue. When the ReceiveCount for a message
|
||||
// exceeds the maxReceiveCount for a queue, Amazon SQS moves the message
|
||||
|
|
@ -5023,36 +4989,37 @@ type SetQueueAttributesInput struct {
|
|||
// Valid values: An integer from 0 to 43,200 (12 hours). Default: 30. For
|
||||
// more information about the visibility timeout, see Visibility Timeout
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// The following attributes apply only to server-side-encryption (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html):
|
||||
//
|
||||
// * KmsMasterKeyId – The ID of an AWS-managed customer master key (CMK)
|
||||
// for Amazon SQS or a custom CMK. For more information, see Key Terms (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms).
|
||||
// * KmsMasterKeyId – The ID of an Amazon Web Services managed customer
|
||||
// master key (CMK) for Amazon SQS or a custom CMK. For more information,
|
||||
// see Key Terms (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms).
|
||||
// While the alias of the AWS-managed CMK for Amazon SQS is always alias/aws/sqs,
|
||||
// the alias of a custom CMK can, for example, be alias/MyAlias . For more
|
||||
// examples, see KeyId (https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters)
|
||||
// in the AWS Key Management Service API Reference.
|
||||
// in the Key Management Service API Reference.
|
||||
//
|
||||
// * KmsDataKeyReusePeriodSeconds – The length of time, in seconds, for
|
||||
// which Amazon SQS can reuse a data key (https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys)
|
||||
// to encrypt or decrypt messages before calling AWS KMS again. An integer
|
||||
// representing seconds, between 60 seconds (1 minute) and 86,400 seconds
|
||||
// (24 hours). Default: 300 (5 minutes). A shorter time period provides better
|
||||
// security but results in more calls to KMS which might incur charges after
|
||||
// Free Tier. For more information, see How Does the Data Key Reuse Period
|
||||
// Work? (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work).
|
||||
// to encrypt or decrypt messages before calling KMS again. An integer representing
|
||||
// seconds, between 60 seconds (1 minute) and 86,400 seconds (24 hours).
|
||||
// Default: 300 (5 minutes). A shorter time period provides better security
|
||||
// but results in more calls to KMS which might incur charges after Free
|
||||
// Tier. For more information, see How Does the Data Key Reuse Period Work?
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work).
|
||||
//
|
||||
// The following attribute applies only to FIFO (first-in-first-out) queues
|
||||
// (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html):
|
||||
//
|
||||
// * ContentBasedDeduplication – Enables content-based deduplication. For
|
||||
// more information, see Exactly-Once Processing (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing)
|
||||
// in the Amazon Simple Queue Service Developer Guide. Note the following:
|
||||
// Every message must have a unique MessageDeduplicationId. You may provide
|
||||
// a MessageDeduplicationId explicitly. If you aren't able to provide a MessageDeduplicationId
|
||||
// and you enable ContentBasedDeduplication for your queue, Amazon SQS uses
|
||||
// a SHA-256 hash to generate the MessageDeduplicationId using the body of
|
||||
// more information, see Exactly-once processing (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html)
|
||||
// in the Amazon SQS Developer Guide. Note the following: Every message must
|
||||
// have a unique MessageDeduplicationId. You may provide a MessageDeduplicationId
|
||||
// explicitly. If you aren't able to provide a MessageDeduplicationId and
|
||||
// you enable ContentBasedDeduplication for your queue, Amazon SQS uses a
|
||||
// SHA-256 hash to generate the MessageDeduplicationId using the body of
|
||||
// the message (but not the attributes of the message). If you don't provide
|
||||
// a MessageDeduplicationId and the queue doesn't have ContentBasedDeduplication
|
||||
// set, the action fails with an error. If the queue has ContentBasedDeduplication
|
||||
|
|
@ -5064,15 +5031,7 @@ type SetQueueAttributesInput struct {
|
|||
// as the one generated for the first MessageDeduplicationId, the two messages
|
||||
// are treated as duplicates and only one copy of the message is delivered.
|
||||
//
|
||||
// Preview: High throughput for FIFO queues
|
||||
//
|
||||
// High throughput for Amazon SQS FIFO queues is in preview release and is subject
|
||||
// to change. This feature provides a high number of transactions per second
|
||||
// (TPS) for messages in FIFO queues. For information on throughput quotas,
|
||||
// see Quotas related to messages (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
//
|
||||
// This preview includes two new attributes:
|
||||
// The following attributes apply only to high throughput for FIFO queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html):
|
||||
//
|
||||
// * DeduplicationScope – Specifies whether message deduplication occurs
|
||||
// at the message group or queue level. Valid values are messageGroup and
|
||||
|
|
@ -5090,22 +5049,11 @@ type SetQueueAttributesInput struct {
|
|||
// * Set FifoThroughputLimit to perMessageGroupId.
|
||||
//
|
||||
// If you set these attributes to anything other than the values shown for enabling
|
||||
// high throughput, standard throughput is in effect and deduplication occurs
|
||||
// high throughput, normal throughput is in effect and deduplication occurs
|
||||
// as specified.
|
||||
//
|
||||
// This preview is available in the following AWS Regions:
|
||||
//
|
||||
// * US East (Ohio); us-east-2
|
||||
//
|
||||
// * US East (N. Virginia); us-east-1
|
||||
//
|
||||
// * US West (Oregon); us-west-2
|
||||
//
|
||||
// * Europe (Ireland); eu-west-1
|
||||
//
|
||||
// For more information about high throughput for FIFO queues, see Preview:
|
||||
// High throughput for FIFO queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// For information on throughput quotas, see Quotas related to messages (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html)
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// Attributes is a required field
|
||||
Attributes map[string]*string `locationName:"Attribute" locationNameKey:"Name" locationNameValue:"Value" type:"map" flattened:"true" required:"true"`
|
||||
|
|
|
|||
|
|
@ -3,20 +3,19 @@
|
|||
// Package sqs provides the client and types for making API
|
||||
// requests to Amazon Simple Queue Service.
|
||||
//
|
||||
// Welcome to the Amazon Simple Queue Service API Reference.
|
||||
// Welcome to the Amazon SQS API Reference.
|
||||
//
|
||||
// Amazon Simple Queue Service (Amazon SQS) is a reliable, highly-scalable hosted
|
||||
// queue for storing messages as they travel between applications or microservices.
|
||||
// Amazon SQS moves data between distributed application components and helps
|
||||
// you decouple these components.
|
||||
// Amazon SQS is a reliable, highly-scalable hosted queue for storing messages
|
||||
// as they travel between applications or microservices. Amazon SQS moves data
|
||||
// between distributed application components and helps you decouple these components.
|
||||
//
|
||||
// For information on the permissions you need to use this API, see Identity
|
||||
// and access management (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-authentication-and-access-control.html)
|
||||
// in the Amazon Simple Queue Service Developer Guide.
|
||||
// in the Amazon SQS Developer Guide.
|
||||
//
|
||||
// You can use AWS SDKs (http://aws.amazon.com/tools/#sdk) to access Amazon
|
||||
// SQS using your favorite programming language. The SDKs perform tasks such
|
||||
// as the following automatically:
|
||||
// You can use Amazon Web Services SDKs (http://aws.amazon.com/tools/#sdk) to
|
||||
// access Amazon SQS using your favorite programming language. The SDKs perform
|
||||
// tasks such as the following automatically:
|
||||
//
|
||||
// * Cryptographically sign your service requests
|
||||
//
|
||||
|
|
@ -28,11 +27,11 @@
|
|||
//
|
||||
// * Amazon SQS Product Page (http://aws.amazon.com/sqs/)
|
||||
//
|
||||
// * Amazon Simple Queue Service Developer Guide Making API Requests (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-making-api-requests.html)
|
||||
// * Amazon SQS Developer Guide Making API Requests (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-making-api-requests.html)
|
||||
// Amazon SQS Message Attributes (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes)
|
||||
// Amazon SQS Dead-Letter Queues (https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html)
|
||||
//
|
||||
// * Amazon SQS in the AWS CLI Command Reference (http://docs.aws.amazon.com/cli/latest/reference/sqs/index.html)
|
||||
// * Amazon SQS in the Command Line Interface (http://docs.aws.amazon.com/cli/latest/reference/sqs/index.html)
|
||||
//
|
||||
// * Amazon Web Services General Reference Regions and Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html#sqs_region)
|
||||
//
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -3,11 +3,11 @@
|
|||
// Package sts provides the client and types for making API
|
||||
// requests to AWS Security Token Service.
|
||||
//
|
||||
// AWS Security Token Service (STS) enables you to request temporary, limited-privilege
|
||||
// credentials for AWS Identity and Access Management (IAM) users or for users
|
||||
// that you authenticate (federated users). This guide provides descriptions
|
||||
// of the STS API. For more information about using this service, see Temporary
|
||||
// Security Credentials (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html).
|
||||
// Security Token Service (STS) enables you to request temporary, limited-privilege
|
||||
// credentials for Identity and Access Management (IAM) users or for users that
|
||||
// you authenticate (federated users). This guide provides descriptions of the
|
||||
// STS API. For more information about using this service, see Temporary Security
|
||||
// Credentials (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html).
|
||||
//
|
||||
// See https://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15 for more information on this service.
|
||||
//
|
||||
|
|
|
|||
|
|
@ -42,8 +42,9 @@ const (
|
|||
// ErrCodeInvalidIdentityTokenException for service response error code
|
||||
// "InvalidIdentityToken".
|
||||
//
|
||||
// The web identity token that was passed could not be validated by AWS. Get
|
||||
// a new identity token from the identity provider and then retry the request.
|
||||
// The web identity token that was passed could not be validated by Amazon Web
|
||||
// Services. Get a new identity token from the identity provider and then retry
|
||||
// the request.
|
||||
ErrCodeInvalidIdentityTokenException = "InvalidIdentityToken"
|
||||
|
||||
// ErrCodeMalformedPolicyDocumentException for service response error code
|
||||
|
|
@ -57,11 +58,11 @@ const (
|
|||
// "PackedPolicyTooLarge".
|
||||
//
|
||||
// The request was rejected because the total packed size of the session policies
|
||||
// and session tags combined was too large. An AWS conversion compresses the
|
||||
// session policy document, session policy ARNs, and session tags into a packed
|
||||
// binary format that has a separate limit. The error message indicates by percentage
|
||||
// how close the policies and tags are to the upper size limit. For more information,
|
||||
// see Passing Session Tags in STS (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html)
|
||||
// and session tags combined was too large. An Amazon Web Services conversion
|
||||
// compresses the session policy document, session policy ARNs, and session
|
||||
// tags into a packed binary format that has a separate limit. The error message
|
||||
// indicates by percentage how close the policies and tags are to the upper
|
||||
// size limit. For more information, see Passing Session Tags in STS (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html)
|
||||
// in the IAM User Guide.
|
||||
//
|
||||
// You could receive this error even though you meet other defined session policy
|
||||
|
|
@ -76,7 +77,8 @@ const (
|
|||
// STS is not activated in the requested region for the account that is being
|
||||
// asked to generate credentials. The account administrator must use the IAM
|
||||
// console to activate STS in that region. For more information, see Activating
|
||||
// and Deactivating AWS STS in an AWS Region (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html)
|
||||
// and Deactivating Amazon Web Services STS in an Amazon Web Services Region
|
||||
// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html)
|
||||
// in the IAM User Guide.
|
||||
ErrCodeRegionDisabledException = "RegionDisabledException"
|
||||
)
|
||||
|
|
|
|||
|
|
@ -6,6 +6,10 @@ package http2
|
|||
|
||||
import "strings"
|
||||
|
||||
// The HTTP protocols are defined in terms of ASCII, not Unicode. This file
|
||||
// contains helper functions which may use Unicode-aware functions which would
|
||||
// otherwise be unsafe and could introduce vulnerabilities if used improperly.
|
||||
|
||||
// asciiEqualFold is strings.EqualFold, ASCII only. It reports whether s and t
|
||||
// are equal, ASCII-case-insensitively.
|
||||
func asciiEqualFold(s, t string) bool {
|
||||
|
|
|
|||
|
|
@ -259,16 +259,12 @@ func ConfigureServer(s *http.Server, conf *Server) error {
|
|||
|
||||
s.TLSConfig.PreferServerCipherSuites = true
|
||||
|
||||
haveNPN := false
|
||||
for _, p := range s.TLSConfig.NextProtos {
|
||||
if p == NextProtoTLS {
|
||||
haveNPN = true
|
||||
break
|
||||
}
|
||||
}
|
||||
if !haveNPN {
|
||||
if !strSliceContains(s.TLSConfig.NextProtos, NextProtoTLS) {
|
||||
s.TLSConfig.NextProtos = append(s.TLSConfig.NextProtos, NextProtoTLS)
|
||||
}
|
||||
if !strSliceContains(s.TLSConfig.NextProtos, "http/1.1") {
|
||||
s.TLSConfig.NextProtos = append(s.TLSConfig.NextProtos, "http/1.1")
|
||||
}
|
||||
|
||||
if s.TLSNextProto == nil {
|
||||
s.TLSNextProto = map[string]func(*http.Server, *tls.Conn, http.Handler){}
|
||||
|
|
|
|||
|
|
@ -264,9 +264,8 @@ type ClientConn struct {
|
|||
peerMaxHeaderListSize uint64
|
||||
initialWindowSize uint32
|
||||
|
||||
hbuf bytes.Buffer // HPACK encoder writes into this
|
||||
henc *hpack.Encoder
|
||||
freeBuf [][]byte
|
||||
hbuf bytes.Buffer // HPACK encoder writes into this
|
||||
henc *hpack.Encoder
|
||||
|
||||
wmu sync.Mutex // held while writing; acquire AFTER mu if holding both
|
||||
werr error // first write error that has occurred
|
||||
|
|
@ -913,46 +912,6 @@ func (cc *ClientConn) closeForLostPing() error {
|
|||
return cc.closeForError(err)
|
||||
}
|
||||
|
||||
const maxAllocFrameSize = 512 << 10
|
||||
|
||||
// frameBuffer returns a scratch buffer suitable for writing DATA frames.
|
||||
// They're capped at the min of the peer's max frame size or 512KB
|
||||
// (kinda arbitrarily), but definitely capped so we don't allocate 4GB
|
||||
// bufers.
|
||||
func (cc *ClientConn) frameScratchBuffer() []byte {
|
||||
cc.mu.Lock()
|
||||
size := cc.maxFrameSize
|
||||
if size > maxAllocFrameSize {
|
||||
size = maxAllocFrameSize
|
||||
}
|
||||
for i, buf := range cc.freeBuf {
|
||||
if len(buf) >= int(size) {
|
||||
cc.freeBuf[i] = nil
|
||||
cc.mu.Unlock()
|
||||
return buf[:size]
|
||||
}
|
||||
}
|
||||
cc.mu.Unlock()
|
||||
return make([]byte, size)
|
||||
}
|
||||
|
||||
func (cc *ClientConn) putFrameScratchBuffer(buf []byte) {
|
||||
cc.mu.Lock()
|
||||
defer cc.mu.Unlock()
|
||||
const maxBufs = 4 // arbitrary; 4 concurrent requests per conn? investigate.
|
||||
if len(cc.freeBuf) < maxBufs {
|
||||
cc.freeBuf = append(cc.freeBuf, buf)
|
||||
return
|
||||
}
|
||||
for i, old := range cc.freeBuf {
|
||||
if old == nil {
|
||||
cc.freeBuf[i] = buf
|
||||
return
|
||||
}
|
||||
}
|
||||
// forget about it.
|
||||
}
|
||||
|
||||
// errRequestCanceled is a copy of net/http's errRequestCanceled because it's not
|
||||
// exported. At least they'll be DeepEqual for h1-vs-h2 comparisons tests.
|
||||
var errRequestCanceled = errors.New("net/http: request canceled")
|
||||
|
|
@ -1295,11 +1254,35 @@ var (
|
|||
errReqBodyTooLong = errors.New("http2: request body larger than specified content length")
|
||||
)
|
||||
|
||||
// frameScratchBufferLen returns the length of a buffer to use for
|
||||
// outgoing request bodies to read/write to/from.
|
||||
//
|
||||
// It returns max(1, min(peer's advertised max frame size,
|
||||
// Request.ContentLength+1, 512KB)).
|
||||
func (cs *clientStream) frameScratchBufferLen(maxFrameSize int) int {
|
||||
const max = 512 << 10
|
||||
n := int64(maxFrameSize)
|
||||
if n > max {
|
||||
n = max
|
||||
}
|
||||
if cl := actualContentLength(cs.req); cl != -1 && cl+1 < n {
|
||||
// Add an extra byte past the declared content-length to
|
||||
// give the caller's Request.Body io.Reader a chance to
|
||||
// give us more bytes than they declared, so we can catch it
|
||||
// early.
|
||||
n = cl + 1
|
||||
}
|
||||
if n < 1 {
|
||||
return 1
|
||||
}
|
||||
return int(n) // doesn't truncate; max is 512K
|
||||
}
|
||||
|
||||
var bufPool sync.Pool // of *[]byte
|
||||
|
||||
func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) (err error) {
|
||||
cc := cs.cc
|
||||
sentEnd := false // whether we sent the final DATA frame w/ END_STREAM
|
||||
buf := cc.frameScratchBuffer()
|
||||
defer cc.putFrameScratchBuffer(buf)
|
||||
|
||||
defer func() {
|
||||
traceWroteRequest(cs.trace, err)
|
||||
|
|
@ -1318,9 +1301,24 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) (
|
|||
remainLen := actualContentLength(req)
|
||||
hasContentLen := remainLen != -1
|
||||
|
||||
cc.mu.Lock()
|
||||
maxFrameSize := int(cc.maxFrameSize)
|
||||
cc.mu.Unlock()
|
||||
|
||||
// Scratch buffer for reading into & writing from.
|
||||
scratchLen := cs.frameScratchBufferLen(maxFrameSize)
|
||||
var buf []byte
|
||||
if bp, ok := bufPool.Get().(*[]byte); ok && len(*bp) >= scratchLen {
|
||||
defer bufPool.Put(bp)
|
||||
buf = *bp
|
||||
} else {
|
||||
buf = make([]byte, scratchLen)
|
||||
defer bufPool.Put(&buf)
|
||||
}
|
||||
|
||||
var sawEOF bool
|
||||
for !sawEOF {
|
||||
n, err := body.Read(buf[:len(buf)-1])
|
||||
n, err := body.Read(buf[:len(buf)])
|
||||
if hasContentLen {
|
||||
remainLen -= int64(n)
|
||||
if remainLen == 0 && err == nil {
|
||||
|
|
@ -1331,8 +1329,9 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) (
|
|||
// to send the END_STREAM bit early, double-check that we're actually
|
||||
// at EOF. Subsequent reads should return (0, EOF) at this point.
|
||||
// If either value is different, we return an error in one of two ways below.
|
||||
var scratch [1]byte
|
||||
var n1 int
|
||||
n1, err = body.Read(buf[n:])
|
||||
n1, err = body.Read(scratch[:])
|
||||
remainLen -= int64(n1)
|
||||
}
|
||||
if remainLen < 0 {
|
||||
|
|
@ -1402,10 +1401,6 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) (
|
|||
}
|
||||
}
|
||||
|
||||
cc.mu.Lock()
|
||||
maxFrameSize := int(cc.maxFrameSize)
|
||||
cc.mu.Unlock()
|
||||
|
||||
cc.wmu.Lock()
|
||||
defer cc.wmu.Unlock()
|
||||
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ github.com/aws/amazon-ec2-instance-selector/v2/pkg/bytequantity
|
|||
github.com/aws/amazon-ec2-instance-selector/v2/pkg/cli
|
||||
github.com/aws/amazon-ec2-instance-selector/v2/pkg/selector
|
||||
github.com/aws/amazon-ec2-instance-selector/v2/pkg/selector/outputs
|
||||
# github.com/aws/aws-sdk-go v1.38.29
|
||||
# github.com/aws/aws-sdk-go v1.40.0
|
||||
## explicit
|
||||
github.com/aws/aws-sdk-go/aws
|
||||
github.com/aws/aws-sdk-go/aws/arn
|
||||
|
|
@ -744,7 +744,7 @@ golang.org/x/crypto/ssh/internal/bcrypt_pbkdf
|
|||
# golang.org/x/mod v0.4.2
|
||||
golang.org/x/mod/module
|
||||
golang.org/x/mod/semver
|
||||
# golang.org/x/net v0.0.0-20210525063256-abc453219eb5
|
||||
# golang.org/x/net v0.0.0-20210614182718-04defd469f4e
|
||||
## explicit
|
||||
golang.org/x/net/bpf
|
||||
golang.org/x/net/context
|
||||
|
|
|
|||
Loading…
Reference in New Issue