Difference between revisions of "Terraform meta argument: count"

From wikieduonline
Jump to navigation Jump to search
Tags: Mobile web edit, Mobile edit
Tags: Mobile web edit, Mobile edit
Line 4: Line 4:
 
* <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>
 +
* <code>count = local.create_node_sg ? 1 : 0</code>
 
* <code> count = var.istest == true ? 3 : 0</code>
 
* <code> count = var.istest == true ? 3 : 0</code>
  
Line 47: Line 48:
 
  .../...
 
  .../...
 
  }
 
  }
 
  
 
== Related ==
 
== Related ==

Revision as of 20:58, 16 March 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: