DEV Community

Nandan K
Nandan K

Posted on

Terraform Meta-arguments

Day 8 of #30daysofawsterraform challenge

Today I have deep dive into use cases of meta arguments with practicle examples.

What is it?
Meta-arguments are special arguments that can be used with "any resource type" to change the behavior of resources.

Different Meta-arguments:

Count:
Create multiple resource instances based on a number
Eg:
resource "aws_s3_bucket" "nandan_bucket" {
  count  = 3
  bucket = "my-bucket-${count.index}"
  tags = var.tags
}


For_each:
Creating resources from a map or set.
Eg:
resource "aws_s3_bucket" "example" {
Enter fullscreen mode Exit fullscreen mode

for_each = toset(["bucket1", "bucket2", "bucket3"])
bucket = each.value
}

Depends_on:
Ensuring resources are created in specific order
Eg:
resource "aws_s3_bucket" "dependent" {
Enter fullscreen mode Exit fullscreen mode

bucket = "my-bucket"

depends_on = [aws_s3_bucket.primary]
}

Provider:
Use cases:
Multi-region deployments
Multi-account setups
Cross-region replication
Eg:
resource "aws_s3_bucket" "example" {
provider = aws.west # Use alternate provider
bucket = "my-bucket"
}
Enter fullscreen mode Exit fullscreen mode




Devops #Terraform #AWS

Thanks to Piyush sachdeva The CloudOps Community

Top comments (0)