Yazeka
Arama sonuçlarına göre oluşturuldu
Terraform'da if-else ifadesi, ternary koşullu operatör kullanılarak yapılır 12. 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 1.
Bazı kullanım örnekleri:
- Kaynak Parametrelerinin Koşullu Olarak Ayarlanması: Çevreye bağlı olarak S3 bucket erişim politikalarını ayarlamak için 1:
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" }
- Kaynakların Koşullu Olarak Oluşturulması: Bir kaynağı yalnızca belirli koşullar sağlandığında oluşturmak için 4:
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 }
- İç İç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 1:
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" }
5 kaynaktan alınan bilgiyle göre: