![](/img/trans.png)
[英]How to get multiple values in a list without using count in terraform?
[英]How to get the value of Terraform count
我需要在下面的 Terraform 代碼中獲取count
,以便可以在 bash 中編寫條件語句。
這是terraform
resource "aws_instance" "kubernetes_master" {
ami = "${var.ec2-ami}"
count = 3
instance_type = "${var.ec2-type}"
key_name = "${aws_key_pair.public.key_name}"
subnet_id = "${aws_subnet.kube-master-subnet.id}"
vpc_security_group_ids = ["${aws_security_group.sg-kube-master-allow-ssh.id}"]
associate_public_ip_address = true
user_data = <<-EOF
#!/bin/bash
# if count=0; then echo "done"; fi
pwd
EOF
}
所以如果count=0
,我想打印done
我怎樣才能做到這一點?
您可以在 user_data heredoc 中使用${count.index}
來引用當前計數。
resource "aws_instance" "kubernetes_master" {
ami = "${var.ec2-ami}"
count = 3
instance_type = "${var.ec2-type}"
key_name = "${aws_key_pair.public.key_name}"
subnet_id = "${aws_subnet.kube-master-subnet.id}"
vpc_security_group_ids = ["${aws_security_group.sg-kube-master-allow-ssh.id}"]
associate_public_ip_address = true
user_data = <<-EOF
#!/bin/bash
# if ${count.index} -eq 0; then echo "done"; fi
pwd
EOF
}
如果資源的總計數為 0,則不會創建 aws_instance 資源,也不會運行 user_data。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.