35eb95b0716cd2aae61bf600b3f0db8e2a7cf134
[csit.git] / terraform-ci-infra / 1n_nmd / exporter / main.tf
1 locals {
2   datacenters             = join(",", var.nomad_datacenters)
3
4   node_url_amd64 = join("",
5     [
6       "https://github.com",
7       "/prometheus/node_exporter/releases/download/",
8       "v${var.node_version}/",
9       "node_exporter-${var.node_version}.linux-amd64.tar.gz"
10     ]
11   )
12   node_url_arm64 = join("",
13     [
14       "https://github.com",
15       "/prometheus/node_exporter/releases/download/",
16       "v${var.node_version}/",
17       "node_exporter-${var.node_version}.linux-arm64.tar.gz"
18     ]
19   )
20
21   blackbox_url_amd64 = join("",
22     [
23       "https://github.com",
24       "/prometheus/blackbox_exporter/releases/download/",
25       "v${var.blackbox_version}/",
26       "blackbox_exporter-${var.blackbox_version}.linux-amd64.tar.gz"
27     ]
28   )
29   blackbox_url_arm64 = join("",
30     [
31       "https://github.com",
32       "/prometheus/blackbox_exporter/releases/download/",
33       "v${var.blackbox_version}/",
34       "blackbox_exporter-${var.blackbox_version}.linux-arm64.tar.gz"
35     ]
36   )
37 }
38
39 data "template_file" "nomad_job_exporter" {
40   template         = file("${path.module}/conf/nomad/exporter.hcl")
41   vars             = {
42     datacenters               = local.datacenters
43     job_name                  = var.exporter_job_name
44     use_canary                = var.exporter_use_canary
45     node_url_amd64            = local.node_url_amd64
46     node_url_arm64            = local.node_url_arm64
47     node_version              = var.node_version
48     node_service_name         = var.node_service_name
49     node_port                 = var.node_port
50     blackbox_url_amd64        = local.blackbox_url_amd64
51     blackbox_url_arm64        = local.blackbox_url_arm64
52     blackbox_version          = var.blackbox_version
53     blackbox_service_name     = var.blackbox_service_name
54     blackbox_port             = var.blackbox_port
55     cadvisor_image            = var.cadvisor_image
56     cadvisor_service_name     = var.cadvisor_service_name
57     cadvisor_port             = var.cadvisor_port
58   }
59 }
60
61 resource "nomad_job" "nomad_job_exporter" {
62   jobspec          = data.template_file.nomad_job_exporter.rendered
63   detach           = false
64 }