From 5d48ff73350f5935486e49b46b058c14a58d7d6f Mon Sep 17 00:00:00 2001 From: robertsweetman Date: Tue, 20 Aug 2024 12:31:11 +0100 Subject: [PATCH 1/9] example for pagerduty integrations --- .../pagerduty/member-services-integrations.tf | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/terraform/pagerduty/member-services-integrations.tf b/terraform/pagerduty/member-services-integrations.tf index 97452909d..921e18e8e 100644 --- a/terraform/pagerduty/member-services-integrations.tf +++ b/terraform/pagerduty/member-services-integrations.tf @@ -2543,3 +2543,80 @@ resource "pagerduty_slack_connection" "chaps_slack" { priorities = ["*"] } } + +locals { + services = { + csr_preproduction = { + # slack_channel_id = "TBD" # alarms_nonprod_csr + } + csr_production = { + # slack_channel_id = "TBD" # alarms_prod_csr + } + nomis_development = { + # slack_channel_id = "TBD" # alarms_nonprod_nomis + } + nomis_test = { + # slack_channel_id = "TBD" # alarms_nonprod_nomis + } + nomis_preproduction = { + # slack_channel_id = "TBD" # alarms_nonprod_nomis + } + nomis_production = { + # slack_channel_id = "TBD" # alarms_prod_nomis + } + planetfm_preproduction = { + # slack_channel_id = "TBD" # alarms_nonprod_planetfm + } + planetfm_production = { + # slack_channel_id = "TBD" # alarms_prod_planetfm + } + } + slack_events = [ + "incident.triggered", + "incident.acknowledged", + "incident.escalated", + "incident.resolved", + "incident.reassigned", + "incident.annotated", + "incident.unacknowledged", + "incident.delegated", + "incident.priority_updated", + "incident.responder.added", + "incident.responder.replied", + "incident.action_invocation.created", + "incident.action_invocation.terminated", + "incident.action_invocation.updated", + "incident.status_update_published", + "incident.reopened" + ] +} + +resource "pagerduty_service" "services" { + for_each = local.services + + name = "${each.key}_alarms" + description = "${each.key}_alarms" + auto_resolve_timeout = 345600 + acknowledgement_timeout = "null" + escalation_policy = pagerduty_escalation_policy.member_policy.id + alert_creation = "create_alerts_and_incidents" +} +resource "pagerduty_service_integration" "integrations" { + for_each = pagerduty_service.services + name = data.pagerduty_vendor.cloudwatch.name + service = each.value.id + vendor = data.pagerduty_vendor.cloudwatch.id +} + +resource "pagerduty_slack_connection" "connections" { + for_each = pagerduty_service.services + source_id = each.value.id + source_type = "service_reference" + workspace_id = local.slack_workspace_id + channel_id = local.services[each.key].slack_channel_id + notification_type = "responder" + config { + events = local.slack_events + priorities = ["*"] + } +} From 2eb8b0b7ad8ed215cbd3db0daa3abe7b12d36b8e Mon Sep 17 00:00:00 2001 From: robertsweetman Date: Tue, 20 Aug 2024 12:57:44 +0100 Subject: [PATCH 2/9] change for_each loop --- terraform/pagerduty/member-services-integrations.tf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/terraform/pagerduty/member-services-integrations.tf b/terraform/pagerduty/member-services-integrations.tf index 921e18e8e..ca7cfc8b6 100644 --- a/terraform/pagerduty/member-services-integrations.tf +++ b/terraform/pagerduty/member-services-integrations.tf @@ -2609,11 +2609,11 @@ resource "pagerduty_service_integration" "integrations" { } resource "pagerduty_slack_connection" "connections" { - for_each = pagerduty_service.services - source_id = each.value.id + for_each = local.services + source_id = pagerduty_service.services[each.key].id source_type = "service_reference" workspace_id = local.slack_workspace_id - channel_id = local.services[each.key].slack_channel_id + channel_id = each.value.slack_channel_id notification_type = "responder" config { events = local.slack_events From b86b18d72963d7eb3537b1b856b7f08ae06f7b68 Mon Sep 17 00:00:00 2001 From: robertsweetman Date: Tue, 20 Aug 2024 16:01:54 +0100 Subject: [PATCH 3/9] creating new integrations for new alarms --- terraform/pagerduty/aws.tf | 2 + .../pagerduty/member-services-integrations.tf | 40 +++++++++---------- 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/terraform/pagerduty/aws.tf b/terraform/pagerduty/aws.tf index e1f24f2de..d8fccccaa 100644 --- a/terraform/pagerduty/aws.tf +++ b/terraform/pagerduty/aws.tf @@ -77,6 +77,8 @@ resource "aws_secretsmanager_secret_version" "pagerduty_integration_keys" { laa_edw_nonprod_alarms = pagerduty_service_integration.edw_non_prod.integration_key laa_edw_prod_alarms = pagerduty_service_integration.edw_prod.integration_key cdpt-ifs-alarms = pagerduty_service_integration.cdpt_ifs_cloudwatch.integration_key + csr_preproduction_alarms = pagerduty_service_integration.csr_preproduction.integration_key + csr_production_alarms = pagerduty_service_integration.csr_production.integration_key }) } diff --git a/terraform/pagerduty/member-services-integrations.tf b/terraform/pagerduty/member-services-integrations.tf index ca7cfc8b6..c5d85a1ac 100644 --- a/terraform/pagerduty/member-services-integrations.tf +++ b/terraform/pagerduty/member-services-integrations.tf @@ -2547,29 +2547,29 @@ resource "pagerduty_slack_connection" "chaps_slack" { locals { services = { csr_preproduction = { - # slack_channel_id = "TBD" # alarms_nonprod_csr + slack_channel_id = "C07J1UFEK25" # alarms_non_prod_csr } csr_production = { - # slack_channel_id = "TBD" # alarms_prod_csr - } - nomis_development = { - # slack_channel_id = "TBD" # alarms_nonprod_nomis - } - nomis_test = { - # slack_channel_id = "TBD" # alarms_nonprod_nomis - } - nomis_preproduction = { - # slack_channel_id = "TBD" # alarms_nonprod_nomis - } - nomis_production = { - # slack_channel_id = "TBD" # alarms_prod_nomis - } - planetfm_preproduction = { - # slack_channel_id = "TBD" # alarms_nonprod_planetfm - } - planetfm_production = { - # slack_channel_id = "TBD" # alarms_prod_planetfm + slack_channel_id = "C07HQ17MY11" # alarms_prod_csr } + # nomis_development = { + # # slack_channel_id = "TBD" # alarms_nonprod_nomis + # } + # nomis_test = { + # # slack_channel_id = "TBD" # alarms_nonprod_nomis + # } + # nomis_preproduction = { + # # slack_channel_id = "TBD" # alarms_nonprod_nomis + # } + # nomis_production = { + # # slack_channel_id = "TBD" # alarms_prod_nomis + # } + # planetfm_preproduction = { + # # slack_channel_id = "TBD" # alarms_nonprod_planetfm + # } + # planetfm_production = { + # # slack_channel_id = "TBD" # alarms_prod_planetfm + # } } slack_events = [ "incident.triggered", From 6dc9e0ca6785e968384f339c1902174d1bdf1464 Mon Sep 17 00:00:00 2001 From: robertsweetman Date: Tue, 20 Aug 2024 16:12:06 +0100 Subject: [PATCH 4/9] change root module declaration --- terraform/pagerduty/aws.tf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/terraform/pagerduty/aws.tf b/terraform/pagerduty/aws.tf index d8fccccaa..72514fe82 100644 --- a/terraform/pagerduty/aws.tf +++ b/terraform/pagerduty/aws.tf @@ -77,8 +77,8 @@ resource "aws_secretsmanager_secret_version" "pagerduty_integration_keys" { laa_edw_nonprod_alarms = pagerduty_service_integration.edw_non_prod.integration_key laa_edw_prod_alarms = pagerduty_service_integration.edw_prod.integration_key cdpt-ifs-alarms = pagerduty_service_integration.cdpt_ifs_cloudwatch.integration_key - csr_preproduction_alarms = pagerduty_service_integration.csr_preproduction.integration_key - csr_production_alarms = pagerduty_service_integration.csr_production.integration_key + csr_preproduction = pagerduty_service_integration.csr_preproduction.integration_key + csr_production = pagerduty_service_integration.csr_production.integration_key }) } From 40b0e0f4c5f74e62a65b52a46799862b35503870 Mon Sep 17 00:00:00 2001 From: robertsweetman Date: Tue, 20 Aug 2024 16:15:20 +0100 Subject: [PATCH 5/9] change service name --- terraform/pagerduty/member-services-integrations.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/terraform/pagerduty/member-services-integrations.tf b/terraform/pagerduty/member-services-integrations.tf index c5d85a1ac..e7f102fa4 100644 --- a/terraform/pagerduty/member-services-integrations.tf +++ b/terraform/pagerduty/member-services-integrations.tf @@ -2594,7 +2594,7 @@ locals { resource "pagerduty_service" "services" { for_each = local.services - name = "${each.key}_alarms" + name = "${each.key}" description = "${each.key}_alarms" auto_resolve_timeout = 345600 acknowledgement_timeout = "null" From ae2ae233456d84b9103fa9281ce4d4487e740344 Mon Sep 17 00:00:00 2001 From: robertsweetman Date: Tue, 20 Aug 2024 16:19:34 +0100 Subject: [PATCH 6/9] fix dependency issue --- terraform/pagerduty/aws.tf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/terraform/pagerduty/aws.tf b/terraform/pagerduty/aws.tf index 72514fe82..e58247d70 100644 --- a/terraform/pagerduty/aws.tf +++ b/terraform/pagerduty/aws.tf @@ -80,6 +80,8 @@ resource "aws_secretsmanager_secret_version" "pagerduty_integration_keys" { csr_preproduction = pagerduty_service_integration.csr_preproduction.integration_key csr_production = pagerduty_service_integration.csr_production.integration_key }) + + depends_on = [ pager_service_integration.integrations ] } # Pagerduty token From 07e3c28a22982640f11c32e3cea6099ec8c757c4 Mon Sep 17 00:00:00 2001 From: robertsweetman Date: Tue, 20 Aug 2024 16:26:26 +0100 Subject: [PATCH 7/9] refer to missing value correctly --- terraform/pagerduty/aws.tf | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/terraform/pagerduty/aws.tf b/terraform/pagerduty/aws.tf index e58247d70..756904dba 100644 --- a/terraform/pagerduty/aws.tf +++ b/terraform/pagerduty/aws.tf @@ -77,11 +77,9 @@ resource "aws_secretsmanager_secret_version" "pagerduty_integration_keys" { laa_edw_nonprod_alarms = pagerduty_service_integration.edw_non_prod.integration_key laa_edw_prod_alarms = pagerduty_service_integration.edw_prod.integration_key cdpt-ifs-alarms = pagerduty_service_integration.cdpt_ifs_cloudwatch.integration_key - csr_preproduction = pagerduty_service_integration.csr_preproduction.integration_key - csr_production = pagerduty_service_integration.csr_production.integration_key + csr_preproduction = pagerduty_service_integration.integrations["csr_preproduction"].integration_key + csr_production = pagerduty_service_integration.integrations["csr_production"].integration_key }) - - depends_on = [ pager_service_integration.integrations ] } # Pagerduty token From ee663b6614196e592ec3bcbe4b747c06d04949ee Mon Sep 17 00:00:00 2001 From: robertsweetman Date: Tue, 20 Aug 2024 16:30:37 +0100 Subject: [PATCH 8/9] change the nonprod channel name again --- terraform/pagerduty/member-services-integrations.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/terraform/pagerduty/member-services-integrations.tf b/terraform/pagerduty/member-services-integrations.tf index e7f102fa4..ecfe5270d 100644 --- a/terraform/pagerduty/member-services-integrations.tf +++ b/terraform/pagerduty/member-services-integrations.tf @@ -2547,7 +2547,7 @@ resource "pagerduty_slack_connection" "chaps_slack" { locals { services = { csr_preproduction = { - slack_channel_id = "C07J1UFEK25" # alarms_non_prod_csr + slack_channel_id = "C07J1UFEK25" # alarms_nonprod_csr } csr_production = { slack_channel_id = "C07HQ17MY11" # alarms_prod_csr From f69e6eb23fcf85eb0f30652710ffecc1b130e6b6 Mon Sep 17 00:00:00 2001 From: robertsweetman Date: Tue, 20 Aug 2024 16:54:40 +0100 Subject: [PATCH 9/9] use full application naming --- terraform/pagerduty/aws.tf | 122 +++++++++--------- .../pagerduty/member-services-integrations.tf | 34 ++--- 2 files changed, 70 insertions(+), 86 deletions(-) diff --git a/terraform/pagerduty/aws.tf b/terraform/pagerduty/aws.tf index 756904dba..410887883 100644 --- a/terraform/pagerduty/aws.tf +++ b/terraform/pagerduty/aws.tf @@ -18,67 +18,67 @@ resource "aws_secretsmanager_secret" "pagerduty_integration_keys" { resource "aws_secretsmanager_secret_version" "pagerduty_integration_keys" { secret_id = aws_secretsmanager_secret.pagerduty_integration_keys.id secret_string = jsonencode({ - core_alerts_cloudwatch = pagerduty_service_integration.core_alerts_cloudwatch.integration_key, - ddos_cloudwatch = pagerduty_service_integration.ddos_cloudwatch.integration_key, - tgw_cloudwatch = pagerduty_service_integration.tgw_cloudwatch.integration_key, - networking_cloudwatch = pagerduty_service_integration.networking_cloudwatch.integration_key, - operations_cloudwatch = pagerduty_service_integration.operations_cloudwatch.integration_key, - security_cloudwatch = pagerduty_service_integration.security_cloudwatch.integration_key, - nomis_alarms = pagerduty_service_integration.nomis_cloudwatch.integration_key, - nomis_nonprod_alarms = pagerduty_service_integration.nomis_nonprod_cloudwatch.integration_key, - laa_mlra_nonprod_alarms = pagerduty_service_integration.laa_mlra_nonprod_cloudwatch.integration_key, - laa_mlra_prod_alarms = pagerduty_service_integration.laa_mlra_prod_cloudwatch.integration_key, - laa_oas_nonprod_alarms = pagerduty_service_integration.laa_oas_nonprod_cloudwatch.integration_key, - laa_oas_prod_alarms = pagerduty_service_integration.laa_oas_prod_cloudwatch.integration_key, - jitbit_nonprod_alarms = pagerduty_service_integration.jitbit_nonprod_cloudwatch.integration_key, - jitbit_prod_alarms = pagerduty_service_integration.jitbit_prod_cloudwatch.integration_key, - iaps_nonprod_alarms = pagerduty_service_integration.iaps_nonprod_cloudwatch.integration_key, - iaps_prod_alarms = pagerduty_service_integration.iaps_prod_cloudwatch.integration_key, - laa_mojfin_prod_alarms = pagerduty_service_integration.laa_mojfin_prod_cloudwatch.integration_key, - laa_mojfin_non_prod_alarms = pagerduty_service_integration.laa_mojfin_non_prod_cloudwatch.integration_key, - hmpps_shef_dba_high_priority = pagerduty_service_integration.hmpps_shef_dba_high_priority.integration_key, - hmpps_shef_dba_low_priority = pagerduty_service_integration.hmpps_shef_dba_low_priority.integration_key, - hmpps_shef_dba_non_prod = pagerduty_service_integration.hmpps_shef_dba_non_prod.integration_key, - oasys_alarms = pagerduty_service_integration.oasys_cloudwatch.integration_key, - oasys_nonprod_alarms = pagerduty_service_integration.oasys_nonprod_cloudwatch.integration_key - test_alarms = pagerduty_service_integration.test_alarms.integration_key, - laa_portal_nonprod_alarms = pagerduty_service_integration.laa_portal_nonprod_cloudwatch.integration_key, - laa_portal_prod_alarms = pagerduty_service_integration.laa_portal_prod_cloudwatch.integration_key - laa_maat_nonprod_alarms = pagerduty_service_integration.laa_maat_nonprod_cloudwatch.integration_key, - laa_maat_prod_alarm = pagerduty_service_integration.laa_maat_prod_cloudwatch.integration_key, - csr_alarms = pagerduty_service_integration.csr_cloudwatch.integration_key, - dpr_nonprod_alarms = pagerduty_service_integration.dpr_nonprod_cloudwatch.integration_key, - planetfm_alarms = pagerduty_service_integration.planetfm_cloudwatch.integration_key, - ncas_non_prod_alarms = pagerduty_service_integration.ncas_non_prod_cloudwatch.integration_key, - ncas_prod_alarms = pagerduty_service_integration.ncas_prod_cloudwatch.integration_key, - wardship_non_prod_alarms = pagerduty_service_integration.wardship_non_prod_cloudwatch.integration_key, - wardship_prod_alarms = pagerduty_service_integration.wardship_prod_cloudwatch.integration_key, - pra_non_prod_alarms = pagerduty_service_integration.pra_non_prod_cloudwatch.integration_key, - pra_prod_alarms = pagerduty_service_integration.pra_prod_cloudwatch.integration_key, - tipstaff_non_prod_alarms = pagerduty_service_integration.tipstaff_non_prod_cloudwatch.integration_key, - tipstaff_prod_alarms = pagerduty_service_integration.tipstaff_prod_cloudwatch.integration_key, - dacp_non_prod_alarms = pagerduty_service_integration.dacp_non_prod_cloudwatch.integration_key, - dacp_prod_alarms = pagerduty_service_integration.dacp_prod_cloudwatch.integration_key, - laa_maat_api_nonprod_alarms = pagerduty_service_integration.laa_maat_api_nonprod_cloudwatch.integration_key, - laa_maat_api_prod_alarms = pagerduty_service_integration.laa_maat_api_prod_cloudwatch.integration_key, - hmpps_domain_services_prod_alarms = pagerduty_service_integration.hmpps_domain_services_prod_cloudwatch.integration_key, - hmpps_domain_services_nonprod_alarms = pagerduty_service_integration.hmpps_domain_services_nonprod_cloudwatch.integration_key - delius_core_nonprod_alarms = pagerduty_service_integration.delius_core_nonprod_cloudwatch.integration_key - delius_nextcloud_nonprod_alarms = pagerduty_service_integration.delius_nextcloud_nonprod_cloudwatch.integration_key - delius_nextcloud_prod_alarms = pagerduty_service_integration.delius_nextcloud_prod_cloudwatch.integration_key - laa_cwa_nonprod_alarms = pagerduty_service_integration.cwa_non_prod.integration_key - laa_cwa_prod_alarms = pagerduty_service_integration.cwa_prod.integration_key - nomis_data_hub_nonprod_alarms = pagerduty_service_integration.ndh_non_prod.integration_key - nomis_data_hub_prod_alarms = pagerduty_service_integration.ndh_prod.integration_key - laa_apex_nonprod_alarms = pagerduty_service_integration.apex_non_prod.integration_key - laa_apex_prod_alarms = pagerduty_service_integration.apex_prod.integration_key - delius_mis_nonprod_alarms = pagerduty_service_integration.delius_mis_non_prod.integration_key - delius_mis_prod_alarms = pagerduty_service_integration.delius_mis_prod.integration_key - laa_edw_nonprod_alarms = pagerduty_service_integration.edw_non_prod.integration_key - laa_edw_prod_alarms = pagerduty_service_integration.edw_prod.integration_key - cdpt-ifs-alarms = pagerduty_service_integration.cdpt_ifs_cloudwatch.integration_key - csr_preproduction = pagerduty_service_integration.integrations["csr_preproduction"].integration_key - csr_production = pagerduty_service_integration.integrations["csr_production"].integration_key + core_alerts_cloudwatch = pagerduty_service_integration.core_alerts_cloudwatch.integration_key, + ddos_cloudwatch = pagerduty_service_integration.ddos_cloudwatch.integration_key, + tgw_cloudwatch = pagerduty_service_integration.tgw_cloudwatch.integration_key, + networking_cloudwatch = pagerduty_service_integration.networking_cloudwatch.integration_key, + operations_cloudwatch = pagerduty_service_integration.operations_cloudwatch.integration_key, + security_cloudwatch = pagerduty_service_integration.security_cloudwatch.integration_key, + nomis_alarms = pagerduty_service_integration.nomis_cloudwatch.integration_key, + nomis_nonprod_alarms = pagerduty_service_integration.nomis_nonprod_cloudwatch.integration_key, + laa_mlra_nonprod_alarms = pagerduty_service_integration.laa_mlra_nonprod_cloudwatch.integration_key, + laa_mlra_prod_alarms = pagerduty_service_integration.laa_mlra_prod_cloudwatch.integration_key, + laa_oas_nonprod_alarms = pagerduty_service_integration.laa_oas_nonprod_cloudwatch.integration_key, + laa_oas_prod_alarms = pagerduty_service_integration.laa_oas_prod_cloudwatch.integration_key, + jitbit_nonprod_alarms = pagerduty_service_integration.jitbit_nonprod_cloudwatch.integration_key, + jitbit_prod_alarms = pagerduty_service_integration.jitbit_prod_cloudwatch.integration_key, + iaps_nonprod_alarms = pagerduty_service_integration.iaps_nonprod_cloudwatch.integration_key, + iaps_prod_alarms = pagerduty_service_integration.iaps_prod_cloudwatch.integration_key, + laa_mojfin_prod_alarms = pagerduty_service_integration.laa_mojfin_prod_cloudwatch.integration_key, + laa_mojfin_non_prod_alarms = pagerduty_service_integration.laa_mojfin_non_prod_cloudwatch.integration_key, + hmpps_shef_dba_high_priority = pagerduty_service_integration.hmpps_shef_dba_high_priority.integration_key, + hmpps_shef_dba_low_priority = pagerduty_service_integration.hmpps_shef_dba_low_priority.integration_key, + hmpps_shef_dba_non_prod = pagerduty_service_integration.hmpps_shef_dba_non_prod.integration_key, + oasys_alarms = pagerduty_service_integration.oasys_cloudwatch.integration_key, + oasys_nonprod_alarms = pagerduty_service_integration.oasys_nonprod_cloudwatch.integration_key + test_alarms = pagerduty_service_integration.test_alarms.integration_key, + laa_portal_nonprod_alarms = pagerduty_service_integration.laa_portal_nonprod_cloudwatch.integration_key, + laa_portal_prod_alarms = pagerduty_service_integration.laa_portal_prod_cloudwatch.integration_key + laa_maat_nonprod_alarms = pagerduty_service_integration.laa_maat_nonprod_cloudwatch.integration_key, + laa_maat_prod_alarm = pagerduty_service_integration.laa_maat_prod_cloudwatch.integration_key, + csr_alarms = pagerduty_service_integration.csr_cloudwatch.integration_key, + dpr_nonprod_alarms = pagerduty_service_integration.dpr_nonprod_cloudwatch.integration_key, + planetfm_alarms = pagerduty_service_integration.planetfm_cloudwatch.integration_key, + ncas_non_prod_alarms = pagerduty_service_integration.ncas_non_prod_cloudwatch.integration_key, + ncas_prod_alarms = pagerduty_service_integration.ncas_prod_cloudwatch.integration_key, + wardship_non_prod_alarms = pagerduty_service_integration.wardship_non_prod_cloudwatch.integration_key, + wardship_prod_alarms = pagerduty_service_integration.wardship_prod_cloudwatch.integration_key, + pra_non_prod_alarms = pagerduty_service_integration.pra_non_prod_cloudwatch.integration_key, + pra_prod_alarms = pagerduty_service_integration.pra_prod_cloudwatch.integration_key, + tipstaff_non_prod_alarms = pagerduty_service_integration.tipstaff_non_prod_cloudwatch.integration_key, + tipstaff_prod_alarms = pagerduty_service_integration.tipstaff_prod_cloudwatch.integration_key, + dacp_non_prod_alarms = pagerduty_service_integration.dacp_non_prod_cloudwatch.integration_key, + dacp_prod_alarms = pagerduty_service_integration.dacp_prod_cloudwatch.integration_key, + laa_maat_api_nonprod_alarms = pagerduty_service_integration.laa_maat_api_nonprod_cloudwatch.integration_key, + laa_maat_api_prod_alarms = pagerduty_service_integration.laa_maat_api_prod_cloudwatch.integration_key, + hmpps_domain_services_prod_alarms = pagerduty_service_integration.hmpps_domain_services_prod_cloudwatch.integration_key, + hmpps_domain_services_nonprod_alarms = pagerduty_service_integration.hmpps_domain_services_nonprod_cloudwatch.integration_key + delius_core_nonprod_alarms = pagerduty_service_integration.delius_core_nonprod_cloudwatch.integration_key + delius_nextcloud_nonprod_alarms = pagerduty_service_integration.delius_nextcloud_nonprod_cloudwatch.integration_key + delius_nextcloud_prod_alarms = pagerduty_service_integration.delius_nextcloud_prod_cloudwatch.integration_key + laa_cwa_nonprod_alarms = pagerduty_service_integration.cwa_non_prod.integration_key + laa_cwa_prod_alarms = pagerduty_service_integration.cwa_prod.integration_key + nomis_data_hub_nonprod_alarms = pagerduty_service_integration.ndh_non_prod.integration_key + nomis_data_hub_prod_alarms = pagerduty_service_integration.ndh_prod.integration_key + laa_apex_nonprod_alarms = pagerduty_service_integration.apex_non_prod.integration_key + laa_apex_prod_alarms = pagerduty_service_integration.apex_prod.integration_key + delius_mis_nonprod_alarms = pagerduty_service_integration.delius_mis_non_prod.integration_key + delius_mis_prod_alarms = pagerduty_service_integration.delius_mis_prod.integration_key + laa_edw_nonprod_alarms = pagerduty_service_integration.edw_non_prod.integration_key + laa_edw_prod_alarms = pagerduty_service_integration.edw_prod.integration_key + cdpt-ifs-alarms = pagerduty_service_integration.cdpt_ifs_cloudwatch.integration_key + corporate-staff-rostering-preproduction = pagerduty_service_integration.integrations["corporate-staff-rostering-preproduction"].integration_key + corporate-staff-rostering-production = pagerduty_service_integration.integrations["corporate-staff-rostering-production"].integration_key }) } diff --git a/terraform/pagerduty/member-services-integrations.tf b/terraform/pagerduty/member-services-integrations.tf index ecfe5270d..596309118 100644 --- a/terraform/pagerduty/member-services-integrations.tf +++ b/terraform/pagerduty/member-services-integrations.tf @@ -2546,30 +2546,14 @@ resource "pagerduty_slack_connection" "chaps_slack" { locals { services = { - csr_preproduction = { - slack_channel_id = "C07J1UFEK25" # alarms_nonprod_csr - } - csr_production = { - slack_channel_id = "C07HQ17MY11" # alarms_prod_csr - } - # nomis_development = { - # # slack_channel_id = "TBD" # alarms_nonprod_nomis - # } - # nomis_test = { - # # slack_channel_id = "TBD" # alarms_nonprod_nomis - # } - # nomis_preproduction = { - # # slack_channel_id = "TBD" # alarms_nonprod_nomis - # } - # nomis_production = { - # # slack_channel_id = "TBD" # alarms_prod_nomis - # } - # planetfm_preproduction = { - # # slack_channel_id = "TBD" # alarms_nonprod_planetfm - # } - # planetfm_production = { - # # slack_channel_id = "TBD" # alarms_prod_planetfm - # } + corporate-staff-rostering-preproduction = { slack_channel_id = "C07J1UFEK25" } # corporate-staff-rostering-alarms-non-prod + corporate-staff-rostering-production = { slack_channel_id = "C07HQ17MY11" } # corporate-staff-rostering-alarms-prod + # nomis_development = { slack_channel_id = "TBD" } # nomis-alarms-non-prod + # nomis_test = { slack_channel_id = "TBD" } # nomis-alarms-non-prod + # nomis_preproduction = { slack_channel_id = "TBD" } # nomis-alarms-non-prod + # nomis_production = { slack_channel_id = "TBD" } # nomis-alarms-prod + # planetfm_preproduction = { slack_channel_id = "TBD" } # planetfm-alarms-non-prod + # planetfm_production = { slack_channel_id = "TBD" } # planetfm-alarms-prod } slack_events = [ "incident.triggered", @@ -2594,7 +2578,7 @@ locals { resource "pagerduty_service" "services" { for_each = local.services - name = "${each.key}" + name = each.key description = "${each.key}_alarms" auto_resolve_timeout = 345600 acknowledgement_timeout = "null"