mirror of
https://github.com/imgproxy/imgproxy.git
synced 2025-10-11 04:32:29 +02:00
NewDefaultConfig returns value, not pointer; Nested configs are defined as value
This commit is contained in:
@@ -1,6 +1,9 @@
|
|||||||
package auximageprovider
|
package auximageprovider
|
||||||
|
|
||||||
import "github.com/imgproxy/imgproxy/v3/config"
|
import (
|
||||||
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
|
)
|
||||||
|
|
||||||
// StaticConfig holds the configuration for the auxiliary image provider
|
// StaticConfig holds the configuration for the auxiliary image provider
|
||||||
type StaticConfig struct {
|
type StaticConfig struct {
|
||||||
@@ -10,8 +13,8 @@ type StaticConfig struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultStaticConfig creates a new default configuration for the auxiliary image provider
|
// NewDefaultStaticConfig creates a new default configuration for the auxiliary image provider
|
||||||
func NewDefaultStaticConfig() *StaticConfig {
|
func NewDefaultStaticConfig() StaticConfig {
|
||||||
return &StaticConfig{
|
return StaticConfig{
|
||||||
Base64Data: "",
|
Base64Data: "",
|
||||||
Path: "",
|
Path: "",
|
||||||
URL: "",
|
URL: "",
|
||||||
@@ -20,9 +23,7 @@ func NewDefaultStaticConfig() *StaticConfig {
|
|||||||
|
|
||||||
// LoadWatermarkStaticConfigFromEnv loads the watermark configuration from the environment
|
// LoadWatermarkStaticConfigFromEnv loads the watermark configuration from the environment
|
||||||
func LoadWatermarkStaticConfigFromEnv(c *StaticConfig) (*StaticConfig, error) {
|
func LoadWatermarkStaticConfigFromEnv(c *StaticConfig) (*StaticConfig, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultStaticConfig)
|
||||||
c = NewDefaultStaticConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.Base64Data = config.WatermarkData
|
c.Base64Data = config.WatermarkData
|
||||||
c.Path = config.WatermarkPath
|
c.Path = config.WatermarkPath
|
||||||
@@ -33,9 +34,7 @@ func LoadWatermarkStaticConfigFromEnv(c *StaticConfig) (*StaticConfig, error) {
|
|||||||
|
|
||||||
// LoadFallbackStaticConfigFromEnv loads the fallback configuration from the environment
|
// LoadFallbackStaticConfigFromEnv loads the fallback configuration from the environment
|
||||||
func LoadFallbackStaticConfigFromEnv(c *StaticConfig) (*StaticConfig, error) {
|
func LoadFallbackStaticConfigFromEnv(c *StaticConfig) (*StaticConfig, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultStaticConfig)
|
||||||
c = NewDefaultStaticConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.Base64Data = config.FallbackImageData
|
c.Base64Data = config.FallbackImageData
|
||||||
c.Path = config.FallbackImagePath
|
c.Path = config.FallbackImagePath
|
||||||
|
@@ -169,11 +169,11 @@ func (s *ImageProviderTestSuite) TestNewProvider() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
trc := transport.NewDefaultConfig()
|
trc := transport.NewDefaultConfig()
|
||||||
tr, err := transport.New(trc)
|
tr, err := transport.New(&trc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
fc := fetcher.NewDefaultConfig()
|
fc := fetcher.NewDefaultConfig()
|
||||||
f, err := fetcher.New(tr, fc)
|
f, err := fetcher.New(tr, &fc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
idf := imagedata.NewFactory(f)
|
idf := imagedata.NewFactory(f)
|
||||||
|
15
ensure/ensure.go
Normal file
15
ensure/ensure.go
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
package ensure
|
||||||
|
|
||||||
|
type EnsureFunc[T any] func() T
|
||||||
|
|
||||||
|
// Ensure ensures that the returned value is not nil.
|
||||||
|
// If the provided pointer is nil, the function calls the provided
|
||||||
|
// EnsureFunc to obtain a new value.
|
||||||
|
// Otherwise, it returns the original value.
|
||||||
|
func Ensure[T any](val *T, f EnsureFunc[T]) *T {
|
||||||
|
if val == nil {
|
||||||
|
v := f()
|
||||||
|
return &v
|
||||||
|
}
|
||||||
|
return val
|
||||||
|
}
|
@@ -5,6 +5,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
"github.com/imgproxy/imgproxy/v3/version"
|
"github.com/imgproxy/imgproxy/v3/version"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -19,8 +20,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new Config instance with default values.
|
// NewDefaultConfig returns a new Config instance with default values.
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
UserAgent: "imgproxy/" + version.Version,
|
UserAgent: "imgproxy/" + version.Version,
|
||||||
DownloadTimeout: 5 * time.Second,
|
DownloadTimeout: 5 * time.Second,
|
||||||
MaxRedirects: 10,
|
MaxRedirects: 10,
|
||||||
@@ -29,9 +30,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads config variables from env
|
// LoadConfigFromEnv loads config variables from env
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.UserAgent = config.UserAgent
|
c.UserAgent = config.UserAgent
|
||||||
c.DownloadTimeout = time.Duration(config.DownloadTimeout) * time.Second
|
c.DownloadTimeout = time.Duration(config.DownloadTimeout) * time.Second
|
||||||
|
@@ -5,6 +5,7 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Config represents handler config
|
// Config represents handler config
|
||||||
@@ -20,8 +21,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig creates a new configuration with defaults
|
// NewDefaultConfig creates a new configuration with defaults
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
PathPrefix: "",
|
PathPrefix: "",
|
||||||
CookiePassthrough: false,
|
CookiePassthrough: false,
|
||||||
ReportDownloadingErrors: true,
|
ReportDownloadingErrors: true,
|
||||||
@@ -35,9 +36,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads config from environment variables
|
// LoadConfigFromEnv loads config from environment variables
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.PathPrefix = config.PathPrefix
|
c.PathPrefix = config.PathPrefix
|
||||||
c.CookiePassthrough = config.CookiePassthrough
|
c.CookiePassthrough = config.CookiePassthrough
|
||||||
|
@@ -2,6 +2,7 @@ package stream
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
"github.com/imgproxy/imgproxy/v3/httpheaders"
|
"github.com/imgproxy/imgproxy/v3/httpheaders"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -18,8 +19,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new Config instance with default values.
|
// NewDefaultConfig returns a new Config instance with default values.
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
CookiePassthrough: false,
|
CookiePassthrough: false,
|
||||||
PassthroughRequestHeaders: []string{
|
PassthroughRequestHeaders: []string{
|
||||||
httpheaders.IfNoneMatch,
|
httpheaders.IfNoneMatch,
|
||||||
@@ -40,9 +41,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads config variables from environment
|
// LoadConfigFromEnv loads config variables from environment
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.CookiePassthrough = config.CookiePassthrough
|
c.CookiePassthrough = config.CookiePassthrough
|
||||||
|
|
||||||
|
@@ -57,16 +57,16 @@ func (s *HandlerTestSuite) SetupTest() {
|
|||||||
|
|
||||||
fc := fetcher.NewDefaultConfig()
|
fc := fetcher.NewDefaultConfig()
|
||||||
|
|
||||||
fetcher, err := fetcher.New(tr, fc)
|
fetcher, err := fetcher.New(tr, &fc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
cfg := NewDefaultConfig()
|
cfg := NewDefaultConfig()
|
||||||
|
|
||||||
hwc := headerwriter.NewDefaultConfig()
|
hwc := headerwriter.NewDefaultConfig()
|
||||||
hw, err := headerwriter.New(hwc)
|
hw, err := headerwriter.New(&hwc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
h, err := New(cfg, hw, fetcher)
|
h, err := New(&cfg, hw, fetcher)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
s.handler = h
|
s.handler = h
|
||||||
}
|
}
|
||||||
@@ -358,7 +358,7 @@ func (s *HandlerTestSuite) TestHandlerCacheControl() {
|
|||||||
|
|
||||||
fc := fetcher.NewDefaultConfig()
|
fc := fetcher.NewDefaultConfig()
|
||||||
|
|
||||||
fetcher, err := fetcher.New(tr, fc)
|
fetcher, err := fetcher.New(tr, &fc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
cfg := NewDefaultConfig()
|
cfg := NewDefaultConfig()
|
||||||
@@ -366,10 +366,10 @@ func (s *HandlerTestSuite) TestHandlerCacheControl() {
|
|||||||
hwc.CacheControlPassthrough = tc.cacheControlPassthrough
|
hwc.CacheControlPassthrough = tc.cacheControlPassthrough
|
||||||
hwc.DefaultTTL = 4242
|
hwc.DefaultTTL = 4242
|
||||||
|
|
||||||
hw, err := headerwriter.New(hwc)
|
hw, err := headerwriter.New(&hwc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
handler, err := New(cfg, hw, fetcher)
|
handler, err := New(&cfg, hw, fetcher)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
req := httptest.NewRequest("GET", "/", nil)
|
req := httptest.NewRequest("GET", "/", nil)
|
||||||
@@ -454,17 +454,17 @@ func (s *HandlerTestSuite) TestHandlerCookiePassthrough() {
|
|||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
fc := fetcher.NewDefaultConfig()
|
fc := fetcher.NewDefaultConfig()
|
||||||
fetcher, err := fetcher.New(tr, fc)
|
fetcher, err := fetcher.New(tr, &fc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
cfg := NewDefaultConfig()
|
cfg := NewDefaultConfig()
|
||||||
cfg.CookiePassthrough = true
|
cfg.CookiePassthrough = true
|
||||||
|
|
||||||
hwc := headerwriter.NewDefaultConfig()
|
hwc := headerwriter.NewDefaultConfig()
|
||||||
hw, err := headerwriter.New(hwc)
|
hw, err := headerwriter.New(&hwc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
handler, err := New(cfg, hw, fetcher)
|
handler, err := New(&cfg, hw, fetcher)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
data := s.readTestFile("test1.png")
|
data := s.readTestFile("test1.png")
|
||||||
@@ -514,7 +514,7 @@ func (s *HandlerTestSuite) TestHandlerCanonicalHeader() {
|
|||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
fc := fetcher.NewDefaultConfig()
|
fc := fetcher.NewDefaultConfig()
|
||||||
fetcher, err := fetcher.New(tr, fc)
|
fetcher, err := fetcher.New(tr, &fc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
cfg := NewDefaultConfig()
|
cfg := NewDefaultConfig()
|
||||||
@@ -522,10 +522,10 @@ func (s *HandlerTestSuite) TestHandlerCanonicalHeader() {
|
|||||||
|
|
||||||
hwc.SetCanonicalHeader = sc
|
hwc.SetCanonicalHeader = sc
|
||||||
|
|
||||||
hw, err := headerwriter.New(hwc)
|
hw, err := headerwriter.New(&hwc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
handler, err := New(cfg, hw, fetcher)
|
handler, err := New(&cfg, hw, fetcher)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
req := httptest.NewRequest("GET", "/", nil)
|
req := httptest.NewRequest("GET", "/", nil)
|
||||||
|
@@ -4,6 +4,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Config is the package-local configuration
|
// Config is the package-local configuration
|
||||||
@@ -17,8 +18,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new Config instance with default values.
|
// NewDefaultConfig returns a new Config instance with default values.
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
SetCanonicalHeader: false,
|
SetCanonicalHeader: false,
|
||||||
DefaultTTL: 31536000,
|
DefaultTTL: 31536000,
|
||||||
FallbackImageTTL: 0,
|
FallbackImageTTL: 0,
|
||||||
@@ -30,9 +31,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv overrides configuration variables from environment
|
// LoadConfigFromEnv overrides configuration variables from environment
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.SetCanonicalHeader = config.SetCanonicalHeader
|
c.SetCanonicalHeader = config.SetCanonicalHeader
|
||||||
c.DefaultTTL = config.TTL
|
c.DefaultTTL = config.TTL
|
||||||
|
@@ -38,11 +38,11 @@ func (s *ProcessingTestSuite) SetupSuite() {
|
|||||||
logrus.SetOutput(io.Discard)
|
logrus.SetOutput(io.Discard)
|
||||||
|
|
||||||
trc := transport.NewDefaultConfig()
|
trc := transport.NewDefaultConfig()
|
||||||
tr, err := transport.New(trc)
|
tr, err := transport.New(&trc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
fc := fetcher.NewDefaultConfig()
|
fc := fetcher.NewDefaultConfig()
|
||||||
f, err := fetcher.New(tr, fc)
|
f, err := fetcher.New(tr, &fc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
s.idf = imagedata.NewFactory(f)
|
s.idf = imagedata.NewFactory(f)
|
||||||
|
@@ -53,7 +53,7 @@ func (s *ProcessingHandlerTestSuite) SetupSuite() {
|
|||||||
logrus.SetOutput(io.Discard)
|
logrus.SetOutput(io.Discard)
|
||||||
|
|
||||||
cfg := server.NewDefaultConfig()
|
cfg := server.NewDefaultConfig()
|
||||||
r, err := server.NewRouter(cfg)
|
r, err := server.NewRouter(&cfg)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
s.router = buildRouter(r)
|
s.router = buildRouter(r)
|
||||||
|
@@ -5,6 +5,7 @@ import (
|
|||||||
"runtime"
|
"runtime"
|
||||||
|
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Config represents handler config
|
// Config represents handler config
|
||||||
@@ -14,8 +15,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig creates a new configuration with defaults
|
// NewDefaultConfig creates a new configuration with defaults
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
RequestsQueueSize: 0,
|
RequestsQueueSize: 0,
|
||||||
Workers: runtime.GOMAXPROCS(0) * 2,
|
Workers: runtime.GOMAXPROCS(0) * 2,
|
||||||
}
|
}
|
||||||
@@ -23,9 +24,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads config from environment variables
|
// LoadConfigFromEnv loads config from environment variables
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.RequestsQueueSize = config.RequestsQueueSize
|
c.RequestsQueueSize = config.RequestsQueueSize
|
||||||
c.Workers = config.Workers
|
c.Workers = config.Workers
|
||||||
|
@@ -6,6 +6,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
@@ -32,8 +33,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns default config values
|
// NewDefaultConfig returns default config values
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
Network: "tcp",
|
Network: "tcp",
|
||||||
Bind: ":8080",
|
Bind: ":8080",
|
||||||
PathPrefix: "",
|
PathPrefix: "",
|
||||||
@@ -52,9 +53,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv overrides current values with environment variables
|
// LoadConfigFromEnv overrides current values with environment variables
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.Network = config.Network
|
c.Network = config.Network
|
||||||
c.Bind = config.Bind
|
c.Bind = config.Bind
|
||||||
|
@@ -19,7 +19,7 @@ func (s *RouterTestSuite) SetupTest() {
|
|||||||
c := NewDefaultConfig()
|
c := NewDefaultConfig()
|
||||||
|
|
||||||
c.PathPrefix = "/api"
|
c.PathPrefix = "/api"
|
||||||
r, err := NewRouter(c)
|
r, err := NewRouter(&c)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
s.router = r
|
s.router = r
|
||||||
|
@@ -22,7 +22,7 @@ type ServerTestSuite struct {
|
|||||||
func (s *ServerTestSuite) SetupTest() {
|
func (s *ServerTestSuite) SetupTest() {
|
||||||
c := NewDefaultConfig()
|
c := NewDefaultConfig()
|
||||||
|
|
||||||
s.config = c
|
s.config = &c
|
||||||
s.config.Bind = "127.0.0.1:0" // Use port 0 for auto-assignment
|
s.config.Bind = "127.0.0.1:0" // Use port 0 for auto-assignment
|
||||||
r, err := NewRouter(s.config)
|
r, err := NewRouter(s.config)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
@@ -46,7 +46,7 @@ func (s *ServerTestSuite) TestStartServerWithInvalidBind() {
|
|||||||
invalidConfig := NewDefaultConfig()
|
invalidConfig := NewDefaultConfig()
|
||||||
invalidConfig.Bind = "-1.-1.-1.-1" // Invalid address
|
invalidConfig.Bind = "-1.-1.-1.-1" // Invalid address
|
||||||
|
|
||||||
r, err := NewRouter(invalidConfig)
|
r, err := NewRouter(&invalidConfig)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
server, err := Start(cancelWrapper, r)
|
server, err := Start(cancelWrapper, r)
|
||||||
@@ -113,7 +113,7 @@ func (s *ServerTestSuite) TestWithCORS() {
|
|||||||
config := NewDefaultConfig()
|
config := NewDefaultConfig()
|
||||||
config.CORSAllowOrigin = tt.corsAllowOrigin
|
config.CORSAllowOrigin = tt.corsAllowOrigin
|
||||||
|
|
||||||
router, err := NewRouter(config)
|
router, err := NewRouter(&config)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
wrappedHandler := router.WithCORS(s.mockHandler)
|
wrappedHandler := router.WithCORS(s.mockHandler)
|
||||||
@@ -159,7 +159,7 @@ func (s *ServerTestSuite) TestWithSecret() {
|
|||||||
config := NewDefaultConfig()
|
config := NewDefaultConfig()
|
||||||
config.Secret = tt.secret
|
config.Secret = tt.secret
|
||||||
|
|
||||||
router, err := NewRouter(config)
|
router, err := NewRouter(&config)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
wrappedHandler := router.WithSecret(s.mockHandler)
|
wrappedHandler := router.WithSecret(s.mockHandler)
|
||||||
|
@@ -23,11 +23,11 @@ func (s *SvgTestSuite) SetupSuite() {
|
|||||||
config.Reset()
|
config.Reset()
|
||||||
|
|
||||||
trc := transport.NewDefaultConfig()
|
trc := transport.NewDefaultConfig()
|
||||||
tr, err := transport.New(trc)
|
tr, err := transport.New(&trc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
fc := fetcher.NewDefaultConfig()
|
fc := fetcher.NewDefaultConfig()
|
||||||
f, err := fetcher.New(tr, fc)
|
f, err := fetcher.New(tr, &fc)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
s.idf = imagedata.NewFactory(f)
|
s.idf = imagedata.NewFactory(f)
|
||||||
|
@@ -49,11 +49,11 @@ func (s *AzureTestSuite) SetupSuite() {
|
|||||||
tc := generichttp.NewDefaultConfig()
|
tc := generichttp.NewDefaultConfig()
|
||||||
tc.IgnoreSslVerification = true
|
tc.IgnoreSslVerification = true
|
||||||
|
|
||||||
trans, gerr := generichttp.New(false, tc)
|
trans, gerr := generichttp.New(false, &tc)
|
||||||
s.Require().NoError(gerr)
|
s.Require().NoError(gerr)
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
s.transport, err = New(config, trans)
|
s.transport, err = New(&config, trans)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,6 +4,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Config holds the configuration for Azure Blob Storage transport
|
// Config holds the configuration for Azure Blob Storage transport
|
||||||
@@ -14,8 +15,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new default configuration for Azure Blob Storage transport
|
// NewDefaultConfig returns a new default configuration for Azure Blob Storage transport
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
Name: "",
|
Name: "",
|
||||||
Endpoint: "",
|
Endpoint: "",
|
||||||
Key: "",
|
Key: "",
|
||||||
@@ -24,9 +25,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads configuration from the global config package
|
// LoadConfigFromEnv loads configuration from the global config package
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.Name = config.ABSName
|
c.Name = config.ABSName
|
||||||
c.Endpoint = config.ABSEndpoint
|
c.Endpoint = config.ABSEndpoint
|
||||||
|
@@ -4,6 +4,7 @@ package transport
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
"github.com/imgproxy/imgproxy/v3/transport/azure"
|
"github.com/imgproxy/imgproxy/v3/transport/azure"
|
||||||
"github.com/imgproxy/imgproxy/v3/transport/fs"
|
"github.com/imgproxy/imgproxy/v3/transport/fs"
|
||||||
"github.com/imgproxy/imgproxy/v3/transport/gcs"
|
"github.com/imgproxy/imgproxy/v3/transport/gcs"
|
||||||
@@ -14,26 +15,26 @@ import (
|
|||||||
|
|
||||||
// Config represents configuration of the transport package
|
// Config represents configuration of the transport package
|
||||||
type Config struct {
|
type Config struct {
|
||||||
HTTP *generichttp.Config
|
HTTP generichttp.Config
|
||||||
|
|
||||||
Local *fs.Config
|
Local fs.Config
|
||||||
|
|
||||||
ABSEnabled bool
|
ABSEnabled bool
|
||||||
ABS *azure.Config
|
ABS azure.Config
|
||||||
|
|
||||||
GCSEnabled bool
|
GCSEnabled bool
|
||||||
GCS *gcs.Config
|
GCS gcs.Config
|
||||||
|
|
||||||
S3Enabled bool
|
S3Enabled bool
|
||||||
S3 *s3.Config
|
S3 s3.Config
|
||||||
|
|
||||||
SwiftEnabled bool
|
SwiftEnabled bool
|
||||||
Swift *swift.Config
|
Swift swift.Config
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new default transport configuration
|
// NewDefaultConfig returns a new default transport configuration
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
HTTP: generichttp.NewDefaultConfig(),
|
HTTP: generichttp.NewDefaultConfig(),
|
||||||
Local: fs.NewDefaultConfig(),
|
Local: fs.NewDefaultConfig(),
|
||||||
ABSEnabled: false,
|
ABSEnabled: false,
|
||||||
@@ -49,33 +50,31 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads transport configuration from environment variables
|
// LoadConfigFromEnv loads transport configuration from environment variables
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
|
|
||||||
if c.HTTP, err = generichttp.LoadConfigFromEnv(c.HTTP); err != nil {
|
if _, err = generichttp.LoadConfigFromEnv(&c.HTTP); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if c.Local, err = fs.LoadConfigFromEnv(c.Local); err != nil {
|
if _, err = fs.LoadConfigFromEnv(&c.Local); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if c.ABS, err = azure.LoadConfigFromEnv(c.ABS); err != nil {
|
if _, err = azure.LoadConfigFromEnv(&c.ABS); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if c.GCS, err = gcs.LoadConfigFromEnv(c.GCS); err != nil {
|
if _, err = gcs.LoadConfigFromEnv(&c.GCS); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if c.S3, err = s3.LoadConfigFromEnv(c.S3); err != nil {
|
if _, err = s3.LoadConfigFromEnv(&c.S3); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if c.Swift, err = swift.LoadConfigFromEnv(c.Swift); err != nil {
|
if _, err = swift.LoadConfigFromEnv(&c.Swift); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -6,6 +6,7 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Config holds the configuration for local file system transport
|
// Config holds the configuration for local file system transport
|
||||||
@@ -14,17 +15,15 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new default configuration for local file system transport
|
// NewDefaultConfig returns a new default configuration for local file system transport
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
Root: "",
|
Root: "",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// LoadConfigFromEnv loads configuration from the global config package
|
// LoadConfigFromEnv loads configuration from the global config package
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.Root = config.LocalFileSystemRoot
|
c.Root = config.LocalFileSystemRoot
|
||||||
|
|
||||||
|
@@ -1,6 +1,9 @@
|
|||||||
package gcs
|
package gcs
|
||||||
|
|
||||||
import "github.com/imgproxy/imgproxy/v3/config"
|
import (
|
||||||
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
|
)
|
||||||
|
|
||||||
// Config holds the configuration for Google Cloud Storage transport
|
// Config holds the configuration for Google Cloud Storage transport
|
||||||
type Config struct {
|
type Config struct {
|
||||||
@@ -9,8 +12,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new default configuration for Google Cloud Storage transport
|
// NewDefaultConfig returns a new default configuration for Google Cloud Storage transport
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
Key: "",
|
Key: "",
|
||||||
Endpoint: "",
|
Endpoint: "",
|
||||||
}
|
}
|
||||||
@@ -18,9 +21,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads configuration from the global config package
|
// LoadConfigFromEnv loads configuration from the global config package
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.Key = config.GCSKey
|
c.Key = config.GCSKey
|
||||||
c.Endpoint = config.GCSEndpoint
|
c.Endpoint = config.GCSEndpoint
|
||||||
|
@@ -74,10 +74,10 @@ func (s *GCSTestSuite) SetupSuite() {
|
|||||||
tc := generichttp.NewDefaultConfig()
|
tc := generichttp.NewDefaultConfig()
|
||||||
tc.IgnoreSslVerification = true
|
tc.IgnoreSslVerification = true
|
||||||
|
|
||||||
trans, gerr := generichttp.New(false, tc)
|
trans, gerr := generichttp.New(false, &tc)
|
||||||
s.Require().NoError(gerr)
|
s.Require().NoError(gerr)
|
||||||
|
|
||||||
s.transport, err = New(config, trans)
|
s.transport, err = New(&config, trans)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -5,6 +5,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Config holds the configuration for the generic HTTP transport
|
// Config holds the configuration for the generic HTTP transport
|
||||||
@@ -14,8 +15,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new default configuration for the generic HTTP transport
|
// NewDefaultConfig returns a new default configuration for the generic HTTP transport
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
ClientKeepAliveTimeout: 90 * time.Second,
|
ClientKeepAliveTimeout: 90 * time.Second,
|
||||||
IgnoreSslVerification: false,
|
IgnoreSslVerification: false,
|
||||||
}
|
}
|
||||||
@@ -23,9 +24,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads configuration from the global config package
|
// LoadConfigFromEnv loads configuration from the global config package
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.ClientKeepAliveTimeout = time.Duration(config.ClientKeepAliveTimeout) * time.Second
|
c.ClientKeepAliveTimeout = time.Duration(config.ClientKeepAliveTimeout) * time.Second
|
||||||
c.IgnoreSslVerification = config.IgnoreSslVerification
|
c.IgnoreSslVerification = config.IgnoreSslVerification
|
||||||
|
@@ -1,6 +1,9 @@
|
|||||||
package s3
|
package s3
|
||||||
|
|
||||||
import "github.com/imgproxy/imgproxy/v3/config"
|
import (
|
||||||
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
|
)
|
||||||
|
|
||||||
// Config holds the configuration for S3 transport
|
// Config holds the configuration for S3 transport
|
||||||
type Config struct {
|
type Config struct {
|
||||||
@@ -13,8 +16,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new default configuration for S3 transport
|
// NewDefaultConfig returns a new default configuration for S3 transport
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
Region: "",
|
Region: "",
|
||||||
Endpoint: "",
|
Endpoint: "",
|
||||||
EndpointUsePathStyle: true,
|
EndpointUsePathStyle: true,
|
||||||
@@ -26,9 +29,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads configuration from the global config package
|
// LoadConfigFromEnv loads configuration from the global config package
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.Region = config.S3Region
|
c.Region = config.S3Region
|
||||||
c.Endpoint = config.S3Endpoint
|
c.Endpoint = config.S3Endpoint
|
||||||
|
@@ -42,11 +42,11 @@ func (s *S3TestSuite) SetupSuite() {
|
|||||||
tc := generichttp.NewDefaultConfig()
|
tc := generichttp.NewDefaultConfig()
|
||||||
tc.IgnoreSslVerification = true
|
tc.IgnoreSslVerification = true
|
||||||
|
|
||||||
trans, gerr := generichttp.New(false, tc)
|
trans, gerr := generichttp.New(false, &tc)
|
||||||
s.Require().NoError(gerr)
|
s.Require().NoError(gerr)
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
s.transport, err = New(config, trans)
|
s.transport, err = New(&config, trans)
|
||||||
s.Require().NoError(err)
|
s.Require().NoError(err)
|
||||||
|
|
||||||
err = backend.CreateBucket("test")
|
err = backend.CreateBucket("test")
|
||||||
|
@@ -4,6 +4,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/imgproxy/imgproxy/v3/config"
|
"github.com/imgproxy/imgproxy/v3/config"
|
||||||
|
"github.com/imgproxy/imgproxy/v3/ensure"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Config holds the configuration for Swift transport
|
// Config holds the configuration for Swift transport
|
||||||
@@ -19,8 +20,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewDefaultConfig returns a new default configuration for Swift transport
|
// NewDefaultConfig returns a new default configuration for Swift transport
|
||||||
func NewDefaultConfig() *Config {
|
func NewDefaultConfig() Config {
|
||||||
return &Config{
|
return Config{
|
||||||
Username: "",
|
Username: "",
|
||||||
APIKey: "",
|
APIKey: "",
|
||||||
AuthURL: "",
|
AuthURL: "",
|
||||||
@@ -34,9 +35,7 @@ func NewDefaultConfig() *Config {
|
|||||||
|
|
||||||
// LoadConfigFromEnv loads configuration from the global config package
|
// LoadConfigFromEnv loads configuration from the global config package
|
||||||
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
func LoadConfigFromEnv(c *Config) (*Config, error) {
|
||||||
if c == nil {
|
c = ensure.Ensure(c, NewDefaultConfig)
|
||||||
c = NewDefaultConfig()
|
|
||||||
}
|
|
||||||
|
|
||||||
c.Username = config.SwiftUsername
|
c.Username = config.SwiftUsername
|
||||||
c.APIKey = config.SwiftAPIKey
|
c.APIKey = config.SwiftAPIKey
|
||||||
|
@@ -36,16 +36,16 @@ func (s *SwiftTestSuite) SetupSuite() {
|
|||||||
config.APIKey = swifttest.TEST_ACCOUNT
|
config.APIKey = swifttest.TEST_ACCOUNT
|
||||||
config.AuthVersion = 1
|
config.AuthVersion = 1
|
||||||
|
|
||||||
s.setupTestFile(config)
|
s.setupTestFile(&config)
|
||||||
|
|
||||||
tc := generichttp.NewDefaultConfig()
|
tc := generichttp.NewDefaultConfig()
|
||||||
tc.IgnoreSslVerification = true
|
tc.IgnoreSslVerification = true
|
||||||
|
|
||||||
trans, gerr := generichttp.New(false, tc)
|
trans, gerr := generichttp.New(false, &tc)
|
||||||
s.Require().NoError(gerr)
|
s.Require().NoError(gerr)
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
s.transport, err = New(config, trans)
|
s.transport, err = New(&config, trans)
|
||||||
s.Require().NoError(err, "failed to initialize swift transport")
|
s.Require().NoError(err, "failed to initialize swift transport")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -27,7 +27,7 @@ func New(config *Config) (*Transport, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
transport, err := generichttp.New(true, config.HTTP)
|
transport, err := generichttp.New(true, &config.HTTP)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@@ -71,17 +71,17 @@ func (t *Transport) IsProtocolRegistered(scheme string) bool {
|
|||||||
|
|
||||||
// RegisterAllProtocols registers all enabled protocols in the given transport
|
// RegisterAllProtocols registers all enabled protocols in the given transport
|
||||||
func (t *Transport) registerAllProtocols() error {
|
func (t *Transport) registerAllProtocols() error {
|
||||||
transp, err := generichttp.New(false, t.config.HTTP)
|
transp, err := generichttp.New(false, &t.config.HTTP)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if t.config.Local.Root != "" {
|
if t.config.Local.Root != "" {
|
||||||
t.RegisterProtocol("local", fsTransport.New(t.config.Local))
|
t.RegisterProtocol("local", fsTransport.New(&t.config.Local))
|
||||||
}
|
}
|
||||||
|
|
||||||
if t.config.S3Enabled {
|
if t.config.S3Enabled {
|
||||||
if tr, err := s3Transport.New(t.config.S3, transp); err != nil {
|
if tr, err := s3Transport.New(&t.config.S3, transp); err != nil {
|
||||||
return err
|
return err
|
||||||
} else {
|
} else {
|
||||||
t.RegisterProtocol("s3", tr)
|
t.RegisterProtocol("s3", tr)
|
||||||
@@ -89,7 +89,7 @@ func (t *Transport) registerAllProtocols() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if t.config.GCSEnabled {
|
if t.config.GCSEnabled {
|
||||||
if tr, err := gcsTransport.New(t.config.GCS, transp); err != nil {
|
if tr, err := gcsTransport.New(&t.config.GCS, transp); err != nil {
|
||||||
return err
|
return err
|
||||||
} else {
|
} else {
|
||||||
t.RegisterProtocol("gs", tr)
|
t.RegisterProtocol("gs", tr)
|
||||||
@@ -97,7 +97,7 @@ func (t *Transport) registerAllProtocols() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if t.config.ABSEnabled {
|
if t.config.ABSEnabled {
|
||||||
if tr, err := azureTransport.New(t.config.ABS, transp); err != nil {
|
if tr, err := azureTransport.New(&t.config.ABS, transp); err != nil {
|
||||||
return err
|
return err
|
||||||
} else {
|
} else {
|
||||||
t.RegisterProtocol("abs", tr)
|
t.RegisterProtocol("abs", tr)
|
||||||
@@ -105,7 +105,7 @@ func (t *Transport) registerAllProtocols() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if t.config.SwiftEnabled {
|
if t.config.SwiftEnabled {
|
||||||
if tr, err := swiftTransport.New(t.config.Swift, transp); err != nil {
|
if tr, err := swiftTransport.New(&t.config.Swift, transp); err != nil {
|
||||||
return err
|
return err
|
||||||
} else {
|
} else {
|
||||||
t.RegisterProtocol("swift", tr)
|
t.RegisterProtocol("swift", tr)
|
||||||
|
Reference in New Issue
Block a user