在Terraform中,我正在尝试从创建的DNS A记录创建DNS SRV记录。我想用aws_route53_record.etcd名称中的名称填充记录,但是在引用资源名称时遇到错误。
有没有简单的方法来实现这一目标?
null
运行spawn
时,出现以下错误。
var p = require('child_process').spawn('ipconfig.exe', [], {
cwd: process.cwd(),
env: {
...process.env
},
stdio: 'pipe'
});
var stdout = p.stdout.read(10);
console.log(stderr);
var stderr = p.stderr.read(10);
console.log(stderr);
答案 0 :(得分:0)
您在同一行中使用for_each
和for
。两者都描述了循环,因此很难放松。尝试将行分为2条不同的行,并将for分配给局部变量。拆分for和for_each将有助于我们进行检查。
我认为问题是[for n in aws_route53_record.etcd : { name = n.name }]
起始括号[for ...
定义了一个列表,
{ name ..
定义了一个地图。因此列出了地图。也许要删除{
?
答案 1 :(得分:0)
根据反馈找出答案。感谢您的帮助!
resource "aws_route53_record" "etcd_ssl_tcp" {
zone_id = data.aws_route53_zone.kubic.zone_id
name = "_etcd-server-ssl._tcp.${data.aws_route53_zone.test.name}"
type = "SRV"
ttl = 60
records = [
for n in aws_route53_record.etcd :
"0 10 2380 ${n.name}"
]
}