From 731637b09d40f26dec2d45aeecada6d23bd79f9f Mon Sep 17 00:00:00 2001 From: Byungjin Park Date: Wed, 10 Sep 2025 23:51:36 +0900 Subject: [PATCH] feat: improve how to use resource_group in modules --- modules/s3-archive-bucket/outputs.tf | 16 ++++++++++ modules/s3-archive-bucket/resource-group.tf | 10 +++---- modules/s3-archive-bucket/variables.tf | 29 ++++++++++--------- modules/sqs-aws-event-queue/outputs.tf | 16 ++++++++++ modules/sqs-aws-event-queue/resource-group.tf | 10 +++---- modules/sqs-aws-event-queue/variables.tf | 29 ++++++++++--------- 6 files changed, 72 insertions(+), 38 deletions(-) diff --git a/modules/s3-archive-bucket/outputs.tf b/modules/s3-archive-bucket/outputs.tf index 37da2df..8a77110 100644 --- a/modules/s3-archive-bucket/outputs.tf +++ b/modules/s3-archive-bucket/outputs.tf @@ -104,3 +104,19 @@ output "logging" { } } } + +output "resource_group" { + description = "The resource group created to manage resources in this module." + value = merge( + { + enabled = var.resource_group.enabled && var.module_tags_enabled + }, + (var.resource_group.enabled && var.module_tags_enabled + ? { + arn = module.resource_group[0].arn + name = module.resource_group[0].name + } + : {} + ) + ) +} diff --git a/modules/s3-archive-bucket/resource-group.tf b/modules/s3-archive-bucket/resource-group.tf index 7487ba0..85c4fb0 100644 --- a/modules/s3-archive-bucket/resource-group.tf +++ b/modules/s3-archive-bucket/resource-group.tf @@ -1,6 +1,6 @@ locals { - resource_group_name = (var.resource_group_name != "" - ? var.resource_group_name + resource_group_name = (var.resource_group.name != "" + ? var.resource_group.name : join(".", [ local.metadata.package, local.metadata.module, @@ -12,12 +12,12 @@ locals { module "resource_group" { source = "tedilabs/misc/aws//modules/resource-group" - version = "~> 0.10.0" + version = "~> 0.12.0" - count = (var.resource_group_enabled && var.module_tags_enabled) ? 1 : 0 + count = (var.resource_group.enabled && var.module_tags_enabled) ? 1 : 0 name = local.resource_group_name - description = var.resource_group_description + description = var.resource_group.description query = { resource_tags = local.module_tags diff --git a/modules/s3-archive-bucket/variables.tf b/modules/s3-archive-bucket/variables.tf index df3a38d..608b5c8 100644 --- a/modules/s3-archive-bucket/variables.tf +++ b/modules/s3-archive-bucket/variables.tf @@ -181,20 +181,21 @@ variable "module_tags_enabled" { # Resource Group ################################################### -variable "resource_group_enabled" { - description = "(Optional) Whether to create Resource Group to find and group AWS resources which are created by this module." - type = bool - default = true -} -variable "resource_group_name" { - description = "(Optional) The name of Resource Group. A Resource Group name can have a maximum of 127 characters, including letters, numbers, hyphens, dots, and underscores. The name cannot start with `AWS` or `aws`." - type = string - default = "" -} -variable "resource_group_description" { - description = "(Optional) The description of Resource Group." - type = string - default = "Managed by Terraform." + +variable "resource_group" { + description = <