mirror of
https://gitee.com/milvus-io/milvus.git
synced 2024-12-05 13:28:49 +08:00
c81909bfab
issue: https://github.com/milvus-io/milvus/issues/30709 pr: #31292 Signed-off-by: yhmo <yihua.mo@zilliz.com> Co-authored-by: Chen Rao <chenrao317328@163.com>
111 lines
2.0 KiB
Go
111 lines
2.0 KiB
Go
package storage
|
|
|
|
// Option for setting params used by chunk manager client.
|
|
type config struct {
|
|
address string
|
|
bucketName string
|
|
accessKeyID string
|
|
secretAccessKeyID string
|
|
useSSL bool
|
|
sslCACert string
|
|
createBucket bool
|
|
rootPath string
|
|
useIAM bool
|
|
cloudProvider string
|
|
iamEndpoint string
|
|
useVirtualHost bool
|
|
region string
|
|
requestTimeoutMs int64
|
|
}
|
|
|
|
func newDefaultConfig() *config {
|
|
return &config{}
|
|
}
|
|
|
|
// Option is used to config the retry function.
|
|
type Option func(*config)
|
|
|
|
func Address(addr string) Option {
|
|
return func(c *config) {
|
|
c.address = addr
|
|
}
|
|
}
|
|
|
|
func BucketName(bucketName string) Option {
|
|
return func(c *config) {
|
|
c.bucketName = bucketName
|
|
}
|
|
}
|
|
|
|
func AccessKeyID(accessKeyID string) Option {
|
|
return func(c *config) {
|
|
c.accessKeyID = accessKeyID
|
|
}
|
|
}
|
|
|
|
func SecretAccessKeyID(secretAccessKeyID string) Option {
|
|
return func(c *config) {
|
|
c.secretAccessKeyID = secretAccessKeyID
|
|
}
|
|
}
|
|
|
|
func UseSSL(useSSL bool) Option {
|
|
return func(c *config) {
|
|
c.useSSL = useSSL
|
|
}
|
|
}
|
|
|
|
func SslCACert(sslCACert string) Option {
|
|
return func(c *config) {
|
|
c.sslCACert = sslCACert
|
|
}
|
|
}
|
|
|
|
func CreateBucket(createBucket bool) Option {
|
|
return func(c *config) {
|
|
c.createBucket = createBucket
|
|
}
|
|
}
|
|
|
|
func RootPath(rootPath string) Option {
|
|
return func(c *config) {
|
|
c.rootPath = rootPath
|
|
}
|
|
}
|
|
|
|
func UseIAM(useIAM bool) Option {
|
|
return func(c *config) {
|
|
c.useIAM = useIAM
|
|
}
|
|
}
|
|
|
|
func CloudProvider(cloudProvider string) Option {
|
|
return func(c *config) {
|
|
c.cloudProvider = cloudProvider
|
|
}
|
|
}
|
|
|
|
func IAMEndpoint(iamEndpoint string) Option {
|
|
return func(c *config) {
|
|
c.iamEndpoint = iamEndpoint
|
|
}
|
|
}
|
|
|
|
func UseVirtualHost(useVirtualHost bool) Option {
|
|
return func(c *config) {
|
|
c.useVirtualHost = useVirtualHost
|
|
}
|
|
}
|
|
|
|
func Region(region string) Option {
|
|
return func(c *config) {
|
|
c.region = region
|
|
}
|
|
}
|
|
|
|
func RequestTimeout(requestTimeoutMs int64) Option {
|
|
return func(c *config) {
|
|
c.requestTimeoutMs = requestTimeoutMs
|
|
}
|
|
}
|