chore(deps): bump github.com/aws/aws-sdk-go-v2/config (#2875)
Bumps [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) from 1.25.5 to 1.25.8. - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.25.5...config/v1.25.8) --- updated-dependencies: - dependency-name: github.com/aws/aws-sdk-go-v2/config dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
parent
7bfc73c3ad
commit
2f27f183c4
20
go.mod
20
go.mod
|
|
@ -10,8 +10,8 @@ require (
|
|||
// To update run: go get github.com/GoogleCloudPlatform/docker-credential-gcr@<commit-sha>
|
||||
// The version string is a side-effect of Go module version numbering rules. Functionality is otherwise unchanged.
|
||||
github.com/GoogleCloudPlatform/docker-credential-gcr v1.5.1-0.20230328182921-62afb2723512
|
||||
github.com/aws/aws-sdk-go-v2 v1.23.1
|
||||
github.com/aws/aws-sdk-go-v2/config v1.25.5
|
||||
github.com/aws/aws-sdk-go-v2 v1.23.2
|
||||
github.com/aws/aws-sdk-go-v2/config v1.25.8
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.14.3
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.45.0
|
||||
github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20230522190001-adf1bafd791a
|
||||
|
|
@ -67,19 +67,19 @@ require (
|
|||
github.com/acomagu/bufpipe v1.0.4 // indirect
|
||||
github.com/agext/levenshtein v1.2.3 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.5.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.16.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.5 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.16.6 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.6 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.5 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.5 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/ini v1.7.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/v4a v1.2.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.5 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.17.3 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.20.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.25.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.17.5 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.20.3 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.25.6 // indirect
|
||||
github.com/aws/smithy-go v1.17.0 // indirect
|
||||
github.com/beorn7/perks v1.0.1 // indirect
|
||||
github.com/cespare/xxhash/v2 v2.2.0 // indirect
|
||||
|
|
|
|||
40
go.sum
40
go.sum
|
|
@ -110,27 +110,27 @@ github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmV
|
|||
github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
|
||||
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
|
||||
github.com/aws/aws-sdk-go-v2 v1.18.0/go.mod h1:uzbQtefpm44goOPmdKyAlXSNcwlRgF3ePWVW6EtJvvw=
|
||||
github.com/aws/aws-sdk-go-v2 v1.23.1 h1:qXaFsOOMA+HsZtX8WoCa+gJnbyW7qyFFBlPqvTSzbaI=
|
||||
github.com/aws/aws-sdk-go-v2 v1.23.1/go.mod h1:i1XDttT4rnf6vxc9AuskLc6s7XBee8rlLilKlc03uAA=
|
||||
github.com/aws/aws-sdk-go-v2 v1.23.2 h1:UoTll1Y5b88x8h53OlsJGgOHwpggdMr7UVnLjMb3XYg=
|
||||
github.com/aws/aws-sdk-go-v2 v1.23.2/go.mod h1:i1XDttT4rnf6vxc9AuskLc6s7XBee8rlLilKlc03uAA=
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.5.1 h1:ZY3108YtBNq96jNZTICHxN1gSBSbnvIdYwwqnvCV4Mc=
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.5.1/go.mod h1:t8PYl/6LzdAqsU4/9tz28V/kU+asFePvpOMkdul0gEQ=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.18.22/go.mod h1:mN7Li1wxaPxSSy4Xkr6stFuinJGf3VZW3ZSNvO0q6sI=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.25.5 h1:UGKm9hpQS2hoK8CEJ1BzAW8NbUpvwDJJ4lyqXSzu8bk=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.25.5/go.mod h1:Bf4gDvy4ZcFIK0rqDu1wp9wrubNba2DojiPB2rt6nvI=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.25.8 h1:CHr7PIzyfevjNiqL9rU6xoqHZKCO2ldY6LmvRDfpRuI=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.25.8/go.mod h1:zefIy117FDPOVU0xSOFG8mx9kJunuVopzI639tjYXc0=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.13.21/go.mod h1:90Dk1lJoMyspa/EDUrldTxsPns0wn6+KpRKpdAWc0uA=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.16.4 h1:i7UQYYDSJrtc30RSwJwfBKwLFNnBTiICqAJ0pPdum8E=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.16.4/go.mod h1:Kdh/okh+//vQ/AjEt81CjvkTo64+/zIE4OewP7RpfXk=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.16.6 h1:TimIpn1p4v44i0sJMKsnpby1P9sP1ByKLsdm7bvOmwM=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.16.6/go.mod h1:+CLPlYf9FQLeXD8etOYiZxpLQqc3GL4EikxjkFFp1KA=
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.3/go.mod h1:4Q0UFP0YJf0NrsEuEYHpM9fTSEVnD16Z3uyEF7J9JGM=
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.5 h1:KehRNiVzIfAcj6gw98zotVbb/K67taJE0fkfgM6vzqU=
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.5/go.mod h1:VhnExhw6uXy9QzetvpXDolo1/hjhx4u9qukBGkuUwjs=
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.6 h1:pPs23/JLSOlwnmSRNkdbt3upmBeF6QL/3MHEb6KzTyo=
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.6/go.mod h1:jsoDHV44SxWv00wlbx0yA5M7n5rmE5rGk+OGA0suXSw=
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.14.3 h1:edTeIcLVO/gefaQ4VdKeFaI4ygdSZ7s/eCWYo0kBxAc=
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.14.3/go.mod h1:3rp61zCDi1E//0vHdx2ULc5eLlo0JOqVd1hxmks6S84=
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.33/go.mod h1:7i0PF1ME/2eUPFcjkVIwq+DOygHEoK92t5cDqNgYbIw=
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.4 h1:LAm3Ycm9HJfbSCd5I+wqC2S9Ej7FPrgr5CQoOljJZcE=
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.4/go.mod h1:xEhvbJcyUf/31yfGSQBe01fukXwXJ0gxDp7rLfymWE0=
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.5 h1:16Z1XuMUv63fcyW5bIUno6AFcX4drsrE0gof+xue6g4=
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.5/go.mod h1:pRvFacV2qbRKy34ZFptHZW4wpauJA445bqFbvA6ikSo=
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.27/go.mod h1:UrHnn3QV/d0pBZ6QBAEQcqFLf8FAzLmoUfPVIueOvoM=
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.4 h1:4GV0kKZzUxiWxSVpn/9gwR0g21NF1Jsyduzo9rHgC/Q=
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.4/go.mod h1:dYvTNAggxDZy6y1AF7YDwXsPuHFy/VNEpEI/2dWK9IU=
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.5 h1:RxpMuBgzP3Dj1n5CZY6droLFcsn5gc7QsrIcaGQoeCs=
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.5/go.mod h1:dO8Js7ym4Jzg/wcjTgCRVln/jFn3nI82XNhsG2lWbDI=
|
||||
github.com/aws/aws-sdk-go-v2/internal/ini v1.3.34/go.mod h1:Etz2dj6UHYuw+Xw830KfzCfWGMzqvUTCjUj5b76GVDc=
|
||||
github.com/aws/aws-sdk-go-v2/internal/ini v1.7.1 h1:uR9lXYjdPX0xY+NhvaJ4dD8rpSRz5VY81ccIIoNG+lw=
|
||||
github.com/aws/aws-sdk-go-v2/internal/ini v1.7.1/go.mod h1:6fQQgfuGmw8Al/3M2IgIllycxV7ZW7WCdVSqfBeUiCY=
|
||||
|
|
@ -145,21 +145,21 @@ github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.1/go.mod h1:
|
|||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.4 h1:6DRKQc+9cChgzL5gplRGusI5dBGeiEod4m/pmGbcX48=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.4/go.mod h1:s8ORvrW4g4v7IvYKIAoBg17w3GQ+XuwXDXYrQ5SkzU0=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.27/go.mod h1:EOwBD4J4S5qYszS5/3DpkejfuK+Z5/1uzICfPaZLtqw=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.4 h1:rdovz3rEu0vZKbzoMYPTehp0E8veoE9AyfzqCr5Eeao=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.4/go.mod h1:aYCGNjyUCUelhofxlZyj63srdxWUSsBSGg5l6MCuXuE=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.5 h1:F+XafeiK7Uf4YwTZfe/JLt+3cB6je9sI7l0TY4f2CkY=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.5/go.mod h1:NlZuvlkyu6l/F3+qIBsGGtYLL2Z71tCf5NFoNAaG1NY=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.4 h1:o3DcfCxGDIT20pTbVKVhp3vWXOj/VvgazNJvumWeYW0=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.4/go.mod h1:Uy0KVOxuTK2ne+/PKQ+VvEeWmjMMksE17k/2RK/r5oM=
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.45.0 h1:qm5f24B6bg3BsVdbMd8ODEfKeadBmYlwUi9erqRfv6s=
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.45.0/go.mod h1:dqJ5JBL0clzgHriH35Amx3LRFY6wNIPUX7QO/BerSBo=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.12.9/go.mod h1:ouy2P4z6sJN70fR3ka3wD3Ro3KezSxU6eKGQI2+2fjI=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.17.3 h1:CdsSOGlFF3Pn+koXOIpTtvX7st0IuGsZ8kJqcWMlX54=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.17.3/go.mod h1:oA6VjNsLll2eVuUoF2D+CMyORgNzPEW/3PyUdq6WQjI=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.17.5 h1:kuK22ZsITfzaZEkxEl5H/lhy2k3G4clBtcQBI93RbIc=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.17.5/go.mod h1:/tLqstwPfJLHYGBB5/c8P1ITI82pcGs7cJQuXku2pOg=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.14.9/go.mod h1:AFvkxc8xfBe8XA+5St5XIHHrQQtkxqrRincx4hmMHOk=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.20.1 h1:cbRqFTVnJV+KRpwFl76GJdIZJKKCdTPnjUZ7uWh3pIU=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.20.1/go.mod h1:hHL974p5auvXlZPIjJTblXJpbkfK4klBczlsEaMCGVY=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.20.3 h1:l5d5nrTFMhiUWNoLnV7QNI4m42/3WVSXqSyqVy+elGk=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.20.3/go.mod h1:30gKZp2pHQJq3yTmVy+hJKDFynSoYzVqYaxe4yPi+xI=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.18.10/go.mod h1:BgQOMsg8av8jset59jelyPW7NoZcZXLVpDsXunGDrk8=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.25.4 h1:yEvZ4neOQ/KpUqyR+X0ycUTW/kVRNR4nDZ38wStHGAA=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.25.4/go.mod h1:feTnm2Tk/pJxdX+eooEsxvlvTWBvDm6CasRZ+JOs2IY=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.25.6 h1:39dJNBt35p8dFSnQdoy+QbDaPenTxFqqDQFOb1GDYpE=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.25.6/go.mod h1:6DKEi+8OnUrqEEh6OCam16AYQHWAOyNgRiUGnHoh7Cg=
|
||||
github.com/aws/smithy-go v1.13.5/go.mod h1:Tg+OJXh4MB2R/uN61Ko2f6hTZwB/ZYGOtib8J3gBHzA=
|
||||
github.com/aws/smithy-go v1.17.0 h1:wWJD7LX6PBV6etBUwO0zElG0nWN9rUhp0WdYeHSHAaI=
|
||||
github.com/aws/smithy-go v1.17.0/go.mod h1:NukqUGpCZIILqqiV0NIjeFh24kd/FAa4beRb6nbIUPE=
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
package aws
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.23.1"
|
||||
const goModuleVersion = "1.23.2"
|
||||
|
|
|
|||
319
vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/private/metrics/metrics.go
generated
vendored
Normal file
319
vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/private/metrics/metrics.go
generated
vendored
Normal file
|
|
@ -0,0 +1,319 @@
|
|||
// Package metrics implements metrics gathering for SDK development purposes.
|
||||
//
|
||||
// This package is designated as private and is intended for use only by the
|
||||
// AWS client runtime. The exported API therein is not considered stable and
|
||||
// is subject to breaking changes without notice.
|
||||
package metrics
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/aws/smithy-go/middleware"
|
||||
)
|
||||
|
||||
const (
|
||||
// ServiceIDKey is the key for the service ID metric.
|
||||
ServiceIDKey = "ServiceId"
|
||||
// OperationNameKey is the key for the operation name metric.
|
||||
OperationNameKey = "OperationName"
|
||||
// ClientRequestIDKey is the key for the client request ID metric.
|
||||
ClientRequestIDKey = "ClientRequestId"
|
||||
// APICallDurationKey is the key for the API call duration metric.
|
||||
APICallDurationKey = "ApiCallDuration"
|
||||
// APICallSuccessfulKey is the key for the API call successful metric.
|
||||
APICallSuccessfulKey = "ApiCallSuccessful"
|
||||
// MarshallingDurationKey is the key for the marshalling duration metric.
|
||||
MarshallingDurationKey = "MarshallingDuration"
|
||||
// InThroughputKey is the key for the input throughput metric.
|
||||
InThroughputKey = "InThroughput"
|
||||
// OutThroughputKey is the key for the output throughput metric.
|
||||
OutThroughputKey = "OutThroughput"
|
||||
// RetryCountKey is the key for the retry count metric.
|
||||
RetryCountKey = "RetryCount"
|
||||
// HTTPStatusCodeKey is the key for the HTTP status code metric.
|
||||
HTTPStatusCodeKey = "HttpStatusCode"
|
||||
// AWSExtendedRequestIDKey is the key for the AWS extended request ID metric.
|
||||
AWSExtendedRequestIDKey = "AwsExtendedRequestId"
|
||||
// AWSRequestIDKey is the key for the AWS request ID metric.
|
||||
AWSRequestIDKey = "AwsRequestId"
|
||||
// BackoffDelayDurationKey is the key for the backoff delay duration metric.
|
||||
BackoffDelayDurationKey = "BackoffDelayDuration"
|
||||
// StreamThroughputKey is the key for the stream throughput metric.
|
||||
StreamThroughputKey = "Throughput"
|
||||
// ConcurrencyAcquireDurationKey is the key for the concurrency acquire duration metric.
|
||||
ConcurrencyAcquireDurationKey = "ConcurrencyAcquireDuration"
|
||||
// PendingConcurrencyAcquiresKey is the key for the pending concurrency acquires metric.
|
||||
PendingConcurrencyAcquiresKey = "PendingConcurrencyAcquires"
|
||||
// SigningDurationKey is the key for the signing duration metric.
|
||||
SigningDurationKey = "SigningDuration"
|
||||
// UnmarshallingDurationKey is the key for the unmarshalling duration metric.
|
||||
UnmarshallingDurationKey = "UnmarshallingDuration"
|
||||
// TimeToFirstByteKey is the key for the time to first byte metric.
|
||||
TimeToFirstByteKey = "TimeToFirstByte"
|
||||
// ServiceCallDurationKey is the key for the service call duration metric.
|
||||
ServiceCallDurationKey = "ServiceCallDuration"
|
||||
// EndpointResolutionDurationKey is the key for the endpoint resolution duration metric.
|
||||
EndpointResolutionDurationKey = "EndpointResolutionDuration"
|
||||
// AttemptNumberKey is the key for the attempt number metric.
|
||||
AttemptNumberKey = "AttemptNumber"
|
||||
// MaxConcurrencyKey is the key for the max concurrency metric.
|
||||
MaxConcurrencyKey = "MaxConcurrency"
|
||||
// AvailableConcurrencyKey is the key for the available concurrency metric.
|
||||
AvailableConcurrencyKey = "AvailableConcurrency"
|
||||
)
|
||||
|
||||
// MetricPublisher provides the interface to provide custom MetricPublishers.
|
||||
// PostRequestMetrics will be invoked by the MetricCollection middleware to post request.
|
||||
// PostStreamMetrics will be invoked by ReadCloserWithMetrics to post stream metrics.
|
||||
type MetricPublisher interface {
|
||||
PostRequestMetrics(*MetricData) error
|
||||
PostStreamMetrics(*MetricData) error
|
||||
}
|
||||
|
||||
// Serializer provides the interface to provide custom Serializers.
|
||||
// Serialize will transform any input object in its corresponding string representation.
|
||||
type Serializer interface {
|
||||
Serialize(obj interface{}) (string, error)
|
||||
}
|
||||
|
||||
// DefaultSerializer is an implementation of the Serializer interface.
|
||||
type DefaultSerializer struct{}
|
||||
|
||||
// Serialize uses the default JSON serializer to obtain the string representation of an object.
|
||||
func (DefaultSerializer) Serialize(obj interface{}) (string, error) {
|
||||
bytes, err := json.Marshal(obj)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
return string(bytes), nil
|
||||
}
|
||||
|
||||
type metricContextKey struct{}
|
||||
|
||||
// MetricContext contains fields to store metric-related information.
|
||||
type MetricContext struct {
|
||||
connectionCounter *SharedConnectionCounter
|
||||
publisher MetricPublisher
|
||||
data *MetricData
|
||||
}
|
||||
|
||||
// MetricData stores the collected metric data.
|
||||
type MetricData struct {
|
||||
RequestStartTime time.Time
|
||||
RequestEndTime time.Time
|
||||
APICallDuration time.Duration
|
||||
SerializeStartTime time.Time
|
||||
SerializeEndTime time.Time
|
||||
MarshallingDuration time.Duration
|
||||
ResolveEndpointStartTime time.Time
|
||||
ResolveEndpointEndTime time.Time
|
||||
EndpointResolutionDuration time.Duration
|
||||
InThroughput float64
|
||||
OutThroughput float64
|
||||
RetryCount int
|
||||
Success uint8
|
||||
StatusCode int
|
||||
ClientRequestID string
|
||||
ServiceID string
|
||||
OperationName string
|
||||
PartitionID string
|
||||
Region string
|
||||
RequestContentLength int64
|
||||
Stream StreamMetrics
|
||||
Attempts []AttemptMetrics
|
||||
}
|
||||
|
||||
// StreamMetrics stores metrics related to streaming data.
|
||||
type StreamMetrics struct {
|
||||
ReadDuration time.Duration
|
||||
ReadBytes int64
|
||||
Throughput float64
|
||||
}
|
||||
|
||||
// AttemptMetrics stores metrics related to individual attempts.
|
||||
type AttemptMetrics struct {
|
||||
ServiceCallStart time.Time
|
||||
ServiceCallEnd time.Time
|
||||
ServiceCallDuration time.Duration
|
||||
FirstByteTime time.Time
|
||||
TimeToFirstByte time.Duration
|
||||
ConnRequestedTime time.Time
|
||||
ConnObtainedTime time.Time
|
||||
ConcurrencyAcquireDuration time.Duration
|
||||
CredentialFetchStartTime time.Time
|
||||
CredentialFetchEndTime time.Time
|
||||
SignStartTime time.Time
|
||||
SignEndTime time.Time
|
||||
SigningDuration time.Duration
|
||||
DeserializeStartTime time.Time
|
||||
DeserializeEndTime time.Time
|
||||
UnMarshallingDuration time.Duration
|
||||
RetryDelay time.Duration
|
||||
ResponseContentLength int64
|
||||
StatusCode int
|
||||
RequestID string
|
||||
ExtendedRequestID string
|
||||
HTTPClient string
|
||||
MaxConcurrency int
|
||||
PendingConnectionAcquires int
|
||||
AvailableConcurrency int
|
||||
ActiveRequests int
|
||||
ReusedConnection bool
|
||||
}
|
||||
|
||||
// Data returns the MetricData associated with the MetricContext.
|
||||
func (mc *MetricContext) Data() *MetricData {
|
||||
return mc.data
|
||||
}
|
||||
|
||||
// ConnectionCounter returns the SharedConnectionCounter associated with the MetricContext.
|
||||
func (mc *MetricContext) ConnectionCounter() *SharedConnectionCounter {
|
||||
return mc.connectionCounter
|
||||
}
|
||||
|
||||
// Publisher returns the MetricPublisher associated with the MetricContext.
|
||||
func (mc *MetricContext) Publisher() MetricPublisher {
|
||||
return mc.publisher
|
||||
}
|
||||
|
||||
// ComputeRequestMetrics calculates and populates derived metrics based on the collected data.
|
||||
func (md *MetricData) ComputeRequestMetrics() {
|
||||
|
||||
for idx := range md.Attempts {
|
||||
attempt := &md.Attempts[idx]
|
||||
attempt.ConcurrencyAcquireDuration = attempt.ConnObtainedTime.Sub(attempt.ConnRequestedTime)
|
||||
attempt.SigningDuration = attempt.SignEndTime.Sub(attempt.SignStartTime)
|
||||
attempt.UnMarshallingDuration = attempt.DeserializeEndTime.Sub(attempt.DeserializeStartTime)
|
||||
attempt.TimeToFirstByte = attempt.FirstByteTime.Sub(attempt.ServiceCallStart)
|
||||
attempt.ServiceCallDuration = attempt.ServiceCallEnd.Sub(attempt.ServiceCallStart)
|
||||
}
|
||||
|
||||
md.APICallDuration = md.RequestEndTime.Sub(md.RequestStartTime)
|
||||
md.MarshallingDuration = md.SerializeEndTime.Sub(md.SerializeStartTime)
|
||||
md.EndpointResolutionDuration = md.ResolveEndpointEndTime.Sub(md.ResolveEndpointStartTime)
|
||||
|
||||
md.RetryCount = len(md.Attempts) - 1
|
||||
|
||||
latestAttempt, err := md.LatestAttempt()
|
||||
|
||||
if err != nil {
|
||||
fmt.Printf("error retrieving attempts data due to: %s. Skipping Throughput metrics", err.Error())
|
||||
} else {
|
||||
|
||||
md.StatusCode = latestAttempt.StatusCode
|
||||
|
||||
if md.Success == 1 {
|
||||
if latestAttempt.ResponseContentLength > 0 && latestAttempt.ServiceCallDuration > 0 {
|
||||
md.InThroughput = float64(latestAttempt.ResponseContentLength) / latestAttempt.ServiceCallDuration.Seconds()
|
||||
}
|
||||
if md.RequestContentLength > 0 && latestAttempt.ServiceCallDuration > 0 {
|
||||
md.OutThroughput = float64(md.RequestContentLength) / latestAttempt.ServiceCallDuration.Seconds()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// LatestAttempt returns the latest attempt metrics.
|
||||
// It returns an error if no attempts are initialized.
|
||||
func (md *MetricData) LatestAttempt() (*AttemptMetrics, error) {
|
||||
if md.Attempts == nil || len(md.Attempts) == 0 {
|
||||
return nil, fmt.Errorf("no attempts initialized. NewAttempt() should be called first")
|
||||
}
|
||||
return &md.Attempts[len(md.Attempts)-1], nil
|
||||
}
|
||||
|
||||
// NewAttempt initializes new attempt metrics.
|
||||
func (md *MetricData) NewAttempt() {
|
||||
if md.Attempts == nil {
|
||||
md.Attempts = []AttemptMetrics{}
|
||||
}
|
||||
md.Attempts = append(md.Attempts, AttemptMetrics{})
|
||||
}
|
||||
|
||||
// SharedConnectionCounter is a counter shared across API calls.
|
||||
type SharedConnectionCounter struct {
|
||||
mu sync.Mutex
|
||||
|
||||
activeRequests int
|
||||
pendingConnectionAcquire int
|
||||
}
|
||||
|
||||
// ActiveRequests returns the count of active requests.
|
||||
func (cc *SharedConnectionCounter) ActiveRequests() int {
|
||||
cc.mu.Lock()
|
||||
defer cc.mu.Unlock()
|
||||
|
||||
return cc.activeRequests
|
||||
}
|
||||
|
||||
// PendingConnectionAcquire returns the count of pending connection acquires.
|
||||
func (cc *SharedConnectionCounter) PendingConnectionAcquire() int {
|
||||
cc.mu.Lock()
|
||||
defer cc.mu.Unlock()
|
||||
|
||||
return cc.pendingConnectionAcquire
|
||||
}
|
||||
|
||||
// AddActiveRequest increments the count of active requests.
|
||||
func (cc *SharedConnectionCounter) AddActiveRequest() {
|
||||
cc.mu.Lock()
|
||||
defer cc.mu.Unlock()
|
||||
|
||||
cc.activeRequests++
|
||||
}
|
||||
|
||||
// RemoveActiveRequest decrements the count of active requests.
|
||||
func (cc *SharedConnectionCounter) RemoveActiveRequest() {
|
||||
cc.mu.Lock()
|
||||
defer cc.mu.Unlock()
|
||||
|
||||
cc.activeRequests--
|
||||
}
|
||||
|
||||
// AddPendingConnectionAcquire increments the count of pending connection acquires.
|
||||
func (cc *SharedConnectionCounter) AddPendingConnectionAcquire() {
|
||||
cc.mu.Lock()
|
||||
defer cc.mu.Unlock()
|
||||
|
||||
cc.pendingConnectionAcquire++
|
||||
}
|
||||
|
||||
// RemovePendingConnectionAcquire decrements the count of pending connection acquires.
|
||||
func (cc *SharedConnectionCounter) RemovePendingConnectionAcquire() {
|
||||
cc.mu.Lock()
|
||||
defer cc.mu.Unlock()
|
||||
|
||||
cc.pendingConnectionAcquire--
|
||||
}
|
||||
|
||||
// InitMetricContext initializes the metric context with the provided counter and publisher.
|
||||
// It returns the updated context.
|
||||
func InitMetricContext(
|
||||
ctx context.Context, counter *SharedConnectionCounter, publisher MetricPublisher,
|
||||
) context.Context {
|
||||
if middleware.GetStackValue(ctx, metricContextKey{}) == nil {
|
||||
ctx = middleware.WithStackValue(ctx, metricContextKey{}, &MetricContext{
|
||||
connectionCounter: counter,
|
||||
publisher: publisher,
|
||||
data: &MetricData{
|
||||
Attempts: []AttemptMetrics{},
|
||||
Stream: StreamMetrics{},
|
||||
},
|
||||
})
|
||||
}
|
||||
return ctx
|
||||
}
|
||||
|
||||
// Context returns the metric context from the given context.
|
||||
// It returns nil if the metric context is not found.
|
||||
func Context(ctx context.Context) *MetricContext {
|
||||
mctx := middleware.GetStackValue(ctx, metricContextKey{})
|
||||
if mctx == nil {
|
||||
return nil
|
||||
}
|
||||
return mctx.(*MetricContext)
|
||||
}
|
||||
|
|
@ -3,6 +3,7 @@ package retry
|
|||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/middleware/private/metrics"
|
||||
"strconv"
|
||||
"strings"
|
||||
"time"
|
||||
|
|
@ -225,6 +226,13 @@ func (r *Attempt) handleAttempt(
|
|||
// that time. Potentially early exist if the sleep is canceled via the
|
||||
// context.
|
||||
retryDelay, reqErr := r.retryer.RetryDelay(attemptNum, err)
|
||||
mctx := metrics.Context(ctx)
|
||||
if mctx != nil {
|
||||
attempt, err := mctx.Data().LatestAttempt()
|
||||
if err != nil {
|
||||
attempt.RetryDelay = retryDelay
|
||||
}
|
||||
}
|
||||
if reqErr != nil {
|
||||
return out, attemptResult, releaseRetryToken, reqErr
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import (
|
|||
|
||||
"github.com/aws/aws-sdk-go-v2/aws"
|
||||
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
|
||||
"github.com/aws/aws-sdk-go-v2/aws/middleware/private/metrics"
|
||||
v4Internal "github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4"
|
||||
internalauth "github.com/aws/aws-sdk-go-v2/internal/auth"
|
||||
"github.com/aws/aws-sdk-go-v2/internal/sdk"
|
||||
|
|
@ -300,7 +301,22 @@ func (s *SignHTTPRequestMiddleware) HandleFinalize(ctx context.Context, in middl
|
|||
return out, metadata, &SigningError{Err: fmt.Errorf("computed payload hash missing from context")}
|
||||
}
|
||||
|
||||
mctx := metrics.Context(ctx)
|
||||
|
||||
if mctx != nil {
|
||||
if attempt, err := mctx.Data().LatestAttempt(); err == nil {
|
||||
attempt.CredentialFetchStartTime = sdk.NowTime()
|
||||
}
|
||||
}
|
||||
|
||||
credentials, err := s.credentialsProvider.Retrieve(ctx)
|
||||
|
||||
if mctx != nil {
|
||||
if attempt, err := mctx.Data().LatestAttempt(); err == nil {
|
||||
attempt.CredentialFetchEndTime = sdk.NowTime()
|
||||
}
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
return out, metadata, &SigningError{Err: fmt.Errorf("failed to retrieve credentials: %w", err)}
|
||||
}
|
||||
|
|
@ -321,7 +337,20 @@ func (s *SignHTTPRequestMiddleware) HandleFinalize(ctx context.Context, in middl
|
|||
})
|
||||
}
|
||||
|
||||
if mctx != nil {
|
||||
if attempt, err := mctx.Data().LatestAttempt(); err == nil {
|
||||
attempt.SignStartTime = sdk.NowTime()
|
||||
}
|
||||
}
|
||||
|
||||
err = s.signer.SignHTTP(ctx, credentials, req.Request, payloadHash, signingName, signingRegion, sdk.NowTime(), signerOptions...)
|
||||
|
||||
if mctx != nil {
|
||||
if attempt, err := mctx.Data().LatestAttempt(); err == nil {
|
||||
attempt.SignEndTime = sdk.NowTime()
|
||||
}
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
return out, metadata, &SigningError{Err: fmt.Errorf("failed to sign http request, %w", err)}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,6 +68,9 @@ import (
|
|||
const (
|
||||
signingAlgorithm = "AWS4-HMAC-SHA256"
|
||||
authorizationHeader = "Authorization"
|
||||
|
||||
// Version of signing v4
|
||||
Version = "SigV4"
|
||||
)
|
||||
|
||||
// HTTPSigner is an interface to a SigV4 signer that can sign HTTP requests
|
||||
|
|
@ -103,6 +106,11 @@ type SignerOptions struct {
|
|||
// This will enable logging of the canonical request, the string to sign, and for presigning the subsequent
|
||||
// presigned URL.
|
||||
LogSigning bool
|
||||
|
||||
// Disables setting the session token on the request as part of signing
|
||||
// through X-Amz-Security-Token. This is needed for variations of v4 that
|
||||
// present the token elsewhere.
|
||||
DisableSessionToken bool
|
||||
}
|
||||
|
||||
// Signer applies AWS v4 signing to given request. Use this to sign requests
|
||||
|
|
@ -136,6 +144,7 @@ type httpSigner struct {
|
|||
|
||||
DisableHeaderHoisting bool
|
||||
DisableURIPathEscaping bool
|
||||
DisableSessionToken bool
|
||||
}
|
||||
|
||||
func (s *httpSigner) Build() (signedRequest, error) {
|
||||
|
|
@ -284,6 +293,7 @@ func (s Signer) SignHTTP(ctx context.Context, credentials aws.Credentials, r *ht
|
|||
Time: v4Internal.NewSigningTime(signingTime.UTC()),
|
||||
DisableHeaderHoisting: options.DisableHeaderHoisting,
|
||||
DisableURIPathEscaping: options.DisableURIPathEscaping,
|
||||
DisableSessionToken: options.DisableSessionToken,
|
||||
KeyDerivator: s.keyDerivator,
|
||||
}
|
||||
|
||||
|
|
@ -360,6 +370,7 @@ func (s *Signer) PresignHTTP(
|
|||
IsPreSign: true,
|
||||
DisableHeaderHoisting: options.DisableHeaderHoisting,
|
||||
DisableURIPathEscaping: options.DisableURIPathEscaping,
|
||||
DisableSessionToken: options.DisableSessionToken,
|
||||
KeyDerivator: s.keyDerivator,
|
||||
}
|
||||
|
||||
|
|
@ -502,7 +513,8 @@ func (s *httpSigner) setRequiredSigningFields(headers http.Header, query url.Val
|
|||
|
||||
if s.IsPreSign {
|
||||
query.Set(v4Internal.AmzAlgorithmKey, signingAlgorithm)
|
||||
if sessionToken := s.Credentials.SessionToken; len(sessionToken) > 0 {
|
||||
sessionToken := s.Credentials.SessionToken
|
||||
if !s.DisableSessionToken && len(sessionToken) > 0 {
|
||||
query.Set("X-Amz-Security-Token", sessionToken)
|
||||
}
|
||||
|
||||
|
|
@ -512,7 +524,7 @@ func (s *httpSigner) setRequiredSigningFields(headers http.Header, query url.Val
|
|||
|
||||
headers[v4Internal.AmzDateKey] = append(headers[v4Internal.AmzDateKey][:0], amzDate)
|
||||
|
||||
if len(s.Credentials.SessionToken) > 0 {
|
||||
if !s.DisableSessionToken && len(s.Credentials.SessionToken) > 0 {
|
||||
headers[v4Internal.AmzSecurityTokenKey] = append(headers[v4Internal.AmzSecurityTokenKey][:0], s.Credentials.SessionToken)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,3 +1,15 @@
|
|||
# v1.25.8 (2023-11-28.3)
|
||||
|
||||
* **Bug Fix**: Correct resolution of S3Express auth disable toggle.
|
||||
|
||||
# v1.25.7 (2023-11-28.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.25.6 (2023-11-28)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.25.5 (2023-11-21)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
|
|
|||
|
|
@ -74,6 +74,8 @@ const (
|
|||
|
||||
awsIgnoreConfiguredEndpoints = "AWS_IGNORE_CONFIGURED_ENDPOINT_URLS"
|
||||
awsEndpointURL = "AWS_ENDPOINT_URL"
|
||||
|
||||
awsS3DisableExpressSessionAuthEnv = "AWS_S3_DISABLE_EXPRESS_SESSION_AUTH"
|
||||
)
|
||||
|
||||
var (
|
||||
|
|
@ -268,6 +270,13 @@ type EnvConfig struct {
|
|||
// Value to contain configured endpoints to be propagated to
|
||||
// corresponding endpoint resolution field.
|
||||
BaseEndpoint string
|
||||
|
||||
// Whether S3Express auth is disabled.
|
||||
//
|
||||
// This will NOT prevent requests from being made to S3Express buckets, it
|
||||
// will only bypass the modified endpoint routing and signing behaviors
|
||||
// associated with the feature.
|
||||
S3DisableExpressAuth *bool
|
||||
}
|
||||
|
||||
// loadEnvConfig reads configuration values from the OS's environment variables.
|
||||
|
|
@ -356,6 +365,10 @@ func NewEnvConfig() (EnvConfig, error) {
|
|||
return cfg, err
|
||||
}
|
||||
|
||||
if err := setBoolPtrFromEnvVal(&cfg.S3DisableExpressAuth, []string{awsS3DisableExpressSessionAuthEnv}); err != nil {
|
||||
return cfg, err
|
||||
}
|
||||
|
||||
return cfg, nil
|
||||
}
|
||||
|
||||
|
|
@ -736,3 +749,13 @@ func (c EnvConfig) GetEC2IMDSV1FallbackDisabled() (bool, bool) {
|
|||
|
||||
return *c.EC2IMDSv1Disabled, true
|
||||
}
|
||||
|
||||
// GetS3DisableExpressAuth returns the configured value for
|
||||
// [EnvConfig.S3DisableExpressAuth].
|
||||
func (c EnvConfig) GetS3DisableExpressAuth() (value, ok bool) {
|
||||
if c.S3DisableExpressAuth == nil {
|
||||
return false, false
|
||||
}
|
||||
|
||||
return *c.S3DisableExpressAuth, true
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
package config
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.25.5"
|
||||
const goModuleVersion = "1.25.8"
|
||||
|
|
|
|||
|
|
@ -206,6 +206,9 @@ type LoadOptions struct {
|
|||
|
||||
// The sdk app ID retrieved from env var or shared config to be added to request user agent header
|
||||
AppID string
|
||||
|
||||
// Whether S3 Express auth is disabled.
|
||||
S3DisableExpressAuth *bool
|
||||
}
|
||||
|
||||
func (o LoadOptions) getDefaultsMode(ctx context.Context) (aws.DefaultsMode, bool, error) {
|
||||
|
|
@ -1044,3 +1047,22 @@ func WithDefaultsMode(mode aws.DefaultsMode, optFns ...func(options *DefaultsMod
|
|||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
// GetS3DisableExpressAuth returns the configured value for
|
||||
// [EnvConfig.S3DisableExpressAuth].
|
||||
func (o LoadOptions) GetS3DisableExpressAuth() (value, ok bool) {
|
||||
if o.S3DisableExpressAuth == nil {
|
||||
return false, false
|
||||
}
|
||||
|
||||
return *o.S3DisableExpressAuth, true
|
||||
}
|
||||
|
||||
// WithS3DisableExpressAuth sets [LoadOptions.S3DisableExpressAuth]
|
||||
// to the value provided.
|
||||
func WithS3DisableExpressAuth(v bool) LoadOptionsFunc {
|
||||
return func(o *LoadOptions) error {
|
||||
o.S3DisableExpressAuth = &v
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -107,6 +107,8 @@ const (
|
|||
ignoreConfiguredEndpoints = "ignore_configured_endpoint_urls"
|
||||
|
||||
endpointURL = "endpoint_url"
|
||||
|
||||
s3DisableExpressSessionAuthKey = "s3_disable_express_session_auth"
|
||||
)
|
||||
|
||||
// defaultSharedConfigProfile allows for swapping the default profile for testing
|
||||
|
|
@ -316,6 +318,13 @@ type SharedConfig struct {
|
|||
|
||||
// Value to contain services section content.
|
||||
Services Services
|
||||
|
||||
// Whether S3Express auth is disabled.
|
||||
//
|
||||
// This will NOT prevent requests from being made to S3Express buckets, it
|
||||
// will only bypass the modified endpoint routing and signing behaviors
|
||||
// associated with the feature.
|
||||
S3DisableExpressAuth *bool
|
||||
}
|
||||
|
||||
func (c SharedConfig) getDefaultsMode(ctx context.Context) (value aws.DefaultsMode, ok bool, err error) {
|
||||
|
|
@ -435,6 +444,16 @@ func (c SharedConfig) GetUseFIPSEndpoint(ctx context.Context) (value aws.FIPSEnd
|
|||
return c.UseFIPSEndpoint, true, nil
|
||||
}
|
||||
|
||||
// GetS3DisableExpressAuth returns the configured value for
|
||||
// [SharedConfig.S3DisableExpressAuth].
|
||||
func (c SharedConfig) GetS3DisableExpressAuth() (value, ok bool) {
|
||||
if c.S3DisableExpressAuth == nil {
|
||||
return false, false
|
||||
}
|
||||
|
||||
return *c.S3DisableExpressAuth, true
|
||||
}
|
||||
|
||||
// GetCustomCABundle returns the custom CA bundle's PEM bytes if the file was
|
||||
func (c SharedConfig) getCustomCABundle(context.Context) (io.Reader, bool, error) {
|
||||
if len(c.CustomCABundle) == 0 {
|
||||
|
|
@ -1054,6 +1073,7 @@ func (c *SharedConfig) setFromIniSection(profile string, section ini.Section) er
|
|||
updateEndpointDiscoveryType(&c.EnableEndpointDiscovery, section, enableEndpointDiscoveryKey)
|
||||
updateBoolPtr(&c.S3UseARNRegion, section, s3UseARNRegionKey)
|
||||
updateBoolPtr(&c.S3DisableMultiRegionAccessPoints, section, s3DisableMultiRegionAccessPointsKey)
|
||||
updateBoolPtr(&c.S3DisableExpressAuth, section, s3DisableExpressSessionAuthKey)
|
||||
|
||||
if err := updateEC2MetadataServiceEndpointMode(&c.EC2IMDSEndpointMode, section, ec2MetadataServiceEndpointModeKey); err != nil {
|
||||
return fmt.Errorf("failed to load %s from shared config, %v", ec2MetadataServiceEndpointModeKey, err)
|
||||
|
|
|
|||
|
|
@ -1,3 +1,11 @@
|
|||
# v1.16.6 (2023-11-28.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.16.5 (2023-11-28)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.16.4 (2023-11-21)
|
||||
|
||||
* **Bug Fix**: Don't expect error responses to have a JSON payload in the endpointcreds provider.
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
package credentials
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.16.4"
|
||||
const goModuleVersion = "1.16.6"
|
||||
|
|
|
|||
|
|
@ -1,3 +1,7 @@
|
|||
# v1.14.6 (2023-11-28.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.14.5 (2023-11-20)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
package imds
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.14.5"
|
||||
const goModuleVersion = "1.14.6"
|
||||
|
|
|
|||
|
|
@ -16,6 +16,9 @@ const SigV4 = "sigv4"
|
|||
// Authentication Scheme Signature Version 4A
|
||||
const SigV4A = "sigv4a"
|
||||
|
||||
// SigV4S3Express identifies the S3 S3Express auth scheme.
|
||||
const SigV4S3Express = "sigv4-s3express"
|
||||
|
||||
// None is a constant representing the
|
||||
// None Authentication Scheme
|
||||
const None = "none"
|
||||
|
|
@ -24,9 +27,10 @@ const None = "none"
|
|||
// that indicates the list of supported AWS
|
||||
// authentication schemes
|
||||
var SupportedSchemes = map[string]bool{
|
||||
SigV4: true,
|
||||
SigV4A: true,
|
||||
None: true,
|
||||
SigV4: true,
|
||||
SigV4A: true,
|
||||
SigV4S3Express: true,
|
||||
None: true,
|
||||
}
|
||||
|
||||
// AuthenticationScheme is a representation of
|
||||
|
|
@ -93,10 +97,11 @@ func GetAuthenticationSchemes(p *smithy.Properties) ([]AuthenticationScheme, err
|
|||
for _, scheme := range authSchemes {
|
||||
authScheme, _ := scheme.(map[string]interface{})
|
||||
|
||||
switch authScheme["name"] {
|
||||
case SigV4:
|
||||
version := authScheme["name"].(string)
|
||||
switch version {
|
||||
case SigV4, SigV4S3Express:
|
||||
v4Scheme := AuthenticationSchemeV4{
|
||||
Name: SigV4,
|
||||
Name: version,
|
||||
SigningName: getSigningName(authScheme),
|
||||
SigningRegion: getSigningRegion(authScheme),
|
||||
DisableDoubleEncoding: getDisableDoubleEncoding(authScheme),
|
||||
|
|
|
|||
|
|
@ -1,3 +1,7 @@
|
|||
# v1.2.5 (2023-11-28.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.2.4 (2023-11-20)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
|
|
|||
2
vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/go_module_metadata.go
generated
vendored
2
vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/go_module_metadata.go
generated
vendored
|
|
@ -3,4 +3,4 @@
|
|||
package configsources
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.2.4"
|
||||
const goModuleVersion = "1.2.5"
|
||||
|
|
|
|||
|
|
@ -1,3 +1,7 @@
|
|||
# v2.5.5 (2023-11-28.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v2.5.4 (2023-11-20)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
|
|
|||
2
vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/go_module_metadata.go
generated
vendored
2
vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/go_module_metadata.go
generated
vendored
|
|
@ -3,4 +3,4 @@
|
|||
package endpoints
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "2.5.4"
|
||||
const goModuleVersion = "2.5.5"
|
||||
|
|
|
|||
4
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md
generated
vendored
4
vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md
generated
vendored
|
|
@ -1,3 +1,7 @@
|
|||
# v1.10.5 (2023-11-28.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.10.4 (2023-11-20)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
package presignedurl
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.10.4"
|
||||
const goModuleVersion = "1.10.5"
|
||||
|
|
|
|||
|
|
@ -1,3 +1,11 @@
|
|||
# v1.17.5 (2023-11-28.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.17.4 (2023-11-28)
|
||||
|
||||
* **Bug Fix**: Respect setting RetryMaxAttempts in functional options at client construction.
|
||||
|
||||
# v1.17.3 (2023-11-20)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
|
|
|||
|
|
@ -42,8 +42,6 @@ func New(options Options, optFns ...func(*Options)) *Client {
|
|||
|
||||
setResolvedDefaultsMode(&options)
|
||||
|
||||
resolveRetryer(&options)
|
||||
|
||||
resolveHTTPClient(&options)
|
||||
|
||||
resolveHTTPSignerV4(&options)
|
||||
|
|
@ -56,6 +54,8 @@ func New(options Options, optFns ...func(*Options)) *Client {
|
|||
fn(&options)
|
||||
}
|
||||
|
||||
resolveRetryer(&options)
|
||||
|
||||
ignoreAnonymousAuth(&options)
|
||||
|
||||
resolveAuthSchemes(&options)
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
package sso
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.17.3"
|
||||
const goModuleVersion = "1.17.5"
|
||||
|
|
|
|||
|
|
@ -1,3 +1,11 @@
|
|||
# v1.20.3 (2023-11-28.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.20.2 (2023-11-28)
|
||||
|
||||
* **Bug Fix**: Respect setting RetryMaxAttempts in functional options at client construction.
|
||||
|
||||
# v1.20.1 (2023-11-20)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
|
|
|||
|
|
@ -42,8 +42,6 @@ func New(options Options, optFns ...func(*Options)) *Client {
|
|||
|
||||
setResolvedDefaultsMode(&options)
|
||||
|
||||
resolveRetryer(&options)
|
||||
|
||||
resolveHTTPClient(&options)
|
||||
|
||||
resolveHTTPSignerV4(&options)
|
||||
|
|
@ -56,6 +54,8 @@ func New(options Options, optFns ...func(*Options)) *Client {
|
|||
fn(&options)
|
||||
}
|
||||
|
||||
resolveRetryer(&options)
|
||||
|
||||
ignoreAnonymousAuth(&options)
|
||||
|
||||
resolveAuthSchemes(&options)
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
package ssooidc
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.20.1"
|
||||
const goModuleVersion = "1.20.3"
|
||||
|
|
|
|||
|
|
@ -1,3 +1,11 @@
|
|||
# v1.25.6 (2023-11-28.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.25.5 (2023-11-28)
|
||||
|
||||
* **Bug Fix**: Respect setting RetryMaxAttempts in functional options at client construction.
|
||||
|
||||
# v1.25.4 (2023-11-20)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
|
|
|||
|
|
@ -46,8 +46,6 @@ func New(options Options, optFns ...func(*Options)) *Client {
|
|||
|
||||
setResolvedDefaultsMode(&options)
|
||||
|
||||
resolveRetryer(&options)
|
||||
|
||||
resolveHTTPClient(&options)
|
||||
|
||||
resolveHTTPSignerV4(&options)
|
||||
|
|
@ -60,6 +58,8 @@ func New(options Options, optFns ...func(*Options)) *Client {
|
|||
fn(&options)
|
||||
}
|
||||
|
||||
resolveRetryer(&options)
|
||||
|
||||
ignoreAnonymousAuth(&options)
|
||||
|
||||
resolveAuthSchemes(&options)
|
||||
|
|
@ -506,7 +506,7 @@ func (m *presignContextPolyfillMiddleware) HandleFinalize(ctx context.Context, i
|
|||
|
||||
schemeID := rscheme.Scheme.SchemeID()
|
||||
|
||||
if schemeID == "aws.auth#sigv4" {
|
||||
if schemeID == "aws.auth#sigv4" || schemeID == "com.amazonaws.s3#sigv4express" {
|
||||
if sn, ok := smithyhttp.GetSigV4SigningName(&rscheme.SignerProperties); ok {
|
||||
ctx = awsmiddleware.SetSigningName(ctx, sn)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
package sts
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.25.4"
|
||||
const goModuleVersion = "1.25.6"
|
||||
|
|
|
|||
|
|
@ -108,12 +108,13 @@ github.com/acomagu/bufpipe
|
|||
# github.com/agext/levenshtein v1.2.3
|
||||
## explicit
|
||||
github.com/agext/levenshtein
|
||||
# github.com/aws/aws-sdk-go-v2 v1.23.1
|
||||
# github.com/aws/aws-sdk-go-v2 v1.23.2
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/aws
|
||||
github.com/aws/aws-sdk-go-v2/aws/arn
|
||||
github.com/aws/aws-sdk-go-v2/aws/defaults
|
||||
github.com/aws/aws-sdk-go-v2/aws/middleware
|
||||
github.com/aws/aws-sdk-go-v2/aws/middleware/private/metrics
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/query
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/restjson
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/xml
|
||||
|
|
@ -138,10 +139,10 @@ github.com/aws/aws-sdk-go-v2/internal/timeconv
|
|||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi
|
||||
# github.com/aws/aws-sdk-go-v2/config v1.25.5
|
||||
# github.com/aws/aws-sdk-go-v2/config v1.25.8
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/config
|
||||
# github.com/aws/aws-sdk-go-v2/credentials v1.16.4
|
||||
# github.com/aws/aws-sdk-go-v2/credentials v1.16.6
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/credentials
|
||||
github.com/aws/aws-sdk-go-v2/credentials/ec2rolecreds
|
||||
|
|
@ -150,17 +151,17 @@ github.com/aws/aws-sdk-go-v2/credentials/endpointcreds/internal/client
|
|||
github.com/aws/aws-sdk-go-v2/credentials/processcreds
|
||||
github.com/aws/aws-sdk-go-v2/credentials/ssocreds
|
||||
github.com/aws/aws-sdk-go-v2/credentials/stscreds
|
||||
# github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.5
|
||||
# github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.6
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds/internal/config
|
||||
# github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.14.3
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager
|
||||
# github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.4
|
||||
# github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.5
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources
|
||||
# github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.4
|
||||
# github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.5
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2
|
||||
# github.com/aws/aws-sdk-go-v2/internal/ini v1.7.1
|
||||
|
|
@ -187,7 +188,7 @@ github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding
|
|||
# github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.4
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum
|
||||
# github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.4
|
||||
# github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.5
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url
|
||||
# github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.4
|
||||
|
|
@ -202,17 +203,17 @@ github.com/aws/aws-sdk-go-v2/service/s3/internal/arn
|
|||
github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations
|
||||
github.com/aws/aws-sdk-go-v2/service/s3/internal/endpoints
|
||||
github.com/aws/aws-sdk-go-v2/service/s3/types
|
||||
# github.com/aws/aws-sdk-go-v2/service/sso v1.17.3
|
||||
# github.com/aws/aws-sdk-go-v2/service/sso v1.17.5
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/service/sso
|
||||
github.com/aws/aws-sdk-go-v2/service/sso/internal/endpoints
|
||||
github.com/aws/aws-sdk-go-v2/service/sso/types
|
||||
# github.com/aws/aws-sdk-go-v2/service/ssooidc v1.20.1
|
||||
# github.com/aws/aws-sdk-go-v2/service/ssooidc v1.20.3
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc/internal/endpoints
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc/types
|
||||
# github.com/aws/aws-sdk-go-v2/service/sts v1.25.4
|
||||
# github.com/aws/aws-sdk-go-v2/service/sts v1.25.6
|
||||
## explicit; go 1.19
|
||||
github.com/aws/aws-sdk-go-v2/service/sts
|
||||
github.com/aws/aws-sdk-go-v2/service/sts/internal/endpoints
|
||||
|
|
|
|||
Loading…
Reference in New Issue