Skip to content

Commit 07747dd

Browse files
author
Matthew Fisher
committed
feat(cmd): allow config:set FOO=""
Empty string values for an envionment variable is a valid environment variable. This is used when an application is reading for an environment variable present in the application's environment, but does not necessarily care about the value.
1 parent f068e5a commit 07747dd

2 files changed

Lines changed: 5 additions & 1 deletion

File tree

cmd/config.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ func (d *DeisCmd) ConfigPush(appID, fileName string) error {
265265
func parseConfig(configVars []string) (map[string]interface{}, error) {
266266
configMap := make(map[string]interface{})
267267

268-
regex := regexp.MustCompile(`^([A-z_]+[A-z0-9_]*)=([\s\S]+)$`)
268+
regex := regexp.MustCompile(`^([A-z_]+[A-z0-9_]*)=([\s\S]*)$`)
269269
for _, config := range configVars {
270270
// Skip config that starts with an comment
271271
if config[0] == '#' {

cmd/config_test.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ func TestParseConfig(t *testing.T) {
2020
actual, err := parseConfig([]string{"FOO=bar"})
2121
assert.NoErr(t, err)
2222
assert.Equal(t, actual, map[string]interface{}{"FOO": "bar"}, "map")
23+
24+
actual, err = parseConfig([]string{"FOO="})
25+
assert.NoErr(t, err)
26+
assert.Equal(t, actual, map[string]interface{}{"FOO": ""}, "map")
2327
}
2428

2529
func TestFormatConfig(t *testing.T) {

0 commit comments

Comments
 (0)