Terraform module used to deploy nomad jobs with optional CSI storage and consul integrations. https://ednz.fr
Go to file
2024-04-22 21:47:39 +02:00
examples Initial commit 2023-07-16 11:11:17 +00:00
modules Initial commit 2023-07-16 11:11:17 +00:00
.cz.toml fix: commitizen not allowing its own commits due to wrong bump message 2024-04-22 21:37:37 +02:00
.gitignore chore(lint): add pre-commit hook 2024-02-25 12:46:45 +01:00
.pre-commit-config.yaml feat: configure commitizen 2024-04-22 21:19:24 +02:00
CHANGELOG.md bump: version 2.1.0 → 2.2.0 2024-04-22 21:47:39 +02:00
LICENSE chore(lint): add pre-commit hook 2024-02-25 12:46:45 +01:00
main.tf feat(job): add ability to pass job either as filepath or directly as string 2024-04-22 21:34:35 +02:00
outputs.tf Initial commit 2023-07-16 11:11:17 +00:00
README.md feat(docs): add description to README 2024-04-22 21:46:51 +02:00
variables.tf chore(lint): add pre-commit hook 2024-02-25 12:46:45 +01:00

terraform-nomad-base

This module lets you deploy a (or multiple) fully featured nomad job(s), with potentially CSI volumes, consul intentions, and consul kv entries.

Requirements

No requirements.

Providers

Name Version
consul n/a
nomad n/a

Modules

No modules.

Resources

Name Type
consul_intention.this resource
consul_key_prefix.this resource
nomad_csi_volume.this resource
nomad_csi_volume_registration.this resource
nomad_job.this resource

Inputs

Name Description Type Default Required
consul_intentions List of intentions associated with the job(s)
map(object({
source_name = string
destination_name = string
action = string
}))
{} no
consul_kv List key/value pairs to put at a specific prefix (mainly for traefik) map(any) {} no
jobs The list of jobs to deploy map(string) {} no
jobs_variables Map of object to pass variables to the nomad job(s). Key is the job's name, value is a map of variables and their values map(map(string)) {} no
nfs_volumes List of nfs volumes associated to the job(s)
map(object({
plugin_id = string
namespace = string
capability = map(string)
context = map(string)
mount_options = object({
fs_type = string
mount_flags = list(string)
})
}))
{} no
volumes List of volumes associated to the job(s)
map(object({
plugin_id = string
namespace = string
capacity_min = string
capacity_max = string
capability = map(string)
parameters = map(string)
secrets = map(string)
}))
{} no

Outputs

No outputs.