Skip to content

Commit 70d6506

Browse files
author
lycbrian
committed
add secret manager kms condition
1 parent a6ddc36 commit 70d6506

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

locals.tf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ locals {
4040
| 1 | 1 | use custom kms */
4141
cloudwatch_log_group_kms_key_arn = var.is_create_cloudwatch_log_group ? var.cloudwatch_log_group_kms_key_arn != null ? var.cloudwatch_log_group_kms_key_arn : var.is_create_default_kms ? module.cloudwatch_log_group_kms[0].key_arn : null : null
4242

43+
secret_kms_key_arn = var.is_create_default_kms && var.secret_kms_key_arn == null ? module.secret_kms_key[0].key_arn : var.secret_kms_key_arn
44+
4345
tags = merge(
4446
{
4547
"Environment" = var.environment,

main.tf

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ module "cloudwatch_log_group_kms" {
104104
name = format("%s-log-group", var.name)
105105
key_type = "service"
106106
append_random_suffix = true
107-
description = format("Secure Secrets Manager's service secrets for service %s", local.name)
107+
description = format("Secure log group for service %s", local.name)
108108
additional_policies = [data.aws_iam_policy_document.cloudwatch_log_group_kms_policy.json]
109109

110110
tags = merge(local.tags, { "Name" : format("%s-log-group", local.name) })
@@ -193,6 +193,7 @@ resource "aws_lb_listener_rule" "this" {
193193
/* Secret */
194194
/* -------------------------------------------------------------------------- */
195195
module "secret_kms_key" {
196+
count = var.is_create_default_kms && var.secret_kms_key_arn == null ? 1 : 0
196197
source = "oozou/kms-key/aws"
197198
version = "1.0.0"
198199

@@ -226,7 +227,7 @@ resource "aws_secretsmanager_secret" "this" {
226227

227228
name = "${each.value.name}/${random_string.service_secret_random_suffix[each.key].result}"
228229
description = "Secret for service ${local.name}"
229-
kms_key_id = module.secret_kms_key.key_arn
230+
kms_key_id = local.secret_kms_key_arn
230231

231232
tags = merge({ Name = "${each.value.name}/${random_string.service_secret_random_suffix[each.key].result}" }, local.tags)
232233
}

variables.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,12 @@ variable "cloudwatch_log_group_kms_key_arn" {
9797
default = null
9898
}
9999

100+
variable "secret_kms_key_arn" {
101+
description = "The ARN for the secret manager KMS encryption key."
102+
type = string
103+
default = null
104+
}
105+
100106
/* -------------------------------------------------------------------------- */
101107
/* LoadBalancer */
102108
/* -------------------------------------------------------------------------- */

0 commit comments

Comments
 (0)