Skip to content

Commit

Permalink
fix: support plain secret var for postman (#3911)
Browse files Browse the repository at this point in the history
  • Loading branch information
vsukhin committed May 30, 2023
1 parent 697412c commit 7dd14ae
Showing 1 changed file with 21 additions and 1 deletion.
22 changes: 21 additions & 1 deletion contrib/executor/postman/pkg/runner/newman/envfile.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ func NewEnvFileReader(m map[string]testkube.Variable, paramsFile string, secretE
envFile.PrependParams(envFromSecret)
}

secretVars := make(map[string]testkube.Variable)
for name, variable := range m {
if !variable.IsSecret() {
continue
Expand All @@ -43,13 +44,18 @@ func NewEnvFileReader(m map[string]testkube.Variable, paramsFile string, secretE
// create env structure from passed secret
envFromSecret, err := NewEnvFileFromString(variable.Value)
if err != nil {
output.PrintEvent("skipping secret variable for env file", name)
output.PrintEvent("adding secret variable for env file", name)
secretVars[name] = variable
continue
}

envFile.PrependParams(envFromSecret)
}

if len(secretVars) != 0 {
envFile.PrependParams(NewEnvFileFromSecretVariablesMap(secretVars))
}

b, err := json.Marshal(envFile)
if err != nil {
return nil, err
Expand Down Expand Up @@ -77,6 +83,20 @@ func NewEnvFileFromVariablesMap(m map[string]testkube.Variable) (envFile EnvFile
return
}

func NewEnvFileFromSecretVariablesMap(m map[string]testkube.Variable) (envFile EnvFile) {
envFile.ID = "executor-secret-file"
envFile.Name = "executor-secret-file"
envFile.PostmanVariableScope = "environment"
envFile.PostmanExportedAt = time.Now()
envFile.PostmanExportedUsing = "Postman/9.15.13"

for _, v := range m {
envFile.Values = append(envFile.Values, Value{Key: v.Name, Value: v.Value, Enabled: true})
}

return
}

func NewEnvFileFromString(f string) (envFile EnvFile, err error) {
err = json.Unmarshal([]byte(f), &envFile)
return
Expand Down

0 comments on commit 7dd14ae

Please sign in to comment.