terraform - Terraform 从 v0.11 迁移到 v0.12 的标签问题
问题描述
我正在尝试将我的 terraform 计划从 v0.11 迁移到 v0.12 terraform 版本,当我执行验证时,我遇到了一些错误并出现相同的错误:“不支持的块类型”并且服务将问题标记为“ TAGS ”标签与该评论:
这里不需要“标签”类型的块。您的意思是定义参数“标签”吗?如果是这样,请使用等号为其赋值。
一个例子就是这个令人不安的资源:
resource "aws_vpc" "VPC" {
cidr_block = "10.0.0.0/24"
enable_dns_hostnames = "true"
enable_dns_support = "true"
tags {
Name = "${var.name}-VPC-Default"
Environment = var.env
Region = var.region
}
}
我阅读了有关支持标签类型“ TAGS ”的资源的文档,并阅读了它工作正常的 v0.11 版本。
关于我的问题有什么建议吗?
解决方案
该错误解释了在 Terraform 0.12tags
中不再是一个块,而是现在一个参数。Terraform 中的块如下所示:
block { ... }
这就是您的标签当前的显示方式。一个参数看起来像:
argument = value
因此,您需要将您的tags
从块转换为参数。可以这样做:
tags = {
Name = "${var.name}-VPC-Default"
Environment = var.env
Region = var.region
}
wheretags
现在被分配了map
您以前包含在块中的值。
推荐阅读
- macos - JupyterLab - 如何添加 Command(⌘) + Enter 以在 macOS 中运行单元格?(怎么叫⌘?)
- css - Rubymine css代码完成不起作用
- shell - 如何使用脚本删除文件中重复的填充字符?
- spring-boot - 使用spring boot将文件上传到数据库时出现错误
- css - Google Chrome 浏览器中的 CSS - MAC
- python - 如何在python中的csv文件中写入度数符号并读取与熊猫数据框相同的文件?
- google-sheets - 谷歌表格函数
- javascript - 谁不是每个请求都更新班级成员?
- amazon-web-services - AWS Cloudfront 和 Woocommerce 购物车的问题
- python - 在我降级 Python 版本后,Pip 在 Mac 上坏了