variables - Terraform 模块 - 变量和 .tfvars
问题描述
Terraform 模块和变量有问题,我不知道自己做错了什么。
我有一个看起来像这样的文件夹结构;
Accounts
|_____Account1
| Main.tf
| terraform.tfvars
|_____Account2
|_____Account3
|_____Modules
|________VPC
Main.tf
Variables.tf
在我的模块文件夹中,我有我的 main.tf 和 variables.tf,在帐户下我还有我的 main.tf(调用模块 vpc)和 terrform.tfvars。
如何使用我的 terraform.tfvars 将安全凭据传递给我的帐户文件夹中的 main.tf?
VPC 模块中我的 Variables.tf 中的变量如下所示;
variable "aws_access_key" {
default = ""
}
在我的帐户文件夹中,在 Main.tf 我试图以这种方式调用 tfvars;
variable "aws_access_key" {}
module "VPC" {
source = "/Accounts/Modules/VPC"
aws_access_key = "${var.aws_access_key}"
}
可以运行 terraform init 没有任何问题,但尝试运行 terraform plan,它只是出现红色并且无法运行。如果我手动将变量输入到帐户文件夹中的 main.tf 中,这确实有效。但是我想将任何敏感的东西剥离到 .tfvars 文件中,这将在其他地方结束。
我希望我做的事情显然是错误的!还尝试了 account1 文件夹中的 -var-file=terraform.tfvars 开关。
任何想法都会很棒。由于我阅读的所有内容都倾向于暗示这应该有效。
谢谢斯蒂芬
解决方案
刚刚从一个新文件夹中运行它 - 只占用了我的部分配置并且运行良好 - 所以文件中必须有一些东西。如果其他人遇到这个
推荐阅读
- docker - 当我通过 docker 使用 rpms 时,Centos 映像构建失败
- php - 为什么要使用“finally”关键字?
- ringcentral - 生产应用程序:无效或未知的客户端(从凭据页面复制的 ID)
- powershell - 对为什么必须在 Windows 上安装 PowerShell Core 感到困惑……?
- ibm-mobilefirst - 在修订包 7.1.0.00.20190704-0841 之后,MobileFirst 7.1 无法导出 ipa
- reactjs - yupError.inner 在将模式与 Formik 集成时未定义
- sed - makefile 中的 sed -e 's@ *@ @g' 命令中的 @ 符号是什么意思?
- wordpress - 我无法访问我的 Wordpress 仪表板中的任何页面或链接。返回为 404:找不到页面。我已经尝试了一切来修复它
- image - 通过 Slack API 或 Incoming Webhook 发送消息时,是否可以使用文件路径而不是 url 作为`image_url`?
- python-3.x - 如何为第一次出现某个值的每一行返回列索引