diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index aade1d7..1ed65d0 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -18,25 +18,26 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - - name: Validate Nomad job - run: nomad job validate nomad-job.hcl + - name: Validate job specs + run: | + nomad job validate portaldb.nomad + nomad job validate nomad-job.hcl - - name: Deploy to Nomad + - name: Deploy portaldb (MariaDB) + run: nomad job run portaldb.nomad + + - name: Deploy Dolibarr run: nomad job run nomad-job.hcl - name: Check deployment status run: | - echo "=== Job Status ===" + echo "=== portaldb ===" + nomad job status portaldb + + echo "=== dolibarr ===" nomad job status dolibarr - echo "=== Allocations ===" - nomad job allocs dolibarr - - echo "=== Logs ===" - for alloc in $(nomad job allocs dolibarr -short | tail -n +2 | awk '{print $1}'); do - echo "--- app logs ($alloc) ---" - nomad alloc logs $alloc app || true - done - - name: Done - run: echo "Dolibarr deployed — https://portal.i80.dk" + run: | + echo "portaldb → portaldb.i80.dk:3306" + echo "dolibarr → https://portal.i80.dk" diff --git a/Makefile b/Makefile index 9f3c7b8..a67201e 100644 --- a/Makefile +++ b/Makefile @@ -1,27 +1,29 @@ NOMAD_ADDR ?= https://nomad.i80.dk:4646 -JOB := nomad-job.hcl -.PHONY: help secrets plan deploy status logs stop +.PHONY: help plan deploy status logs stop help: - @echo "Dolibarr på portal.i80.dk (kører på autobox.i80.dk)" + @echo "portal.i80.dk / portaldb.i80.dk" @echo "" - @echo " make plan — valider job spec" - @echo " make deploy — deploy/opdater Dolibarr" - @echo " make status — vis job status" - @echo " make logs — follow app logs" - @echo " make stop — stop job" + @echo " make plan — valider begge job specs" + @echo " make deploy — deploy portaldb + dolibarr" + @echo " make status — vis status for begge jobs" + @echo " make logs — follow dolibarr app logs" + @echo " make stop — stop begge jobs" @echo "" @echo "Secrets sættes via SSH på autobox:" @echo " ssh autobox.i80.dk 'consul kv put dolibarr/db_password ...'" plan: - NOMAD_ADDR=$(NOMAD_ADDR) nomad job plan $(JOB) + NOMAD_ADDR=$(NOMAD_ADDR) nomad job validate portaldb.nomad + NOMAD_ADDR=$(NOMAD_ADDR) nomad job validate nomad-job.hcl deploy: - NOMAD_ADDR=$(NOMAD_ADDR) nomad job run $(JOB) + NOMAD_ADDR=$(NOMAD_ADDR) nomad job run portaldb.nomad + NOMAD_ADDR=$(NOMAD_ADDR) nomad job run nomad-job.hcl status: + NOMAD_ADDR=$(NOMAD_ADDR) nomad job status portaldb NOMAD_ADDR=$(NOMAD_ADDR) nomad job status dolibarr logs: @@ -29,3 +31,4 @@ logs: stop: NOMAD_ADDR=$(NOMAD_ADDR) nomad job stop dolibarr + NOMAD_ADDR=$(NOMAD_ADDR) nomad job stop portaldb diff --git a/nomad-job.hcl b/nomad-job.hcl index cda6e60..d42ba38 100644 --- a/nomad-job.hcl +++ b/nomad-job.hcl @@ -11,60 +11,17 @@ job "dolibarr" { } network { - mode = "bridge" port "http" { - to = 80 + static = 80 } } - volume "dolibarr-db" { - type = "host" - source = "dolibarr-db" - read_only = false - } - volume "dolibarr-documents" { type = "host" source = "dolibarr-documents" read_only = false } - task "mariadb" { - driver = "docker" - - config { - image = "mariadb:10.11" - } - - volume_mount { - volume = "dolibarr-db" - destination = "/var/lib/mysql" - } - - template { - data = <