Skip to content

Commit 6da18d4

Browse files
authored
Merge pull request #2151 from nebius/SCHED-921/escape-vars
SCHED-921: Pass tf vars in json
2 parents 1e90b78 + 00b4010 commit 6da18d4

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

test/e2e/e2e_test.go

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
package e2e_test
44

55
import (
6+
"encoding/json"
67
"fmt"
78
"os"
89
"os/exec"
@@ -147,6 +148,19 @@ func setupTerraformOptions(t *testing.T, cfg testConfig) terraform.Options {
147148
tfVars := readTFVars(t, fmt.Sprintf("%s/terraform.tfvars", cfg.PathToInstallation))
148149
tfVars = overrideTestValues(t, tfVars, cfg)
149150

151+
varsJSON, err := json.MarshalIndent(tfVars, "", " ")
152+
if err != nil {
153+
t.Fatalf("marshal terraform variables to JSON: %v", err)
154+
}
155+
t.Logf("Terraform variables:\n%s", varsJSON)
156+
157+
varFilePath := fmt.Sprintf("%s/e2e-override.tfvars.json", cfg.PathToInstallation)
158+
err = os.WriteFile(varFilePath, varsJSON, 0o644)
159+
if err != nil {
160+
t.Fatalf("write terraform var file %s: %v", varFilePath, err)
161+
}
162+
t.Cleanup(func() { os.Remove(varFilePath) })
163+
150164
envVarsList := os.Environ()
151165
envVars := make(map[string]string)
152166
for _, envVar := range envVarsList {
@@ -157,7 +171,7 @@ func setupTerraformOptions(t *testing.T, cfg testConfig) terraform.Options {
157171

158172
return terraform.Options{
159173
TerraformDir: cfg.PathToInstallation,
160-
Vars: tfVars,
174+
VarFiles: []string{varFilePath},
161175
EnvVars: envVars,
162176
NoColor: true,
163177
}

0 commit comments

Comments
 (0)