From c763ae62e22f6b3e898031db35d57e45f483e8b2 Mon Sep 17 00:00:00 2001 From: briskt <3172830+briskt@users.noreply.github.com> Date: Fri, 29 Sep 2023 17:48:13 -0600 Subject: [PATCH] fix: ignore fields that don't have an ssm tag --- ssmconfig.go | 2 +- ssmconfig_test.go | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ssmconfig.go b/ssmconfig.go index 20a5f8a..52ee454 100755 --- a/ssmconfig.go +++ b/ssmconfig.go @@ -67,7 +67,7 @@ func (p *Provider) Process(configPath string, c interface{}) error { } for i, field := range spec { - if field.name == "" && field.defaultValue == "" { + if field.name == "" { continue } diff --git a/ssmconfig_test.go b/ssmconfig_test.go index b09adba..0df8370 100755 --- a/ssmconfig_test.go +++ b/ssmconfig_test.go @@ -39,8 +39,10 @@ func TestProvider_Process(t *testing.T) { F322 float32 `ssm:"/float32/f322" default:"42.42"` F641 float64 `ssm:"/float64/f641"` F642 float64 `ssm:"/float64/f642" default:"42.42"` + NoSSM string `default:"ignored"` Invalid string } + s.NoSSM = "pre" mc := &mockSSMClient{ output: &ssm.GetParametersOutput{ @@ -130,6 +132,9 @@ func TestProvider_Process(t *testing.T) { if s.F642 != 42.42 { t.Errorf("Process() F642 unexpected value: want %f, have %f", 42.42, s.F642) } + if s.NoSSM != "pre" { + t.Errorf("Process() NoSSM unexpected value: want %q, have %q", "pre", s.NoSSM) + } if s.Invalid != "" { t.Errorf("Process() Missing unexpected value: want %q, have %q", "", s.Invalid) }