我正在使用Terraform 0.8.8并且它一直要求我以交互方式输入某些变量(第一个是 var.allowed_ips_app_elb_https_env_specific )。
我有一个variables.tf文件,其中包含我想要输入的所有变量,但是当我运行一个terraform计划时,它一直要求我输入它们。
我们所有的代码都已经提交给我们的内部Gitlab,我的同事可以运行相同的代码而不要求他以交互方式输入变量。
以下是variables.tf文件的一部分,该文件要求我在运行计划命令时输入变量。
# Allowed IPs to both dev/prod environments.
variable "allowed_ips_app_elb_https" {
default =
[ "*.*.*.*/*", # *
"*.*.*.*/*", # *
"*.*.*.*/*", # *
"*.*.*.*/*", # *
"*.*.*.*/*", # *
"*.*.*.*/*", # *
"*.*.*.*/*", # *
"*.*.*.*/*", # *
"*.*.*.*/*", # *
"*.*.*.*/*", # *
"*.*.*.*/*", # *
]
}
^我删除了IP和评论,并将其更改为*。
谢谢,
O.R
答案 0 :(得分:0)
Terraform 0.8.8是almost a year old - 从那时起可能会对completion(processedResult, exception)
/变量文件的自动解析进行更改。你确认你的同事正在运行哪个版本?即使您无法升级到最新版本,也可以在团队中使用一致的版本。
在此期间,您可以明确地尝试loading a Terraform variable file using the var-file argument:
.tf
您还应该仔细检查变量文件的内容是否正确 - 您正在创建一个名为terraform plan -var-file=variables.tf
的变量,但是在您的Terraform文件中的某个位置,您正在请求名为allowed_ips_app_elb_https
的其他变量。< / p>