in internal/exec/exec.go [147:171]
func SetEnvironmentVariables(cfg *handlersettings.HandlerSettings) (string, error) {
var err error
commandArgs := ""
parameters := []handlersettings.ParameterDefinition{}
if cfg.PublicSettings.Parameters != nil && len(cfg.PublicSettings.Parameters) > 0 {
parameters = cfg.PublicSettings.Parameters
}
if cfg.ProtectedSettings.ProtectedParameters != nil && len(cfg.ProtectedSettings.ProtectedParameters) > 0 {
parameters = append(parameters, cfg.ProtectedSettings.ProtectedParameters...)
}
for i := 0; i < len(parameters); i++ {
name := parameters[i].Name
value := parameters[i].Value
if value != "" {
if name != "" { // Named parameters are set as environmental setting
err = os.Setenv(name, value)
} else { // Unnamed parameters go to command args
commandArgs += " " + value
}
}
}
return commandArgs, err // Return command args and the last error if any
}