module "databases" { source = "./databases" } module "blocky" { source = "./blocky" base_hostname = var.base_hostname depends_on = [module.databases] } module "traefik" { source = "./traefik" consul_address = var.consul_address base_hostname = var.base_hostname } module "metrics" { source = "./metrics" consul_address = var.consul_address } module "nextcloud" { source = "./nextcloud" depends_on = [module.databases] } module "backups" { source = "./backups" depends_on = [module.databases] } module "media" { source = "./media" } resource "nomad_job" "whoami" { hcl2 { enabled = true vars = { "count" = "${2 * length(data.consul_service.nomad.service)}", } } jobspec = file("${path.module}/whoami.nomad") } resource "consul_config_entry" "global_access" { name = "*" kind = "service-intentions" config_json = jsonencode({ Sources = [ { Action = "allow" Name = "traefik" Precedence = 6 Type = "consul" }, { Action = "deny" Name = "*" Precedence = 5 Type = "consul" }, ] }) }