Add ability to set meta at job level

This commit is contained in:
IamTheFij 2023-08-21 22:30:18 -07:00
parent 05c367e531
commit 2e2e4f2064
3 changed files with 19 additions and 4 deletions

View File

@ -7,8 +7,9 @@ resource "nomad_job" "service" {
image_pull_timeout = var.image_pull_timeout
args = var.args
env = var.env
meta = var.meta
task_meta = var.task_meta
group_meta = var.group_meta
job_meta = var.job_meta
constraints = var.constraints
docker_devices = var.docker_devices

View File

@ -5,6 +5,14 @@ job "${name}" {
type = "service"
priority = ${priority}
%{ if length(job_meta) > 0 }
meta = {
%{ for k, v in job_meta }
${k} = ${jsonencode(v)}
%{ endfor }
}
%{~ endif }
group "${name}" {
count = ${count}
@ -98,9 +106,9 @@ job "${name}" {
task "${name}" {
driver = "docker"
%{ if length(meta) > 0 ~}
%{ if length(task_meta) > 0 ~}
meta = {
%{ for k, v in meta ~}
%{ for k, v in task_meta ~}
${k} = ${jsonencode(v)}
%{ endfor ~}
}

View File

@ -27,7 +27,7 @@ variable "image_pull_timeout" {
description = "A time duration that controls how long Nomad will wait before cancelling an in-progress pull of the Docker image"
}
variable "meta" {
variable "task_meta" {
type = map(string)
default = {}
description = "Meta attributes to attach to the task"
@ -39,6 +39,12 @@ variable "group_meta" {
description = "Meta attributes to attach to the group"
}
variable "job_meta" {
type = map(string)
default = {}
description = "Meta attributes to attach to the job"
}
variable "service_port" {
type = number
default = null