@@ -160,28 +160,28 @@ func Load(configBlob []byte) (*config.Config, error) {
160160 // Assign values from template
161161 if peerData .Template != nil && * peerData .Template != "" {
162162 template := c .Templates [* peerData .Template ]
163- //golint:ignore
164163 if template == nil {
165164 log .Fatalf ("Template %s not found" , * peerData .Template )
166- }
167- templateValue := reflect .ValueOf (* template )
168- peerValue := reflect .ValueOf (c .Peers [peerName ]).Elem ()
169-
170- templateValueType := templateValue .Type ()
171- for i := 0 ; i < templateValueType .NumField (); i ++ {
172- fieldName := templateValueType .Field (i ).Name
173- peerFieldValue := peerValue .FieldByName (fieldName )
174- if fieldName != "Template" { // Ignore the template field
175- pVal := reflect .Indirect (peerFieldValue )
176- peerHasValueConfigured := pVal .IsValid ()
177- tValue := templateValue .Field (i )
178- templateHasValueConfigured := ! tValue .IsNil ()
179- if templateHasValueConfigured && ! peerHasValueConfigured {
180- // Use the template's value
181- peerFieldValue .Set (templateValue .Field (i ))
182- }
165+ } else {
166+ templateValue := reflect .ValueOf (* template )
167+ peerValue := reflect .ValueOf (c .Peers [peerName ]).Elem ()
168+
169+ templateValueType := templateValue .Type ()
170+ for i := 0 ; i < templateValueType .NumField (); i ++ {
171+ fieldName := templateValueType .Field (i ).Name
172+ peerFieldValue := peerValue .FieldByName (fieldName )
173+ if fieldName != "Template" { // Ignore the template field
174+ pVal := reflect .Indirect (peerFieldValue )
175+ peerHasValueConfigured := pVal .IsValid ()
176+ tValue := templateValue .Field (i )
177+ templateHasValueConfigured := ! tValue .IsNil ()
178+ if templateHasValueConfigured && ! peerHasValueConfigured {
179+ // Use the template's value
180+ peerFieldValue .Set (templateValue .Field (i ))
181+ }
183182
184- log .Tracef ("[%s] field: %s template's value: %+v kind: %T templateHasValueConfigured: %v" , peerName , fieldName , reflect .Indirect (tValue ), tValue .Kind ().String (), templateHasValueConfigured )
183+ log .Tracef ("[%s] field: %s template's value: %+v kind: %T templateHasValueConfigured: %v" , peerName , fieldName , reflect .Indirect (tValue ), tValue .Kind ().String (), templateHasValueConfigured )
184+ }
185185 }
186186 }
187187 } // end peer template processor
0 commit comments