@@ -20,8 +20,8 @@ module "im-alerting-lambda" {
2020 handler = " handlers.im_alerting_handler.lambda_handler"
2121 iam_role_policy_documents = [
2222 local . ssm_access_policy . policy ,
23- aws_iam_policy . alerting_lambda_alarms . policy ,
24- aws_iam_policy . alerting_lambda_tags . policy ,
23+ local . alerting_lambda_alarms_policy . policy ,
24+ local . alerting_lambda_tags_policy . policy ,
2525 module . ndr-app-config . app_config_policy ,
2626 module . alarm_state_history_table . dynamodb_read_policy_document ,
2727 module . alarm_state_history_table . dynamodb_write_policy_document
@@ -47,6 +47,7 @@ module "im-alerting-lambda" {
4747
4848
4949resource "aws_iam_policy" "alerting_lambda_alarms" {
50+ count = local. is_sandbox ? 0 : 1
5051 name = " ${ terraform . workspace } _alerting_lambda_alarms_policy"
5152 description = " Alarms policy to allow lambda to describe all alarms"
5253 policy = jsonencode ({
@@ -65,6 +66,7 @@ resource "aws_iam_policy" "alerting_lambda_alarms" {
6566}
6667
6768resource "aws_iam_policy" "alerting_lambda_tags" {
69+ count = local. is_sandbox ? 0 : 1
6870 name = " ${ terraform . workspace } _alerting_lambda_tags_policy"
6971 description = " Tags policy to allow alerting lambda to get resources by tags"
7072 policy = jsonencode ({
@@ -80,3 +82,23 @@ resource "aws_iam_policy" "alerting_lambda_tags" {
8082 })
8183}
8284
85+ data "aws_iam_policy" "dev_environment_alerting_lambda_alarms" {
86+ count = local. is_sandbox ? 1 : 0
87+ name = " ${ var . shared_infra_workspace } _alerting_lambda_alarms_policy"
88+ }
89+
90+ data "aws_iam_policy" "dev_environment_alerting_lambda_tags" {
91+ count = local. is_sandbox ? 1 : 0
92+ name = " ${ var . shared_infra_workspace } _alerting_lambda_tags_policy"
93+ }
94+
95+ locals {
96+ alerting_lambda_alarms_policy = local. is_sandbox ? (
97+ data. aws_iam_policy . dev_environment_alerting_lambda_alarms [0 ]
98+ ) : aws_iam_policy. alerting_lambda_alarms [0 ]
99+
100+ alerting_lambda_tags_policy = local. is_sandbox ? (
101+ data. aws_iam_policy . dev_environment_alerting_lambda_tags [0 ]
102+ ) : aws_iam_policy. alerting_lambda_tags [0 ]
103+ }
104+
0 commit comments