Skip to content

Commit d79290e

Browse files
davisnandomvantellingen
authored andcommitted
Fix issue that defaults boolean on stores and taxes aren't set
1 parent 157cb70 commit d79290e

File tree

4 files changed

+13
-3
lines changed

4 files changed

+13
-3
lines changed

internal/config.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,12 @@ type SiteConfig struct {
2525
}
2626

2727
func (s *SiteConfig) SetDefaults() {
28+
if defaults.CanUpdate(&s.Stores){
29+
defaults.MustSet(&s.Stores)
30+
}
31+
if defaults.CanUpdate(&s.Taxes){
32+
defaults.MustSet(&s.Taxes)
33+
}
2834
if defaults.CanUpdate(s.Frontend) {
2935
val := true
3036
s.Frontend = &CommercetoolsFrontendSettings{

internal/renderer.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ func renderResources(cfg *SiteConfig, version string) (string, error) {
1919
Funcs(helpers.TemplateFuncs()).
2020
Funcs(map[string]any{
2121
"RenderScopes": renderScope,
22-
"derefBool": func(i *bool, defaultValue bool) bool { if i == nil{return defaultValue } else{ return *i} },
22+
"derefBool": func(i *bool) bool {return *i},
2323
}).
2424
ParseFS(templates, "templates/*.tf.gtpl")
2525
if err != nil {

internal/renderer_test.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package internal
33
import (
44
"testing"
55

6+
"github.com/creasty/defaults"
67
"github.com/stretchr/testify/assert"
78
"github.com/stretchr/testify/require"
89
)
@@ -44,6 +45,7 @@ func TestRenderResources(t *testing.T) {
4445
},
4546
},
4647
}
48+
defaults.Set(&cfg)
4749
data, err := renderResources(cfg, "0.1.0")
4850
require.NoError(t, err)
4951

@@ -92,9 +94,10 @@ func TestRenderResourcesStores(t *testing.T) {
9294
},
9395
},
9496
}
97+
defaults.MustSet(cfg)
9598
data, err := renderResources(cfg, "0.1.0")
9699
require.NoError(t, err)
97-
100+
assert.Equal(t, *cfg.Stores[0].Managed, true)
98101
assert.Contains(t, data, `client_secret = data.sops.values["my-secret"]`)
99102
}
100103

@@ -142,6 +145,7 @@ func TestRenderResourcesStoresWithManagedFalse(t *testing.T) {
142145
},
143146
},
144147
}
148+
defaults.MustSet(cfg)
145149
data, err := renderResources(cfg, "0.1.0")
146150
require.NoError(t, err)
147151
assert.NotContains(t, data, `depends_on = [commercetools_store.my-store]`)

internal/templates/frontend.tf.gtpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ resource "commercetools_api_client" "frontend_credentials_{{ $store.Key }}" {
44
name = "frontend_credentials_terraform_{{ $store.Key }}"
55
scope = {{ RenderScopes $.Config.Frontend.PermissionScopes $.Config.ProjectKey $store.Key }}
66

7-
{{ if derefBool $store.Managed true }}
7+
{{ if derefBool $store.Managed }}
88
depends_on = [commercetools_store.{{ $store.Key }}]
99
{{ end }}
1010
}

0 commit comments

Comments
 (0)