Allow secrets with env

Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
pull/488/head
CrazyMax 4 years ago
parent 74f76cf4e9
commit f6d83c97bb
No known key found for this signature in database
GPG Key ID: 3248E46B6BB8C7F7

@ -34,6 +34,7 @@ func parseSecret(value string) (*secretsprovider.Source, error) {
fs := secretsprovider.Source{}
var typ string
for _, field := range fields {
parts := strings.SplitN(field, "=", 2)
key := strings.ToLower(parts[0])
@ -45,16 +46,23 @@ func parseSecret(value string) (*secretsprovider.Source, error) {
value := parts[1]
switch key {
case "type":
if value != "file" {
if value != "file" && value != "env" {
return nil, errors.Errorf("unsupported secret type %q", value)
}
typ = value
case "id":
fs.ID = value
case "source", "src":
fs.FilePath = value
case "env":
fs.Env = value
default:
return nil, errors.Errorf("unexpected key '%s' in '%s'", key, field)
}
}
if typ == "env" && fs.Env == "" {
fs.Env = fs.FilePath
fs.FilePath = ""
}
return &fs, nil
}

Loading…
Cancel
Save