Merge pull request #857 from monder/dash-vars
Allow dashes in var names
This commit is contained in:
commit
8a22757a26
|
@ -3,7 +3,7 @@ package args
|
|||
import "regexp"
|
||||
|
||||
var (
|
||||
envRe = regexp.MustCompile(`\${[a-zA-Z0-9_\.]+}`)
|
||||
envRe = regexp.MustCompile(`\${[a-zA-Z0-9_\-\.]+}`)
|
||||
)
|
||||
|
||||
// ReplaceEnv takes an arg and replaces all occurences of environment variables.
|
||||
|
|
|
@ -13,6 +13,8 @@ const (
|
|||
portVal = ":80"
|
||||
periodKey = "NOMAD.PERIOD"
|
||||
periodVal = "period"
|
||||
dashKey = "NOMAD-DASH"
|
||||
dashVal = "dash"
|
||||
)
|
||||
|
||||
var (
|
||||
|
@ -20,6 +22,7 @@ var (
|
|||
ipKey: ipVal,
|
||||
portKey: portVal,
|
||||
periodKey: periodVal,
|
||||
dashKey: dashVal,
|
||||
}
|
||||
)
|
||||
|
||||
|
@ -53,6 +56,16 @@ func TestArgs_ReplaceEnv_Period(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestArgs_ReplaceEnv_Dash(t *testing.T) {
|
||||
input := fmt.Sprintf(`"${%v}"!`, dashKey)
|
||||
exp := fmt.Sprintf("\"%s\"!", dashVal)
|
||||
act := ReplaceEnv(input, envVars)
|
||||
|
||||
if !reflect.DeepEqual(act, exp) {
|
||||
t.Fatalf("ReplaceEnv(%v, %v) returned %#v; want %#v", input, envVars, act, exp)
|
||||
}
|
||||
}
|
||||
|
||||
func TestArgs_ReplaceEnv_Chained(t *testing.T) {
|
||||
input := fmt.Sprintf("${%s}${%s}", ipKey, portKey)
|
||||
exp := fmt.Sprintf("%s%s", ipVal, portVal)
|
||||
|
|
Loading…
Reference in a new issue