diff options
author | Alex Auvolat <alex@adnab.me> | 2022-08-24 15:48:18 +0200 |
---|---|---|
committer | Alex Auvolat <alex@adnab.me> | 2022-08-24 15:48:18 +0200 |
commit | 41128f4c36f79def480b8cb866205296d703f247 (patch) | |
tree | 1ffaf8cd67d528b0eb9ee7943119157e3efdcfb2 /cluster | |
parent | 981294e3d7a180a3c08f8173dc652b73b6e2bd07 (diff) | |
download | nixcfg-41128f4c36f79def480b8cb866205296d703f247.tar.gz nixcfg-41128f4c36f79def480b8cb866205296d703f247.zip |
Clone core module in staging and prod, move bad stuff to experimental
Diffstat (limited to 'cluster')
-rw-r--r-- | cluster/prod/app/core/deploy/core.hcl | 71 | ||||
l--------- | cluster/prod/app/secretmgr.py | 1 | ||||
l--------- | cluster/prod/app/shell.nix | 1 | ||||
-rw-r--r-- | cluster/staging/app/core/deploy/core.hcl | 71 | ||||
l--------- | cluster/staging/app/secretmgr.py | 1 | ||||
l--------- | cluster/staging/app/shell.nix | 1 |
6 files changed, 146 insertions, 0 deletions
diff --git a/cluster/prod/app/core/deploy/core.hcl b/cluster/prod/app/core/deploy/core.hcl new file mode 100644 index 0000000..f57f21d --- /dev/null +++ b/cluster/prod/app/core/deploy/core.hcl @@ -0,0 +1,71 @@ +job "core" { + datacenters = ["dc1", "neptune"] + type = "system" + priority = 90 + + constraint { + attribute = "${attr.cpu.arch}" + value = "amd64" + } + + update { + max_parallel = 1 + stagger = "1m" + } + + group "network" { + task "diplonat" { + driver = "docker" + + config { + image = "lxpz/amd64_diplonat:3" + network_mode = "host" + readonly_rootfs = true + volumes = [ + "secrets:/etc/diplonat", + ] + } + + restart { + interval = "30m" + attempts = 2 + delay = "15s" + mode = "delay" + } + + template { + data = "{{ key \"secrets/consul/consul-ca.crt\" }}" + destination = "secrets/consul-ca.crt" + } + + template { + data = "{{ key \"secrets/consul/consul-client.crt\" }}" + destination = "secrets/consul-client.crt" + } + + template { + data = "{{ key \"secrets/consul/consul-client.key\" }}" + destination = "secrets/consul-client.key" + } + + template { + data = <<EOH +DIPLONAT_REFRESH_TIME=60 +DIPLONAT_EXPIRATION_TIME=300 +DIPLONAT_CONSUL_NODE_NAME={{ env "attr.unique.hostname" }} +DIPLONAT_CONSUL_URL=https://localhost:8501 +DIPLONAT_CONSUL_CA_CERT=/etc/diplonat/consul-ca.crt +DIPLONAT_CONSUL_CLIENT_CERT=/etc/diplonat/consul-client.crt +DIPLONAT_CONSUL_CLIENT_KEY=/etc/diplonat/consul-client.key +RUST_LOG=debug +EOH + destination = "secrets/env" + env = true + } + + resources { + memory = 40 + } + } + } +} diff --git a/cluster/prod/app/secretmgr.py b/cluster/prod/app/secretmgr.py new file mode 120000 index 0000000..107653c --- /dev/null +++ b/cluster/prod/app/secretmgr.py @@ -0,0 +1 @@ +../../../secretmgr/secretmgr.py
\ No newline at end of file diff --git a/cluster/prod/app/shell.nix b/cluster/prod/app/shell.nix new file mode 120000 index 0000000..b10effc --- /dev/null +++ b/cluster/prod/app/shell.nix @@ -0,0 +1 @@ +../../../secretmgr/shell.nix
\ No newline at end of file diff --git a/cluster/staging/app/core/deploy/core.hcl b/cluster/staging/app/core/deploy/core.hcl new file mode 100644 index 0000000..f57f21d --- /dev/null +++ b/cluster/staging/app/core/deploy/core.hcl @@ -0,0 +1,71 @@ +job "core" { + datacenters = ["dc1", "neptune"] + type = "system" + priority = 90 + + constraint { + attribute = "${attr.cpu.arch}" + value = "amd64" + } + + update { + max_parallel = 1 + stagger = "1m" + } + + group "network" { + task "diplonat" { + driver = "docker" + + config { + image = "lxpz/amd64_diplonat:3" + network_mode = "host" + readonly_rootfs = true + volumes = [ + "secrets:/etc/diplonat", + ] + } + + restart { + interval = "30m" + attempts = 2 + delay = "15s" + mode = "delay" + } + + template { + data = "{{ key \"secrets/consul/consul-ca.crt\" }}" + destination = "secrets/consul-ca.crt" + } + + template { + data = "{{ key \"secrets/consul/consul-client.crt\" }}" + destination = "secrets/consul-client.crt" + } + + template { + data = "{{ key \"secrets/consul/consul-client.key\" }}" + destination = "secrets/consul-client.key" + } + + template { + data = <<EOH +DIPLONAT_REFRESH_TIME=60 +DIPLONAT_EXPIRATION_TIME=300 +DIPLONAT_CONSUL_NODE_NAME={{ env "attr.unique.hostname" }} +DIPLONAT_CONSUL_URL=https://localhost:8501 +DIPLONAT_CONSUL_CA_CERT=/etc/diplonat/consul-ca.crt +DIPLONAT_CONSUL_CLIENT_CERT=/etc/diplonat/consul-client.crt +DIPLONAT_CONSUL_CLIENT_KEY=/etc/diplonat/consul-client.key +RUST_LOG=debug +EOH + destination = "secrets/env" + env = true + } + + resources { + memory = 40 + } + } + } +} diff --git a/cluster/staging/app/secretmgr.py b/cluster/staging/app/secretmgr.py new file mode 120000 index 0000000..107653c --- /dev/null +++ b/cluster/staging/app/secretmgr.py @@ -0,0 +1 @@ +../../../secretmgr/secretmgr.py
\ No newline at end of file diff --git a/cluster/staging/app/shell.nix b/cluster/staging/app/shell.nix new file mode 120000 index 0000000..b10effc --- /dev/null +++ b/cluster/staging/app/shell.nix @@ -0,0 +1 @@ +../../../secretmgr/shell.nix
\ No newline at end of file |