Resolve current system path at runtime for exec driver jobs.

This commit is contained in:
2025-03-08 16:21:44 +00:00
parent 7470a0e077
commit 611862d5e9
3 changed files with 27 additions and 3 deletions

View File

@@ -34,6 +34,10 @@ in
path = "/nix/store"; path = "/nix/store";
read_only = true; read_only = true;
}; };
sw = {
path = "/run/current-system/sw";
read_only = true;
};
}; };
}; };
@@ -84,6 +88,8 @@ in
nomad nomad
wander wander
damon damon
# for tiddlypwa
deno
]; ];
networking.firewall = { networking.firewall = {

View File

@@ -4,7 +4,7 @@ job "instasync" {
type = "batch" type = "batch"
periodic { periodic {
cron = "*/5 * * * *" crons = [ "*/5 * * * *" ]
prohibit_overlap = true prohibit_overlap = true
} }
@@ -19,12 +19,17 @@ job "instasync" {
read_only = true read_only = true
source = "nix-store" source = "nix-store"
} }
volume "sw" {
type = "host"
read_only = true
source = "sw"
}
task "sync" { task "sync" {
driver = "exec" driver = "exec"
config { config {
command = "/nix/store/k5inwzpp6a0295pd3nfckk9hq8wmifhz-nodejs-20.15.1/bin/node" command = "/sw/bin/node"
args = ["/code/instasync/sync.js"] args = ["/code/instasync/sync.js"]
} }
@@ -36,6 +41,10 @@ job "instasync" {
volume = "nix-store" volume = "nix-store"
destination = "/nix/store" destination = "/nix/store"
} }
volume_mount {
volume = "sw"
destination = "/sw"
}
resources { resources {
memory = 100 memory = 100

View File

@@ -12,6 +12,11 @@ job "resol-gateway" {
read_only = true read_only = true
source = "nix-store" source = "nix-store"
} }
volume "sw" {
type = "host"
read_only = true
source = "sw"
}
network { network {
port "http" { port "http" {
@@ -23,7 +28,7 @@ job "resol-gateway" {
driver = "exec" driver = "exec"
config { config {
command = "/nix/store/k5inwzpp6a0295pd3nfckk9hq8wmifhz-nodejs-20.15.1/bin/node" command = "/sw/bin/node"
args = ["/code/resol-vbus/examples/json-live-data-server/index.js"] args = ["/code/resol-vbus/examples/json-live-data-server/index.js"]
} }
@@ -35,6 +40,10 @@ job "resol-gateway" {
volume = "nix-store" volume = "nix-store"
destination = "/nix/store" destination = "/nix/store"
} }
volume_mount {
volume = "sw"
destination = "/sw"
}
service { service {
name = "resol-gateway" name = "resol-gateway"