我创建了添加标签的VPC和子网。
稍后,我创建了一个EKS集群,该集群将附加其自己的标签,如果再次apply
,这些标签将被覆盖。
我需要任何方法来读取当前标签,然后与我的自定义标签合并。问题是,如果是第一次创建VPC资源,我无法查询是否存在某些标记。
这是我的子网定义
resource "aws_subnet" "k8s" {
count = "${var.create_vpc && length(var.k8s_subnets) > 0 ? length(var.k8s_subnets) : 0}"
vpc_id = "${local.vpc_id}"
cidr_block = "${var.k8s_subnets[count.index]}"
availability_zone = "${element(var.azs, count.index)}"
tags = "${merge(map("Name", format("subnet-%s-${var.k8s_subnet_suffix}-%s", var.name, element(var.azs, count.index))), var.tags, var.k8s_subnet_tags)}"
}
这是EKS添加的标签:
kubernetes.io/cluster/eks-cluster : shared
我被这种...卡住了,首先是鸡肉还是鸡蛋?有任何想法或建议吗?
-已编辑
诸如self.tags之类的东西可能是解决方案,但不幸的是不可能:
self.ATTRIBUTE语法仅在供应商中允许并有效。
并显示错误:
Error: resource 'aws_subnet.k8s' config: cannot contain self-reference self.tags
答案 0 :(得分:1)
这就是我的工作