Infra: Monitoring capability
[csit.git] / terraform-ci-infra / 1n_nmd / prometheus / main.tf
1 locals {
2   datacenters    = join(",", var.nomad_datacenters)
3
4   prometheus_url = join("",
5     [
6       "https://github.com",
7       "/prometheus/prometheus/releases/download/",
8       "v${var.prometheus_version}/",
9       "prometheus-${var.prometheus_version}.linux-amd64.tar.gz"
10     ]
11   )
12 }
13
14 data "template_file" "nomad_job_prometheus" {
15   template       = file("${path.module}/conf/nomad/prometheus.hcl")
16   vars           = {
17     datacenters        = local.datacenters
18     url                = local.prometheus_url
19     job_name           = var.prometheus_job_name
20     use_canary         = var.prometheus_use_canary
21     group_count        = var.prometheus_group_count
22     use_host_volume    = var.prometheus_use_host_volume
23     host_volume        = var.nomad_host_volume
24     data_dir           = var.prometheus_data_dir
25     service_name       = var.prometheus_service_name
26     use_vault_provider = var.prometheus_vault_secret.use_vault_provider
27     version            = var.prometheus_version
28     cpu                = var.prometheus_cpu
29     mem                = var.prometheus_mem
30     port               = var.prometheus_port
31   }
32 }
33
34 resource "nomad_job" "nomad_job_prometheus" {
35   jobspec        = data.template_file.nomad_job_prometheus.rendered
36   detach         = false
37 }