From c236b346373c57296230e69fb66ee6f20521b6f0 Mon Sep 17 00:00:00 2001 From: Olivier Kessler Date: Sun, 23 Nov 2025 16:25:14 +0100 Subject: [PATCH] feat: Allow a more flexible module extension * Allow using conditionals when extending the module to pass configuration * Applies to the inventory, the logging and the replication * Solves issue 297 --- main.tf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/main.tf b/main.tf index e36499f..5a9184a 100644 --- a/main.tf +++ b/main.tf @@ -74,7 +74,7 @@ resource "aws_s3_directory_bucket" "this" { } resource "aws_s3_bucket_logging" "this" { - count = local.create_bucket && length(keys(var.logging)) > 0 && !var.is_directory_bucket ? 1 : 0 + count = local.create_bucket && var.logging != null && length(keys(var.logging)) > 0 && !var.is_directory_bucket ? 1 : 0 region = var.region @@ -433,7 +433,7 @@ resource "aws_s3_bucket_object_lock_configuration" "this" { } resource "aws_s3_bucket_replication_configuration" "this" { - count = local.create_bucket && length(keys(var.replication_configuration)) > 0 && !var.is_directory_bucket ? 1 : 0 + count = local.create_bucket && var.replication_configuration != null && length(keys(var.replication_configuration)) > 0 && !var.is_directory_bucket ? 1 : 0 region = var.region @@ -1240,7 +1240,7 @@ resource "aws_s3_bucket_metric" "this" { } resource "aws_s3_bucket_inventory" "this" { - for_each = { for k, v in var.inventory_configuration : k => v if local.create_bucket && !var.is_directory_bucket } + for_each = local.create_bucket && !var.is_directory_bucket && var.inventory_configuration != null && length(keys(var.inventory_configuration)) > 0 ? var.inventory_configuration : {} region = var.region