From bdf513ebf4371f1aa32bec5cc5859ed34b7a003a Mon Sep 17 00:00:00 2001 From: vincent Date: Thu, 21 Jul 2022 18:43:03 +0200 Subject: [PATCH] add matrix job --- ansible/group_vars/database | 6 + nomad-job/matrix.nomad | 233 ++++++++++++++++++++++++++++++++++++ 2 files changed, 239 insertions(+) create mode 100644 nomad-job/matrix.nomad diff --git a/ansible/group_vars/database b/ansible/group_vars/database index 36c0e98..07e8cfa 100644 --- a/ansible/group_vars/database +++ b/ansible/group_vars/database @@ -19,6 +19,8 @@ postgresql_users: password: "{{ lookup('hashi_vault', 'secret=secrets/data/ansible/database:vaultwarden')}}" - name: drone password: "{{ lookup('hashi_vault', 'secret=secrets/data/ansible/database:drone')}}" + - name: dendrite + password: "{{ lookup('hashi_vault', 'secret=secrets/data/ansible/database:dendrite')}}" postgresql_databases: - name: wikijs @@ -53,3 +55,7 @@ postgresql_databases: lc_collate: fr_FR.UTF-8 lc_ctype: fr_FR.UTF-8 owner: drone + - name: dendrite + lc_collate: fr_FR.UTF-8 + lc_ctype: fr_FR.UTF-8 + owner: dendrite diff --git a/nomad-job/matrix.nomad b/nomad-job/matrix.nomad new file mode 100644 index 0000000..5480bc6 --- /dev/null +++ b/nomad-job/matrix.nomad @@ -0,0 +1,233 @@ + +job "matrix" { + datacenters = ["homelab"] + type = "service" + meta { + forcedeploy = "0" + } + + group "matrix"{ + network { + mode = "host" + port "http" { + to = 8008 + } + } + vault{ + policies= ["access-tables"] + + } + task "dendrite" { + driver = "docker" + service { + name = "dendrite" + port = "http" + tags = [ + "traefik.enable=true", + "traefik.http.routers.${NOMAD_TASK_NAME}.rule=Host(`${NOMAD_TASK_NAME}.ducamps.win`)", + "traefik.http.routers.${NOMAD_TASK_NAME}.tls.domains[0].sans=${NOMAD_TASK_NAME}.ducamps.win", + "traefik.http.routers.${NOMAD_TASK_NAME}.tls.certresolver=myresolver", + + + ] + } + config { + image = "matrixdotorg/dendrite-monolith" + ports = ["http"] + volumes = [ + "local/dendrite.yaml:/etc/dendrite/dendrite.yaml", + "secrets/matrix_key.pem:/etc/dendrite/matrix_key.pem", + "/mnt/diskstation/nomad/dendrite/media:/var/dendrite/media" + ] + + } + env { + } + + template { + data= <