Avoid sending zero-value upstream defaults from api
This commit is contained in:
parent
cc4933ea0e
commit
43091aae60
|
@ -194,7 +194,9 @@ func (cfg *ConnectConfiguration) Normalize() {
|
|||
v.Normalize()
|
||||
}
|
||||
|
||||
cfg.UpstreamDefaults.Normalize()
|
||||
if cfg.UpstreamDefaults != nil {
|
||||
cfg.UpstreamDefaults.Normalize()
|
||||
}
|
||||
}
|
||||
|
||||
func (cfg ConnectConfiguration) Validate() error {
|
||||
|
@ -206,8 +208,11 @@ func (cfg ConnectConfiguration) Validate() error {
|
|||
}
|
||||
}
|
||||
|
||||
if err := cfg.UpstreamDefaults.Validate(); err != nil {
|
||||
validationErr = multierror.Append(validationErr, fmt.Errorf("error in upstream defaults %v", err))
|
||||
if cfg.UpstreamDefaults != nil {
|
||||
err := cfg.UpstreamDefaults.Validate()
|
||||
if err != nil {
|
||||
validationErr = multierror.Append(validationErr, fmt.Errorf("error in upstream defaults %v", err))
|
||||
}
|
||||
}
|
||||
|
||||
return validationErr
|
||||
|
|
|
@ -98,7 +98,7 @@ type ConnectConfiguration struct {
|
|||
UpstreamConfigs map[string]UpstreamConfig `json:",omitempty" alias:"upstream_configs"`
|
||||
|
||||
// UpstreamDefaults contains default configuration for all upstreams of a given service
|
||||
UpstreamDefaults UpstreamConfig `json:",omitempty" alias:"upstream_defaults"`
|
||||
UpstreamDefaults *UpstreamConfig `json:",omitempty" alias:"upstream_defaults"`
|
||||
}
|
||||
|
||||
type UpstreamConfig struct {
|
||||
|
|
|
@ -638,7 +638,7 @@ func TestParseConfigEntry(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
UpstreamDefaults: api.UpstreamConfig{
|
||||
UpstreamDefaults: &api.UpstreamConfig{
|
||||
EnvoyClusterJSON: "zip",
|
||||
EnvoyListenerJSON: "zop",
|
||||
Protocol: "http",
|
||||
|
|
Loading…
Reference in New Issue