Terraform'da if-else ifadesi, ternary koşullu operatör kullanılarak yapılır. Bu operatörün syntax'ı şu şekildedir: ``` condition ? true_value : false_value ``` Bu ifade, koşulu değerlendirir ve koşul karşılanırsa true_value, karşılanmazsa false_value değerini döndürür. Bazı kullanım örnekleri: 1. Kaynak Parametrelerinin Koşullu Olarak Ayarlanması: Çevreye bağlı olarak S3 bucket erişim politikalarını ayarlamak için: ``` variable "environment" { description = "The environment to target (dev, staging, prod)" type = string } resource "aws_s3_bucket" "my_bucket" { bucket = "my-bucket-${var.environment}" acl = var.environment == "prod" ? "private" : "public-read" } ``` 2. Kaynakların Koşullu Olarak Oluşturulması: Bir kaynağı yalnızca belirli koşullar sağlandığında oluşturmak için: ``` resource "aws_db_instance" "my_db" { count = var.create_db ? 1 : 0 identifier = "my-database" engine = "mysql" instance_class = "db.t2.micro" allocated_storage = 20 } ``` 3. İç İçe if-else İfadeleri: Daha karmaşık senaryolar için, birden fazla koşullu yapılandırma tanımlamak amacıyla if-else ifadelerini iç içe geçirmek mümkündür: ``` variable "environment" { description = "Deployment environment" type = string } resource "aws_instance" "app_server" { ami = var.environment == "prod" ? "ami-prod-123456" : var.environment == "staging" ? "ami-staging-123456" : "ami-dev-123456" instance_type = "t2.micro" } ```