Difference between revisions of "Terraform meta argument: count"

From wikieduonline
Jump to navigation Jump to search
Line 1: Line 1:
 
* https://www.terraform.io/docs/language/meta-arguments/count.html
 
* https://www.terraform.io/docs/language/meta-arguments/count.html
  
 +
== Examples ==
 
* <code> count = [[length]](var.[[subnet_ids]])</code>
 
* <code> count = [[length]](var.[[subnet_ids]])</code>
 
* <code> [[count]]                = var.[[vpc_cidr_block]] != null ? 1 : 0</code>
 
* <code> [[count]]                = var.[[vpc_cidr_block]] != null ? 1 : 0</code>

Revision as of 06:41, 14 February 2023

Examples

  • count = 0

Terraform does not allow to use count inside module block.[1]

resource "aws_instance" "dev" {
   ami = "ami-082b5a644766e0e6f"
   instance_type = "t2.micro"
   count = 2
}
resource "aws_instance" "your_new_instance_in_test" {
   ami = "ami-082b5a644766e0e6f"
   instance_type = "t2.micro"
   count = var.istest == true ? 3 : 0
}
resource "aws_instance" "your_new_conditional_instance {
   count = var.your_env == "PRE" ? 1 : 0
   ami = "ami-082b5a644766e0e6f"
   instance_type = "t2.micro"
}


variable "elb_names" {
  type = list
  default = ["dev-loadbalancer", "stage-loadbalanacer","prod-loadbalancer"]
}
 
resource "aws_iam_user" "lb" {
  name = var.elb_names[count.index]
  count = 2
  path = "/system/"
}


resource "aws_ecs_service" "your_service" {
count = var.your_env_name == "PROD" ? 1 : 0
.../...
task_definition = "${aws_ecs_task_definition.dashboards_task[0].family}:${aws_ecs_task_definition.dashboards_task[0].revision}"
.../...
}


Related

See also

  • https://registry.terraform.io/modules/terraform-aws-modules/s3-bucket/aws/latest
  • Advertising: