diff --git a/cmd/validate/main.go b/cmd/validate/main.go index 730482751..5e2fc0c4e 100644 --- a/cmd/validate/main.go +++ b/cmd/validate/main.go @@ -43,6 +43,10 @@ func run(name string) error { return err } + if err := isConfigEnvValid(name); err != nil { + return err + } + if err := IsLicenseValid(name); err != nil { return err } @@ -107,6 +111,26 @@ func areSecretsValid(name string) error { return nil } +// Check parameter usage is valid +func isConfigEnvValid(name string) error { + server, err := readServerYaml(name) + if err != nil { + return err + } + + for _, e := range server.Config.Env { + if !strings.HasPrefix(e.Value, "{{") { + continue + } + if !strings.HasPrefix(e.Value, "{{"+server.Name+".") { + return fmt.Errorf("server uses unknown parameter %q: %q", server.Name, e.Value) + } + } + + fmt.Println("✅ Config env is valid") + return nil +} + // check if the license is valid // the license must be valid func IsLicenseValid(name string) error {