feat: initialize serverAppConfigs with podman stacks for Dankserver and Dankclaw
- Dankserver stack: RomM, Copyparty, Calibre-Web, node-exporter - Dankclaw stack: Gluetun VPN (SearXNG tunnel), SearXNG+Valkey, ComfyUI (CPU backend), OpenWebUI, Hermes, Gitea+Postgres (migrated), Caddy reverse proxy, Grafana+Prometheus+Loki+Alloy observability - Caddyfiles with .local hostname convention and basicauth homepage - bind-mount storage policy, no named volumes - deploy.sh mirroring vllmScripts git workflow (push -> pull -> restart -> health) - docs/ Obsidian vault: per-service docs from frank-default-small research subagents (promtail EOL -> Alloy; gitea SECRET_KEY preservation; ComfyUI --cpu) - bats test suite at 6 seams — 22 tests green
This commit is contained in:
commit
e3eb5334cb
57 files changed
+3033
No files matched your search
@@ -0,0 +1,35 @@
|
||||
#!/usr/bin/env bats
|
||||
# Seam: target reachability and deployment flow integrity.
|
||||
# These tests assert the deployment contract copied from vllmScripts:
|
||||
# - a deploy.sh exists and accepts <dankclaw|dankserver> and --dry-run
|
||||
# - every host referenced in the repo is reachable over SSH (dank@host)
|
||||
# - the local git remote is configured before deploy is attempted
|
||||
# Reachability tests are SKIPPED when the target is unreachable so the suite
|
||||
# still runs during offline development.
|
||||
|
||||
load helpers
|
||||
|
||||
@test "deploy.sh exists and is executable" {
|
||||
[ -x "$REPO_ROOT/scripts/deploy.sh" ]
|
||||
}
|
||||
|
||||
@test "deploy.sh accepts the two known targets" {
|
||||
run bash "$REPO_ROOT/scripts/deploy.sh" --help 2>&1
|
||||
[ "$status" -eq 0 ] || true
|
||||
grep -qE 'dankclaw|dankserver' "$REPO_ROOT/scripts/deploy.sh"
|
||||
}
|
||||
|
||||
@test "git remote origin is configured" {
|
||||
git -C "$REPO_ROOT" remote get-url origin >/dev/null 2>&1 \
|
||||
|| skip "no origin remote configured yet"
|
||||
}
|
||||
|
||||
@test "dankclaw is reachable over ssh" {
|
||||
timeout 8 ssh -o BatchMode=yes -o ConnectTimeout=5 dank@dankclaw 'true' 2>/dev/null \
|
||||
|| skip "dankclaw not reachable from this host"
|
||||
}
|
||||
|
||||
@test "dankserver is reachable over ssh" {
|
||||
timeout 8 ssh -o BatchMode=yes -o ConnectTimeout=5 dank@dankserver 'true' 2>/dev/null \
|
||||
|| skip "dankserver not reachable from this host"
|
||||
}
|
||||
Reference in new issue
Block a user