From 2bcd4f5a176a6eecbf633cc5bebc986141dbeeb5 Mon Sep 17 00:00:00 2001 From: Willy Kloucek Date: Fri, 17 Dec 2021 16:54:26 +0100 Subject: [PATCH] directly pass env to config --- accounts/pkg/command/root.go | 9 +-------- glauth/pkg/command/root.go | 9 +-------- go.mod | 2 +- graph-explorer/pkg/command/root.go | 11 ++--------- graph/pkg/command/root.go | 9 +-------- idp/pkg/command/root.go | 9 +-------- ocs/pkg/command/root.go | 9 +-------- proxy/pkg/command/root.go | 9 +-------- settings/pkg/command/root.go | 9 +-------- store/pkg/command/root.go | 11 ++--------- thumbnails/pkg/command/root.go | 10 +--------- web/pkg/command/root.go | 9 +-------- webdav/pkg/command/root.go | 9 +-------- 13 files changed, 15 insertions(+), 100 deletions(-) diff --git a/accounts/pkg/command/root.go b/accounts/pkg/command/root.go index 366abad0fd..b844800076 100644 --- a/accounts/pkg/command/root.go +++ b/accounts/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" "github.com/owncloud/ocis/accounts/pkg/config" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" @@ -79,13 +78,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/glauth/pkg/command/root.go b/glauth/pkg/command/root.go index 3b16d07a21..e46b8c014c 100644 --- a/glauth/pkg/command/root.go +++ b/glauth/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" "github.com/owncloud/ocis/glauth/pkg/config" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" @@ -71,13 +70,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/go.mod b/go.mod index 8a244315ee..92a89c6e9e 100644 --- a/go.mod +++ b/go.mod @@ -35,7 +35,6 @@ require ( github.com/gorilla/mux v1.8.0 github.com/grpc-ecosystem/grpc-gateway/v2 v2.7.2 github.com/iancoleman/strcase v0.2.0 - github.com/imdario/mergo v0.3.12 github.com/justinas/alice v1.2.0 github.com/libregraph/lico v0.53.1 github.com/mennanov/fieldmask-utils v0.5.0 @@ -151,6 +150,7 @@ require ( github.com/hashicorp/go-plugin v1.4.3 // indirect github.com/hashicorp/yamux v0.0.0-20211028200310-0bc27b27de87 // indirect github.com/huandu/xstrings v1.3.2 // indirect + github.com/imdario/mergo v0.3.12 // indirect github.com/inconshreveable/mousetrap v1.0.0 // indirect github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect diff --git a/graph-explorer/pkg/command/root.go b/graph-explorer/pkg/command/root.go index f99e3eaf34..034fb7ea24 100644 --- a/graph-explorer/pkg/command/root.go +++ b/graph-explorer/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" "github.com/owncloud/ocis/graph-explorer/pkg/config" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" @@ -56,7 +55,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { return err } - // provide with defaults for shared logging, since we need a valid destination address for BindEnv. + // provide with defaults for shared logging, since we need a valid destination address for BindEnv. if cfg.Log == nil && cfg.Commons != nil && cfg.Commons.Log != nil { cfg.Log = &config.Log{ Level: cfg.Commons.Log.Level, @@ -69,13 +68,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/graph/pkg/command/root.go b/graph/pkg/command/root.go index 2492597ef8..5df88df463 100644 --- a/graph/pkg/command/root.go +++ b/graph/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" "github.com/thejerf/suture/v4" "github.com/wkloucek/envdecode" @@ -70,13 +69,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/idp/pkg/command/root.go b/idp/pkg/command/root.go index ec61ab260d..85fda3c521 100644 --- a/idp/pkg/command/root.go +++ b/idp/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" "github.com/owncloud/ocis/idp/pkg/config" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" @@ -72,13 +71,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/ocs/pkg/command/root.go b/ocs/pkg/command/root.go index 141bc1bdad..8d24d1bd6a 100644 --- a/ocs/pkg/command/root.go +++ b/ocs/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" "github.com/owncloud/ocis/ocs/pkg/config" @@ -73,13 +72,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/proxy/pkg/command/root.go b/proxy/pkg/command/root.go index 1d771d9cb6..0d20391354 100644 --- a/proxy/pkg/command/root.go +++ b/proxy/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" "github.com/owncloud/ocis/proxy/pkg/config" @@ -72,13 +71,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/settings/pkg/command/root.go b/settings/pkg/command/root.go index fb7c930cb7..bbddc89444 100644 --- a/settings/pkg/command/root.go +++ b/settings/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" "github.com/owncloud/ocis/settings/pkg/config" @@ -73,13 +72,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/store/pkg/command/root.go b/store/pkg/command/root.go index e796cf5909..d10f4cb4dd 100644 --- a/store/pkg/command/root.go +++ b/store/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" "github.com/owncloud/ocis/store/pkg/config" @@ -60,7 +59,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { return err } - // provide with defaults for shared logging, since we need a valid destination address for BindEnv. + // provide with defaults for shared logging, since we need a valid destination address for BindEnv. if cfg.Log == nil && cfg.Commons != nil && cfg.Commons.Log != nil { cfg.Log = &config.Log{ Level: cfg.Commons.Log.Level, @@ -73,13 +72,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/thumbnails/pkg/command/root.go b/thumbnails/pkg/command/root.go index eae5eed508..4e24303e58 100644 --- a/thumbnails/pkg/command/root.go +++ b/thumbnails/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" "github.com/owncloud/ocis/thumbnails/pkg/config" @@ -73,16 +72,9 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { - return err - } - return nil } diff --git a/web/pkg/command/root.go b/web/pkg/command/root.go index 11c6b5ffa5..4d1c6249ae 100644 --- a/web/pkg/command/root.go +++ b/web/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" "github.com/owncloud/ocis/web/pkg/config" @@ -71,13 +70,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err } diff --git a/webdav/pkg/command/root.go b/webdav/pkg/command/root.go index f2ec6221af..9df612006f 100644 --- a/webdav/pkg/command/root.go +++ b/webdav/pkg/command/root.go @@ -4,7 +4,6 @@ import ( "context" "os" - "github.com/imdario/mergo" ociscfg "github.com/owncloud/ocis/ocis-pkg/config" "github.com/owncloud/ocis/ocis-pkg/version" "github.com/owncloud/ocis/webdav/pkg/config" @@ -71,13 +70,7 @@ func ParseConfig(c *cli.Context, cfg *config.Config) error { } // load all env variables relevant to the config in the current context. - envCfg := config.Config{} - if err := envdecode.Decode(&envCfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { - return err - } - - // merge environment variable config on top of the current config - if err := mergo.Merge(cfg, envCfg, mergo.WithOverride); err != nil { + if err := envdecode.Decode(cfg); err != nil && err.Error() != "none of the target fields were set from environment variables" { return err }