mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2024-12-24 11:20:18 +01:00
5b7e8d1309
* lib/backup/s3remote: update AWS SDK to v2 * Update lib/backup/s3remote/s3.go Co-authored-by: Aliaksandr Valialkin <valyala@victoriametrics.com> * lib/backup/s3remote: refactor error handling Co-authored-by: Aliaksandr Valialkin <valyala@victoriametrics.com>
44 lines
1.3 KiB
Go
44 lines
1.3 KiB
Go
package defaults
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/aws/aws-sdk-go-v2/aws"
|
|
)
|
|
|
|
// Configuration is the set of SDK configuration options that are determined based
|
|
// on the configured DefaultsMode.
|
|
type Configuration struct {
|
|
// RetryMode is the configuration's default retry mode API clients should
|
|
// use for constructing a Retryer.
|
|
RetryMode aws.RetryMode
|
|
|
|
// ConnectTimeout is the maximum amount of time a dial will wait for
|
|
// a connect to complete.
|
|
//
|
|
// See https://pkg.go.dev/net#Dialer.Timeout
|
|
ConnectTimeout *time.Duration
|
|
|
|
// TLSNegotiationTimeout specifies the maximum amount of time waiting to
|
|
// wait for a TLS handshake.
|
|
//
|
|
// See https://pkg.go.dev/net/http#Transport.TLSHandshakeTimeout
|
|
TLSNegotiationTimeout *time.Duration
|
|
}
|
|
|
|
// GetConnectTimeout returns the ConnectTimeout value, returns false if the value is not set.
|
|
func (c *Configuration) GetConnectTimeout() (time.Duration, bool) {
|
|
if c.ConnectTimeout == nil {
|
|
return 0, false
|
|
}
|
|
return *c.ConnectTimeout, true
|
|
}
|
|
|
|
// GetTLSNegotiationTimeout returns the TLSNegotiationTimeout value, returns false if the value is not set.
|
|
func (c *Configuration) GetTLSNegotiationTimeout() (time.Duration, bool) {
|
|
if c.TLSNegotiationTimeout == nil {
|
|
return 0, false
|
|
}
|
|
return *c.TLSNegotiationTimeout, true
|
|
}
|