Change ApplyEnvVars strategy for all config components
Get jsonConfig from Config, apply env vars to it, load jsonConfig back into Config. License: MIT Signed-off-by: Robert Ignat <robert.ignat91@gmail.com>
This commit is contained in:
parent
47252f8e62
commit
168cf76224
|
@ -157,9 +157,12 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg, err := cfg.toJSONConfig()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err = envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -262,6 +265,16 @@ func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly JSON representation of this Config.
|
// ToJSON generates a human-friendly JSON representation of this Config.
|
||||||
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
|
jcfg, err := cfg.toJSONConfig()
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
raw, err = config.DefaultJSONMarshal(jcfg)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() (jcfg *jsonConfig, err error) {
|
||||||
// Multiaddress String() may panic
|
// Multiaddress String() may panic
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil {
|
if r := recover(); r != nil {
|
||||||
|
@ -269,7 +282,7 @@ func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
jcfg := &jsonConfig{}
|
jcfg = &jsonConfig{}
|
||||||
|
|
||||||
// Set all configuration fields
|
// Set all configuration fields
|
||||||
jcfg.ListenMultiaddress = cfg.ListenAddr.String()
|
jcfg.ListenMultiaddress = cfg.ListenAddr.String()
|
||||||
|
@ -284,6 +297,5 @@ func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
jcfg.ExtractHeadersPath = cfg.ExtractHeadersPath
|
jcfg.ExtractHeadersPath = cfg.ExtractHeadersPath
|
||||||
jcfg.ExtractHeadersTTL = cfg.ExtractHeadersTTL.String()
|
jcfg.ExtractHeadersTTL = cfg.ExtractHeadersTTL.String()
|
||||||
|
|
||||||
raw, err = config.DefaultJSONMarshal(jcfg)
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
|
@ -184,9 +184,12 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg, err := cfg.toJSONConfig()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err = envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -372,6 +375,16 @@ func (cfg *Config) loadLibp2pOptions(jcfg *jsonConfig) error {
|
||||||
// ToJSON produce a human-friendly JSON representation of the Config
|
// ToJSON produce a human-friendly JSON representation of the Config
|
||||||
// object.
|
// object.
|
||||||
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
|
jcfg, err := cfg.toJSONConfig()
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
raw, err = config.DefaultJSONMarshal(jcfg)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() (jcfg *jsonConfig, err error) {
|
||||||
// Multiaddress String() may panic
|
// Multiaddress String() may panic
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil {
|
if r := recover(); r != nil {
|
||||||
|
@ -379,7 +392,7 @@ func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
jcfg := &jsonConfig{
|
jcfg = &jsonConfig{
|
||||||
HTTPListenMultiaddress: cfg.HTTPListenAddr.String(),
|
HTTPListenMultiaddress: cfg.HTTPListenAddr.String(),
|
||||||
SSLCertFile: cfg.pathSSLCertFile,
|
SSLCertFile: cfg.pathSSLCertFile,
|
||||||
SSLKeyFile: cfg.pathSSLKeyFile,
|
SSLKeyFile: cfg.pathSSLKeyFile,
|
||||||
|
@ -411,7 +424,6 @@ func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
jcfg.Libp2pListenMultiaddress = cfg.Libp2pListenAddr.String()
|
jcfg.Libp2pListenMultiaddress = cfg.Libp2pListenAddr.String()
|
||||||
}
|
}
|
||||||
|
|
||||||
raw, err = config.DefaultJSONMarshal(jcfg)
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -189,9 +189,12 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &configJSON{}
|
jcfg, err := cfg.toConfigJSON()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
err := envconfig.Process(cfg.ConfigKey(), jcfg)
|
err = envconfig.Process(cfg.ConfigKey(), jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -386,6 +389,16 @@ func (cfg *Config) applyConfigJSON(jcfg *configJSON) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly version of Config.
|
// ToJSON generates a human-friendly version of Config.
|
||||||
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
|
jcfg, err := cfg.toConfigJSON()
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
raw, err = json.MarshalIndent(jcfg, "", " ")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toConfigJSON() (jcfg *configJSON, err error) {
|
||||||
// Multiaddress String() may panic
|
// Multiaddress String() may panic
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil {
|
if r := recover(); r != nil {
|
||||||
|
@ -393,7 +406,7 @@ func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
jcfg := &configJSON{}
|
jcfg = &configJSON{}
|
||||||
|
|
||||||
// Private Key
|
// Private Key
|
||||||
pkeyBytes, err := cfg.PrivateKey.Bytes()
|
pkeyBytes, err := cfg.PrivateKey.Bytes()
|
||||||
|
@ -418,7 +431,6 @@ func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
jcfg.DisableRepinning = cfg.DisableRepinning
|
jcfg.DisableRepinning = cfg.DisableRepinning
|
||||||
jcfg.PeerstoreFile = cfg.PeerstoreFile
|
jcfg.PeerstoreFile = cfg.PeerstoreFile
|
||||||
|
|
||||||
raw, err = json.MarshalIndent(jcfg, "", " ")
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -236,7 +236,13 @@ func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
|
|
||||||
// ToJSON returns the pretty JSON representation of a Config.
|
// ToJSON returns the pretty JSON representation of a Config.
|
||||||
func (cfg *Config) ToJSON() ([]byte, error) {
|
func (cfg *Config) ToJSON() ([]byte, error) {
|
||||||
jcfg := &jsonConfig{
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
|
return config.DefaultJSONMarshal(jcfg)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() *jsonConfig {
|
||||||
|
return &jsonConfig{
|
||||||
DataFolder: cfg.DataFolder,
|
DataFolder: cfg.DataFolder,
|
||||||
InitPeerset: api.PeersToStrings(cfg.InitPeerset),
|
InitPeerset: api.PeersToStrings(cfg.InitPeerset),
|
||||||
WaitForLeaderTimeout: cfg.WaitForLeaderTimeout.String(),
|
WaitForLeaderTimeout: cfg.WaitForLeaderTimeout.String(),
|
||||||
|
@ -253,8 +259,6 @@ func (cfg *Config) ToJSON() ([]byte, error) {
|
||||||
SnapshotThreshold: cfg.RaftConfig.SnapshotThreshold,
|
SnapshotThreshold: cfg.RaftConfig.SnapshotThreshold,
|
||||||
LeaderLeaseTimeout: cfg.RaftConfig.LeaderLeaseTimeout.String(),
|
LeaderLeaseTimeout: cfg.RaftConfig.LeaderLeaseTimeout.String(),
|
||||||
}
|
}
|
||||||
|
|
||||||
return config.DefaultJSONMarshal(jcfg)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Default initializes this configuration with working defaults.
|
// Default initializes this configuration with working defaults.
|
||||||
|
@ -281,7 +285,7 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err := envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -58,7 +58,7 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err := envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -115,11 +115,15 @@ func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
// ToJSON generates a JSON-formatted human-friendly representation of this
|
// ToJSON generates a JSON-formatted human-friendly representation of this
|
||||||
// Config.
|
// Config.
|
||||||
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
jcfg.MetricTTL = cfg.MetricTTL.String()
|
|
||||||
jcfg.Type = cfg.Type.String()
|
|
||||||
|
|
||||||
raw, err = config.DefaultJSONMarshal(jcfg)
|
raw, err = config.DefaultJSONMarshal(jcfg)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() *jsonConfig {
|
||||||
|
return &jsonConfig{
|
||||||
|
MetricTTL: cfg.MetricTTL.String(),
|
||||||
|
Type: cfg.Type.String(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -43,7 +43,7 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err := envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -85,9 +85,13 @@ func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly JSON representation of this Config.
|
// ToJSON generates a human-friendly JSON representation of this Config.
|
||||||
func (cfg *Config) ToJSON() ([]byte, error) {
|
func (cfg *Config) ToJSON() ([]byte, error) {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
jcfg.MetricTTL = cfg.MetricTTL.String()
|
|
||||||
|
|
||||||
return config.DefaultJSONMarshal(jcfg)
|
return config.DefaultJSONMarshal(jcfg)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() *jsonConfig {
|
||||||
|
return &jsonConfig{
|
||||||
|
MetricTTL: cfg.MetricTTL.String(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -95,9 +95,12 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg, err := cfg.toJSONConfig()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err = envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -178,6 +181,16 @@ func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly JSON representation of this Config.
|
// ToJSON generates a human-friendly JSON representation of this Config.
|
||||||
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
|
jcfg, err := cfg.toJSONConfig()
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
raw, err = config.DefaultJSONMarshal(jcfg)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() (jcfg *jsonConfig, err error) {
|
||||||
// Multiaddress String() may panic
|
// Multiaddress String() may panic
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil {
|
if r := recover(); r != nil {
|
||||||
|
@ -185,7 +198,7 @@ func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
jcfg := &jsonConfig{}
|
jcfg = &jsonConfig{}
|
||||||
|
|
||||||
// Set all configuration fields
|
// Set all configuration fields
|
||||||
jcfg.NodeMultiaddress = cfg.NodeAddr.String()
|
jcfg.NodeMultiaddress = cfg.NodeAddr.String()
|
||||||
|
@ -195,6 +208,5 @@ func (cfg *Config) ToJSON() (raw []byte, err error) {
|
||||||
jcfg.PinTimeout = cfg.PinTimeout.String()
|
jcfg.PinTimeout = cfg.PinTimeout.String()
|
||||||
jcfg.UnpinTimeout = cfg.UnpinTimeout.String()
|
jcfg.UnpinTimeout = cfg.UnpinTimeout.String()
|
||||||
|
|
||||||
raw, err = config.DefaultJSONMarshal(jcfg)
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,7 +42,7 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err := envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -85,9 +85,13 @@ func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly JSON representation of this Config.
|
// ToJSON generates a human-friendly JSON representation of this Config.
|
||||||
func (cfg *Config) ToJSON() ([]byte, error) {
|
func (cfg *Config) ToJSON() ([]byte, error) {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
jcfg.CheckInterval = cfg.CheckInterval.String()
|
|
||||||
|
|
||||||
return json.MarshalIndent(jcfg, "", " ")
|
return json.MarshalIndent(jcfg, "", " ")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() *jsonConfig {
|
||||||
|
return &jsonConfig{
|
||||||
|
CheckInterval: cfg.CheckInterval.String(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -42,7 +42,7 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err := envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -85,9 +85,13 @@ func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly JSON representation of this Config.
|
// ToJSON generates a human-friendly JSON representation of this Config.
|
||||||
func (cfg *Config) ToJSON() ([]byte, error) {
|
func (cfg *Config) ToJSON() ([]byte, error) {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
jcfg.CheckInterval = cfg.CheckInterval.String()
|
|
||||||
|
|
||||||
return json.MarshalIndent(jcfg, "", " ")
|
return json.MarshalIndent(jcfg, "", " ")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() *jsonConfig {
|
||||||
|
return &jsonConfig{
|
||||||
|
CheckInterval: cfg.CheckInterval.String(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -62,7 +62,7 @@ func (cfg *MetricsConfig) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *MetricsConfig) ApplyEnvVars() error {
|
func (cfg *MetricsConfig) ApplyEnvVars() error {
|
||||||
jcfg := &jsonMetricsConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
err := envconfig.Process(metricsEnvConfigKey, jcfg)
|
err := envconfig.Process(metricsEnvConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -130,13 +130,17 @@ func (cfg *MetricsConfig) loadMetricsOptions(jcfg *jsonMetricsConfig) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly JSON representation of this Config.
|
// ToJSON generates a human-friendly JSON representation of this Config.
|
||||||
func (cfg *MetricsConfig) ToJSON() ([]byte, error) {
|
func (cfg *MetricsConfig) ToJSON() ([]byte, error) {
|
||||||
jcfg := &jsonMetricsConfig{
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
|
return config.DefaultJSONMarshal(jcfg)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cfg *MetricsConfig) toJSONConfig() *jsonMetricsConfig {
|
||||||
|
return &jsonMetricsConfig{
|
||||||
EnableStats: cfg.EnableStats,
|
EnableStats: cfg.EnableStats,
|
||||||
PrometheusEndpoint: cfg.PrometheusEndpoint.String(),
|
PrometheusEndpoint: cfg.PrometheusEndpoint.String(),
|
||||||
ReportingInterval: cfg.ReportingInterval.String(),
|
ReportingInterval: cfg.ReportingInterval.String(),
|
||||||
}
|
}
|
||||||
|
|
||||||
return config.DefaultJSONMarshal(jcfg)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// TracingConfig configures tracing.
|
// TracingConfig configures tracing.
|
||||||
|
@ -174,7 +178,7 @@ func (cfg *TracingConfig) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *TracingConfig) ApplyEnvVars() error {
|
func (cfg *TracingConfig) ApplyEnvVars() error {
|
||||||
jcfg := &jsonTracingConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
err := envconfig.Process(tracingEnvConfigKey, jcfg)
|
err := envconfig.Process(tracingEnvConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -237,12 +241,16 @@ func (cfg *TracingConfig) loadTracingOptions(jcfg *jsonTracingConfig) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly JSON representation of this Config.
|
// ToJSON generates a human-friendly JSON representation of this Config.
|
||||||
func (cfg *TracingConfig) ToJSON() ([]byte, error) {
|
func (cfg *TracingConfig) ToJSON() ([]byte, error) {
|
||||||
jcfg := &jsonTracingConfig{
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
|
return config.DefaultJSONMarshal(jcfg)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cfg *TracingConfig) toJSONConfig() *jsonTracingConfig {
|
||||||
|
return &jsonTracingConfig{
|
||||||
EnableTracing: cfg.EnableTracing,
|
EnableTracing: cfg.EnableTracing,
|
||||||
JaegerAgentEndpoint: cfg.JaegerAgentEndpoint.String(),
|
JaegerAgentEndpoint: cfg.JaegerAgentEndpoint.String(),
|
||||||
SamplingProb: cfg.SamplingProb,
|
SamplingProb: cfg.SamplingProb,
|
||||||
ServiceName: cfg.ServiceName,
|
ServiceName: cfg.ServiceName,
|
||||||
}
|
}
|
||||||
|
|
||||||
return config.DefaultJSONMarshal(jcfg)
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,7 +50,7 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err := envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -97,10 +97,14 @@ func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly JSON representation of this Config.
|
// ToJSON generates a human-friendly JSON representation of this Config.
|
||||||
func (cfg *Config) ToJSON() ([]byte, error) {
|
func (cfg *Config) ToJSON() ([]byte, error) {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
jcfg.MaxPinQueueSize = cfg.MaxPinQueueSize
|
|
||||||
jcfg.ConcurrentPins = cfg.ConcurrentPins
|
|
||||||
|
|
||||||
return config.DefaultJSONMarshal(jcfg)
|
return config.DefaultJSONMarshal(jcfg)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() *jsonConfig {
|
||||||
|
return &jsonConfig{
|
||||||
|
MaxPinQueueSize: cfg.MaxPinQueueSize,
|
||||||
|
ConcurrentPins: cfg.ConcurrentPins,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -50,7 +50,7 @@ func (cfg *Config) Default() error {
|
||||||
// ApplyEnvVars fills in any Config fields found
|
// ApplyEnvVars fills in any Config fields found
|
||||||
// as environment variables.
|
// as environment variables.
|
||||||
func (cfg *Config) ApplyEnvVars() error {
|
func (cfg *Config) ApplyEnvVars() error {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
err := envconfig.Process(envConfigKey, jcfg)
|
err := envconfig.Process(envConfigKey, jcfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -97,10 +97,14 @@ func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
|
|
||||||
// ToJSON generates a human-friendly JSON representation of this Config.
|
// ToJSON generates a human-friendly JSON representation of this Config.
|
||||||
func (cfg *Config) ToJSON() ([]byte, error) {
|
func (cfg *Config) ToJSON() ([]byte, error) {
|
||||||
jcfg := &jsonConfig{}
|
jcfg := cfg.toJSONConfig()
|
||||||
|
|
||||||
jcfg.MaxPinQueueSize = cfg.MaxPinQueueSize
|
|
||||||
jcfg.ConcurrentPins = cfg.ConcurrentPins
|
|
||||||
|
|
||||||
return config.DefaultJSONMarshal(jcfg)
|
return config.DefaultJSONMarshal(jcfg)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (cfg *Config) toJSONConfig() *jsonConfig {
|
||||||
|
return &jsonConfig{
|
||||||
|
MaxPinQueueSize: cfg.MaxPinQueueSize,
|
||||||
|
ConcurrentPins: cfg.ConcurrentPins,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user