From 57fb06aee6901e8465d5a317d2bef5899565263f Mon Sep 17 00:00:00 2001 From: peb-adr Date: Mon, 1 Jun 2026 12:21:41 +0200 Subject: [PATCH] Use basename in getFilename() (#50) --- internal/constants/constants.go | 4 ++-- internal/instance/config/config.go | 5 +++-- internal/instance/config/config_test.go | 8 ++++---- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/internal/constants/constants.go b/internal/constants/constants.go index d41e578..0bc2cb6 100644 --- a/internal/constants/constants.go +++ b/internal/constants/constants.go @@ -43,8 +43,8 @@ const ( // TlsCertSecretYAML is the manifest file for the kubernetes secret enabling HTTPS TlsCertSecretYAML string = "tls-letsencrypt-secret.yaml" - // DefaultConfigFile is the filename used, if none is set in config file(s) - DefaultConfigFile string = "os-config.yaml" + // DefaultTemplatingOutputFilename is the filename used, if none is set in config file(s) + DefaultTemplatingOutputFilename string = "os-deployment.yaml" // TemplateSuffix is the recognized suffix for template files TemplateSuffix string = ".tmpl" diff --git a/internal/instance/config/config.go b/internal/instance/config/config.go index e701e89..35c0c78 100644 --- a/internal/instance/config/config.go +++ b/internal/instance/config/config.go @@ -241,10 +241,11 @@ func getFilename(cfg map[string]any, tplFile string) string { if fn, ok := cfg["filename"].(string); ok && fn != "" { return fn } - if tplFilePretty, found := strings.CutSuffix(tplFile, constants.TemplateSuffix); found { + tplBase := filepath.Base(tplFile) + if tplFilePretty, found := strings.CutSuffix(tplBase, constants.TemplateSuffix); found { return tplFilePretty } - return constants.DefaultConfigFile + return constants.DefaultTemplatingOutputFilename } type TemplateFunctions struct { diff --git a/internal/instance/config/config_test.go b/internal/instance/config/config_test.go index 3478ec6..8041b35 100644 --- a/internal/instance/config/config_test.go +++ b/internal/instance/config/config_test.go @@ -385,8 +385,8 @@ func TestGetFilename(t *testing.T) { "other": "value", } result := getFilename(cfg, "myspecial.yaml") - if result != constants.DefaultConfigFile { - t.Errorf("Expected %s, got %s", constants.DefaultConfigFile, result) + if result != constants.DefaultTemplatingOutputFilename { + t.Errorf("Expected %s, got %s", constants.DefaultTemplatingOutputFilename, result) } }) t.Run("empty filename in config, with template file", func(t *testing.T) { @@ -532,7 +532,7 @@ func TestCreateDirAndFiles(t *testing.T) { t.Run("invalid template path", func(t *testing.T) { cfg := map[string]any{ - "filename": constants.DefaultConfigFile, + "filename": constants.DefaultTemplatingOutputFilename, } err := CreateDirAndFiles(tmpdir, false, "nonexistent-template", cfg) if err == nil { @@ -580,7 +580,7 @@ func TestCreateDirAndFiles(t *testing.T) { outDir := filepath.Join(tmpdir, "output2") cfg := map[string]any{ - "filename": constants.DefaultConfigFile, + "filename": constants.DefaultTemplatingOutputFilename, } err := CreateDirAndFiles(outDir, true, tplDir, cfg)