Description
OS Information
- OS: Linux
coder --version
: Coder v0.5.5-devel+2d3dc43 Tue May 10 07:44:09 UTC 2022
Steps to Reproduce
- Set a terraform environment variable:
export TF_LOG=1
- Run
coder server
- Create first template:
coder templates create docker-local -d ~/src/cdr/coder/examples/docker-local
There should be no issue creating the template, or detailed hints on how to fix the problem (e.g. coder server is running with these environment variables set, please restart it without).
Actual
Template creation fails:
> Create and upload "~/src/cdr/coder/examples/docker-local"? (yes/no) yes
✔ Queued [139ms]
✔ Setting up [6ms]
✔ Parse parameters [17ms]
✘ Detecting persistent resources [420ms]
template import provision for start: recv import provision: set terraform env: manual setting of env var "TF_LOG" detected
Notes
Considering this comment I wanted to see if I can get more information out of terraform (a naive approach). I think it's fine the value can't be changed but I would have expected this value to either propagate to terraform or for the server to either inform of a way to fix it or filter out the variable.
We could for instance filter out some incompatible TF_
env vars here, potentially logging the exclusion as a warning:
coder/provisioner/terraform/provision.go
Lines 93 to 111 in 2d3dc43
AC
Replace the terraform exec command with directly executing terraform
Test for the steps to repro this bug to validate this case is covered
Expose in the logs that the env vars are set