From a7331f4ed63de105211b1c9eb4686393a6e9f372 Mon Sep 17 00:00:00 2001 From: kompotkot Date: Tue, 17 Dec 2024 10:28:09 +0000 Subject: [PATCH] Append quotes if set flag --- checkenv.go | 20 +++++++++++++++----- dev.sh | 1 - 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/checkenv.go b/checkenv.go index 659b05e..3c06fd6 100644 --- a/checkenv.go +++ b/checkenv.go @@ -8,7 +8,7 @@ import ( "strings" ) -const CHECKENV_VERSION = "v0.0.3" +const CHECKENV_VERSION = "v0.0.4" type showSpec struct { loadFrom map[string]interface{} @@ -56,6 +56,15 @@ func VariablesFromProviderSpec(providerSpec string) (map[string]string, error) { return plugin.Provider(providerArgs) } +// Append quotes to value if needed +func AddValueQuotes(val string, showQuotes bool) string { + if showQuotes { + return fmt.Sprintf("\"%s\"", val) + } + + return val +} + func main() { pluginsCommand := "plugins" pluginsFlags := flag.NewFlagSet("plugins", flag.ExitOnError) @@ -67,6 +76,7 @@ func main() { showHelp := showFlags.Bool("h", false, "Use this flag if you want help with this command") showFlags.BoolVar(showHelp, "help", false, "Use this flag if you want help with this command") showExport := showFlags.Bool("export", false, "Use this flag to prepend and \"export \" before every environment variable definition") + showQuotes := showFlags.Bool("quotes", false, "Use this flag to put value in quotes") showRaw := showFlags.Bool("raw", false, "Use this flag to prevent comments output") showValue := showFlags.Bool("value", false, "Print value only") @@ -119,9 +129,9 @@ func main() { } for k, v := range providedVars[providerSpec] { if !*showValue { - fmt.Printf("%s%s=%s\n", exportPrefix, k, v) + fmt.Printf("%s%s=%s\n", exportPrefix, k, AddValueQuotes(v, *showQuotes)) } else { - fmt.Printf("%s\n", v) + fmt.Printf("%s\n", AddValueQuotes(v, *showQuotes)) } } } @@ -136,9 +146,9 @@ func main() { fmt.Printf("# UNDEFINED: %s\n", k) } else { if !*showValue { - fmt.Printf("%s%s=%s\n", exportPrefix, k, v) + fmt.Printf("%s%s=%s\n", exportPrefix, k, AddValueQuotes(v, *showQuotes)) } else { - fmt.Printf("%s\n", v) + fmt.Printf("%s\n", AddValueQuotes(v, *showQuotes)) } } } diff --git a/dev.sh b/dev.sh index ae56ab1..2f684ba 100755 --- a/dev.sh +++ b/dev.sh @@ -8,4 +8,3 @@ PROGRAM_NAME="checkenv_dev" go build -o "$PROGRAM_NAME" . ./"$PROGRAM_NAME" "$@" -