mirror of
https://git.vectorsigma.ru/public/atlantis.git
synced 2026-07-28 23:08:26 +00:00
fix: Set Env variables when output: hide in multienv (#5319)
Signed-off-by: Hirotake Kobayashi <h.kobayashi@raksul.com> Co-authored-by: PePe Amengual <2208324+jamengual@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
4a44c3cfb1
commit
5dfe5f92a9
@@ -24,7 +24,7 @@ func (r *MultiEnvStepRunner) Run(
|
||||
envs map[string]string,
|
||||
postProcessOutput valid.PostProcessRunOutputOption,
|
||||
) (string, error) {
|
||||
res, err := r.RunStepRunner.Run(ctx, shell, command, path, envs, false, postProcessOutput)
|
||||
res, err := r.RunStepRunner.Run(ctx, shell, command, path, envs, false, valid.PostProcessRunOutputShow)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
@@ -21,29 +21,50 @@ func TestMultiEnvStepRunner_Run(t *testing.T) {
|
||||
cases := []struct {
|
||||
Command string
|
||||
ProjectName string
|
||||
Output valid.PostProcessRunOutputOption
|
||||
ExpOut string
|
||||
ExpErr string
|
||||
Version string
|
||||
ExpEnv map[string]string
|
||||
}{
|
||||
{
|
||||
Command: `echo 'TF_VAR_REPODEFINEDVARIABLE_ONE=value1'`,
|
||||
Output: valid.PostProcessRunOutputShow,
|
||||
ExpOut: "Dynamic environment variables added:\nTF_VAR_REPODEFINEDVARIABLE_ONE\n",
|
||||
Version: "v1.2.3",
|
||||
ExpEnv: map[string]string{
|
||||
"TF_VAR_REPODEFINEDVARIABLE_ONE": "value1",
|
||||
},
|
||||
},
|
||||
{
|
||||
Command: `echo 'TF_VAR_REPODEFINEDVARIABLE_TWO=value=1='`,
|
||||
Output: valid.PostProcessRunOutputShow,
|
||||
ExpOut: "Dynamic environment variables added:\nTF_VAR_REPODEFINEDVARIABLE_TWO\n",
|
||||
Version: "v1.2.3",
|
||||
ExpEnv: map[string]string{
|
||||
"TF_VAR_REPODEFINEDVARIABLE_TWO": "value=1=",
|
||||
},
|
||||
},
|
||||
{
|
||||
Command: `echo 'TF_VAR_REPODEFINEDVARIABLE_NO_VALUE'`,
|
||||
Output: valid.PostProcessRunOutputShow,
|
||||
ExpErr: "Invalid environment variable definition: TF_VAR_REPODEFINEDVARIABLE_NO_VALUE",
|
||||
Version: "v1.2.3",
|
||||
ExpEnv: map[string]string{},
|
||||
},
|
||||
{
|
||||
Command: `echo 'TF_VAR1_MULTILINE="foo\\nbar",TF_VAR2_VALUEWITHCOMMA="one,two",TF_VAR3_CONTROL=true'`,
|
||||
Output: valid.PostProcessRunOutputShow,
|
||||
ExpOut: "Dynamic environment variables added:\nTF_VAR1_MULTILINE\nTF_VAR2_VALUEWITHCOMMA\nTF_VAR3_CONTROL\n",
|
||||
Version: "v1.2.3",
|
||||
ExpEnv: map[string]string{
|
||||
"TF_VAR1_MULTILINE": "foo\\nbar",
|
||||
"TF_VAR2_VALUEWITHCOMMA": "one,two",
|
||||
"TF_VAR3_CONTROL": "true",
|
||||
},
|
||||
},
|
||||
{
|
||||
Command: `echo 'TF_VAR_REPODEFINEDVARIABLE_HIDE=value1'`,
|
||||
Output: valid.PostProcessRunOutputHide,
|
||||
ExpOut: "",
|
||||
ExpEnv: map[string]string{
|
||||
"TF_VAR_REPODEFINEDVARIABLE_HIDE": "value1",
|
||||
},
|
||||
},
|
||||
}
|
||||
RegisterMockTestingT(t)
|
||||
@@ -90,13 +111,14 @@ func TestMultiEnvStepRunner_Run(t *testing.T) {
|
||||
ProjectName: c.ProjectName,
|
||||
}
|
||||
envMap := make(map[string]string)
|
||||
value, err := multiEnvStepRunner.Run(ctx, nil, c.Command, tmpDir, envMap, valid.PostProcessRunOutputShow)
|
||||
value, err := multiEnvStepRunner.Run(ctx, nil, c.Command, tmpDir, envMap, c.Output)
|
||||
if c.ExpErr != "" {
|
||||
ErrContains(t, c.ExpErr, err)
|
||||
return
|
||||
}
|
||||
Ok(t, err)
|
||||
Equals(t, c.ExpOut, value)
|
||||
Equals(t, c.ExpEnv, envMap)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user