Compare commits
7 Commits
90ff2f2480
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| c3a25a84e5 | |||
| 5acb65abbe | |||
|
|
0178314810 | ||
|
|
f930ca1c80 | ||
|
|
edffcd0766 | ||
|
|
575bc2053d | ||
|
|
916b7affec |
40
.gitea/workflows/deploy.yml
Normal file
40
.gitea/workflows/deploy.yml
Normal file
@@ -0,0 +1,40 @@
|
||||
name: Deploy CSI Jobs
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
paths:
|
||||
- 'csi/**'
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
runs-on: debian
|
||||
steps:
|
||||
- name: Pull latest
|
||||
run: |
|
||||
cd /opt/nomad-csi
|
||||
git pull
|
||||
|
||||
- name: Deploy controller
|
||||
run: nomad job run /opt/nomad-csi/csi/controller.nomad
|
||||
|
||||
- name: Deploy node plugin
|
||||
run: nomad job run /opt/nomad-csi/csi/node.nomad
|
||||
|
||||
- name: Verify CSI plugin healthy
|
||||
run: |
|
||||
sleep 10
|
||||
nomad plugin status org.democratic-csi.nfs
|
||||
|
||||
- name: Provision volumes
|
||||
run: |
|
||||
for vol in /opt/nomad-csi/csi/volumes/*.hcl; do
|
||||
[[ "$vol" == *example* ]] && continue
|
||||
vol_id=$(grep -oP 'id\s*=\s*"\K[^"]+' "$vol" | head -1)
|
||||
if nomad volume status "$vol_id" > /dev/null 2>&1; then
|
||||
echo "Volume $vol_id already exists, skipping"
|
||||
else
|
||||
echo "Creating volume $vol_id"
|
||||
nomad volume create "$vol"
|
||||
fi
|
||||
done
|
||||
13
csi/volumes/moneymaker-data.hcl
Normal file
13
csi/volumes/moneymaker-data.hcl
Normal file
@@ -0,0 +1,13 @@
|
||||
id = "moneymaker-data"
|
||||
name = "moneymaker-data"
|
||||
type = "csi"
|
||||
plugin_id = "org.democratic-csi.nfs"
|
||||
|
||||
capacity_min = "1G"
|
||||
capacity_max = "10G"
|
||||
|
||||
capability {
|
||||
access_mode = "single-node-writer"
|
||||
attachment_mode = "file-system"
|
||||
}
|
||||
# updated ons 27 maj 09:50:50 CEST 2026
|
||||
85
jobs/moneymaker.nomad
Normal file
85
jobs/moneymaker.nomad
Normal file
@@ -0,0 +1,85 @@
|
||||
job "moneymaker" {
|
||||
datacenters = ["dc1"]
|
||||
type = "service"
|
||||
|
||||
group "app" {
|
||||
count = 1
|
||||
|
||||
constraint {
|
||||
attribute = "${node.unique.name}"
|
||||
value = "int"
|
||||
}
|
||||
|
||||
volume "moneymaker-data" {
|
||||
type = "csi"
|
||||
source = "moneymaker-data"
|
||||
access_mode = "single-node-writer"
|
||||
attachment_mode = "file-system"
|
||||
}
|
||||
|
||||
network {
|
||||
port "http" {}
|
||||
}
|
||||
|
||||
task "web" {
|
||||
driver = "docker"
|
||||
|
||||
config {
|
||||
image = "registry.i80.dk/gitea/mmd:latest"
|
||||
ports = ["http"]
|
||||
}
|
||||
|
||||
volume_mount {
|
||||
volume = "moneymaker-data"
|
||||
destination = "/app/data"
|
||||
}
|
||||
|
||||
env {
|
||||
PORT = "${NOMAD_PORT_http}"
|
||||
HOST = "0.0.0.0"
|
||||
APP_ENV = "production"
|
||||
SAXO_TOKEN_FILE = "/app/data/.saxo_token.json"
|
||||
HF_HOME = "/app/data/hf-cache"
|
||||
LOG_DIR = "/app/data/logs"
|
||||
DATABASE_URL = ""
|
||||
SAXO_APP_KEY = ""
|
||||
SAXO_APP_SECRET_1 = ""
|
||||
ANTHROPIC_API_KEY = ""
|
||||
}
|
||||
|
||||
resources {
|
||||
cpu = 300
|
||||
memory = 512
|
||||
}
|
||||
}
|
||||
|
||||
task "worker" {
|
||||
driver = "docker"
|
||||
|
||||
config {
|
||||
image = "registry.i80.dk/gitea/mmd:latest"
|
||||
}
|
||||
|
||||
volume_mount {
|
||||
volume = "moneymaker-data"
|
||||
destination = "/app/data"
|
||||
}
|
||||
|
||||
env {
|
||||
APP_ENV = "production"
|
||||
SAXO_TOKEN_FILE = "/app/data/.saxo_token.json"
|
||||
HF_HOME = "/app/data/hf-cache"
|
||||
LOG_DIR = "/app/data/logs"
|
||||
DATABASE_URL = ""
|
||||
SAXO_APP_KEY = ""
|
||||
SAXO_APP_SECRET_1 = ""
|
||||
ANTHROPIC_API_KEY = ""
|
||||
}
|
||||
|
||||
resources {
|
||||
cpu = 1500
|
||||
memory = 3072
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user