Skip to content

Commit 0099850

Browse files
committed
Prevent unintended usage of TF_WORKSPACE
1 parent 01a7e95 commit 0099850

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

tfexec/cmd.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ const (
2222
logPathEnvVar = "TF_LOG_PATH"
2323
reattachEnvVar = "TF_REATTACH_PROVIDERS"
2424
appendUserAgentEnvVar = "TF_APPEND_USER_AGENT"
25+
workspaceEnvVar = "TF_WORKSPACE"
2526

2627
varEnvVarPrefix = "TF_VAR_"
2728
)
@@ -33,6 +34,7 @@ var prohibitedEnvVars = []string{
3334
logEnvVar,
3435
reattachEnvVar,
3536
appendUserAgentEnvVar,
37+
workspaceEnvVar,
3638
}
3739

3840
func envMap(environ []string) map[string]string {
@@ -105,6 +107,9 @@ func (tf *Terraform) buildEnv(mergeEnv map[string]string) []string {
105107
// constant automation override env vars
106108
env[automationEnvVar] = "1"
107109

110+
// force usage of workspace methods for switching
111+
env[workspaceEnvVar] = ""
112+
108113
return envSlice(env)
109114
}
110115

tfexec/cmd_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,12 @@ func TestMergeUserAgent(t *testing.T) {
3636

3737
func defaultEnv() []string {
3838
return []string{
39+
"CHECKPOINT_DISABLE=",
3940
"TF_APPEND_USER_AGENT=HashiCorp-terraform-exec/" + version.ModuleVersion(),
40-
"TF_LOG=",
41-
"TF_LOG_PATH=",
4241
"TF_IN_AUTOMATION=1",
43-
"CHECKPOINT_DISABLE=",
42+
"TF_LOG_PATH=",
43+
"TF_LOG=",
44+
"TF_WORKSPACE=",
4445
}
4546
}
4647

0 commit comments

Comments
 (0)