From 0017c9d8372ef306ac73aae22bb0d17631c944d2 Mon Sep 17 00:00:00 2001 From: pmikus Date: Fri, 5 Feb 2021 14:51:43 +0000 Subject: Infra: JenkinsJobHealthExporter - Integration of Jenkins Job checker Signed-off-by: pmikus Change-Id: I822039cb64a3a352b49314ddab7c6099af3fe644 --- .../alertmanager/conf/nomad/alertmanager.hcl | 64 +++++++++++++++------- terraform-ci-infra/1n_nmd/alertmanager/main.tf | 31 ++++++----- .../1n_nmd/alertmanager/variables.tf | 34 +++++++++--- 3 files changed, 87 insertions(+), 42 deletions(-) (limited to 'terraform-ci-infra/1n_nmd/alertmanager') diff --git a/terraform-ci-infra/1n_nmd/alertmanager/conf/nomad/alertmanager.hcl b/terraform-ci-infra/1n_nmd/alertmanager/conf/nomad/alertmanager.hcl index fafe623c85..40d84e337a 100644 --- a/terraform-ci-infra/1n_nmd/alertmanager/conf/nomad/alertmanager.hcl +++ b/terraform-ci-infra/1n_nmd/alertmanager/conf/nomad/alertmanager.hcl @@ -160,10 +160,6 @@ job "${job_name}" { left_delimiter = "{{{" right_delimiter = "}}}" data = <- + {{ range .Alerts -}} + *Alert:* {{ .Annotations.summary }}{{ if .Labels.severity }} - `{{ .Labels.severity }}`{{ end }} + + *Description:* {{ .Annotations.description }} + + *Details:* + {{ range .Labels.SortedPairs }} • *{{ .Name }}:* `{{ .Value }}` + {{ end }} + {{ end }} + +- name: '${slack_default_receiver}' slack_configs: - - channel: '#${slack_channel}' + - api_url: 'https://hooks.slack.com/services/${slack_default_api_key}' + channel: '#${slack_default_channel}' send_resolved: true icon_url: https://avatars3.githubusercontent.com/u/3380462 title: |- diff --git a/terraform-ci-infra/1n_nmd/alertmanager/main.tf b/terraform-ci-infra/1n_nmd/alertmanager/main.tf index 8307601669..9525aabc0c 100644 --- a/terraform-ci-infra/1n_nmd/alertmanager/main.tf +++ b/terraform-ci-infra/1n_nmd/alertmanager/main.tf @@ -14,20 +14,23 @@ locals { data "template_file" "nomad_job_alertmanager" { template = file("${path.module}/conf/nomad/alertmanager.hcl") vars = { - datacenters = local.datacenters - url = local.alertmanager_url - job_name = var.alertmanager_job_name - use_canary = var.alertmanager_use_canary - group_count = var.alertmanager_group_count - service_name = var.alertmanager_service_name - use_vault_provider = var.alertmanager_vault_secret.use_vault_provider - version = var.alertmanager_version - cpu = var.alertmanager_cpu - mem = var.alertmanager_mem - port = var.alertmanager_port - slack_api_key = var.alertmanager_slack_api_key - slack_channel = var.alertmanager_slack_channel - default_receiver = var.alertmanager_default_receiver + datacenters = local.datacenters + url = local.alertmanager_url + job_name = var.alertmanager_job_name + use_canary = var.alertmanager_use_canary + group_count = var.alertmanager_group_count + service_name = var.alertmanager_service_name + use_vault_provider = var.alertmanager_vault_secret.use_vault_provider + version = var.alertmanager_version + cpu = var.alertmanager_cpu + mem = var.alertmanager_mem + port = var.alertmanager_port + slack_jenkins_api_key = var.alertmanager_slack_jenkins_api_key + slack_jenkins_channel = var.alertmanager_slack_jenkins_channel + slack_jenkins_receiver = var.alertmanager_slack_jenkins_receiver + slack_default_api_key = var.alertmanager_slack_default_api_key + slack_default_channel = var.alertmanager_slack_default_channel + slack_default_receiver = var.alertmanager_slack_default_receiver } } diff --git a/terraform-ci-infra/1n_nmd/alertmanager/variables.tf b/terraform-ci-infra/1n_nmd/alertmanager/variables.tf index 152530b96d..ffedf24f3d 100644 --- a/terraform-ci-infra/1n_nmd/alertmanager/variables.tf +++ b/terraform-ci-infra/1n_nmd/alertmanager/variables.tf @@ -65,20 +65,38 @@ variable "alertmanager_port" { default = 9093 } -variable "alertmanager_default_receiver" { - description = "Alertmanager default receiver" +variable "alertmanager_slack_jenkins_api_key" { + description = "Alertmanager jenkins slack API key" type = string - default = "default-receiver" + default = "XXXXXXXXX/XXXXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXX" +} + +variable "alertmanager_slack_jenkins_receiver" { + description = "Alertmanager jenkins slack receiver" + type = string + default = "jenkins-slack-receiver" +} + +variable "alertmanager_slack_jenkins_channel" { + description = "Alertmanager jenkins slack channel" + type = string + default = "jenkins-channel" } -variable "alertmanager_slack_api_key" { - description = "Alertmanager slack API key" +variable "alertmanager_slack_default_api_key" { + description = "Alertmanager default slack API key" type = string default = "XXXXXXXXX/XXXXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXX" } -variable "alertmanager_slack_channel" { - description = "Alertmanager slack channel" +variable "alertmanager_slack_default_receiver" { + description = "Alertmanager default slack receiver" + type = string + default = "default-slack-receiver" +} + +variable "alertmanager_slack_default_channel" { + description = "Alertmanager default slack channel" type = string - default = "slack-channel" + default = "default-channel" } \ No newline at end of file -- cgit 1.2.3-korg