Skip to content

Commit fb96ec5

Browse files
committed
feat(sfn-state-machine): improve how to use resource_group in module
1 parent ae45aeb commit fb96ec5

File tree

3 files changed

+36
-22
lines changed

3 files changed

+36
-22
lines changed

modules/sfn-state-machine/outputs.tf

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,3 +101,19 @@ output "created_at" {
101101
description = "The date the state machine was created."
102102
value = aws_sfn_state_machine.this.creation_date
103103
}
104+
105+
output "resource_group" {
106+
description = "The resource group created to manage resources in this module."
107+
value = merge(
108+
{
109+
enabled = var.resource_group.enabled && var.module_tags_enabled
110+
},
111+
(var.resource_group.enabled && var.module_tags_enabled
112+
? {
113+
arn = module.resource_group[0].arn
114+
name = module.resource_group[0].name
115+
}
116+
: {}
117+
)
118+
)
119+
}

modules/sfn-state-machine/resource-group.tf

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
locals {
2-
resource_group_name = (var.resource_group_name != ""
3-
? var.resource_group_name
2+
resource_group_name = (var.resource_group.name != ""
3+
? var.resource_group.name
44
: join(".", [
55
local.metadata.package,
66
local.metadata.module,
@@ -12,12 +12,12 @@ locals {
1212

1313
module "resource_group" {
1414
source = "tedilabs/misc/aws//modules/resource-group"
15-
version = "~> 0.10.0"
15+
version = "~> 0.12.0"
1616

17-
count = (var.resource_group_enabled && var.module_tags_enabled) ? 1 : 0
17+
count = (var.resource_group.enabled && var.module_tags_enabled) ? 1 : 0
1818

1919
name = local.resource_group_name
20-
description = var.resource_group_description
20+
description = var.resource_group.description
2121

2222
query = {
2323
resource_tags = local.module_tags

modules/sfn-state-machine/variables.tf

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -189,23 +189,21 @@ variable "module_tags_enabled" {
189189
# Resource Group
190190
###################################################
191191

192-
variable "resource_group_enabled" {
193-
description = "(Optional) Whether to create Resource Group to find and group AWS resources which are created by this module."
194-
type = bool
195-
default = true
196-
nullable = false
197-
}
198192

199-
variable "resource_group_name" {
200-
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`."
201-
type = string
202-
default = ""
203-
nullable = false
204-
}
205193

206-
variable "resource_group_description" {
207-
description = "(Optional) The description of Resource Group."
208-
type = string
209-
default = "Managed by Terraform."
210-
nullable = false
194+
195+
variable "resource_group" {
196+
description = <<EOF
197+
(Optional) A configurations of Resource Group for this module. `resource_group` as defined below.
198+
(Optional) `enabled` - Whether to create Resource Group to find and group AWS resources which are created by this module. Defaults to `true`.
199+
(Optional) `name` - 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`. If not provided, a name will be generated using the module name and instance name.
200+
(Optional) `description` - The description of Resource Group. Defaults to `Managed by Terraform.`.
201+
EOF
202+
type = object({
203+
enabled = optional(bool, true)
204+
name = optional(string, "")
205+
description = optional(string, "Managed by Terraform.")
206+
})
207+
default = {}
208+
nullable = false
211209
}

0 commit comments

Comments
 (0)