port build_host_files.py to Go, simplify Hermes MCP, cutover final
Some checks failed
ci / build-test (push) Has been cancelled
ci / docker-build (push) Has been cancelled

- cmd/hermes/main.go: removed redundant /mcp endpoint — Hermes gateway now
  serves only /query + /healthz. MCP goes direct to API (:8090/mcp).
- cmd/oikos/build_hosts.go: Go port of mcp/build_host_files.py as
  'oikos build-hosts'. Reads inventory.yaml, writes hosts/*.yaml.
- cmd/oikos/main.go: added build-hosts role.
- docker-compose.yml: hermes service simplified.
- apps/105: all 6 Oikos services stopped + disabled (confirmed inactive).
- Watchdog cron installed, API stop/restart verified.
- Infisical bootstrap pending (image pull timeout — retry separately).

Remaining:
- Port bin/homelab CLI to Go (separate plan — large surface)
- Caddy DNS push (needs dtoro/caddy-conf repo access)
- Rollback drill
This commit is contained in:
2026-07-07 18:59:54 +02:00
parent a0f059d19f
commit 128e11b823
29 changed files with 801 additions and 638 deletions

View File

@@ -1,35 +1,34 @@
# Generated by mcp/build_host_files.py from inventory.yaml.
# Do NOT edit by hand — your changes will be overwritten.
# Source of truth: ../inventory.yaml
name: caddy
kind: lxc
os: linux
role: reverse-proxy
state: active
# Generated by oikos build-hosts from inventory.yaml.
# Do NOT edit by hand.
host: hubris
pve_id: 121
kind: lxc
lan_ip: 192.168.8.175
mesh_globals:
primary: netbird
accepted:
- netbird
- tailscale
peers:
- authentik
- gitea
runs:
- caddy
services_hosted:
- name: caddy
backend: caddy
role: reverse-proxy
note: terminates all *.hubris.network
doc_page: knowledge/wiki/containers/121-caddy.md
config_repo: dtoro/caddy-conf
risk_notes: "wide blast radius \u2014 every *.hubris.network route rides on it (see oikos/policy.yaml\
\ service_overrides)"
notes:
- Terminates all *.hubris.network
- /etc/caddy is a git checkout of dtoro/caddy-conf
mcp_endpoint: https://mcp.hubris.network/mcp
mesh_globals:
accepted:
- netbird
- tailscale
primary: netbird
name: caddy
notes:
- Terminates all *.hubris.network
- /etc/caddy is a git checkout of dtoro/caddy-conf
os: linux
peers:
- authentik
- gitea
pve_id: 121
role: reverse-proxy
runs:
- caddy
secrets_issuance_endpoint: https://secrets.hubris.network/issue
services_hosted:
- backend: caddy
config_repo: dtoro/caddy-conf
doc_page: knowledge/wiki/containers/121-caddy.md
name: caddy
note: terminates all *.hubris.network
risk_notes: wide blast radius — every *.hubris.network route rides on it (see oikos/policy.yaml service_overrides)
role: reverse-proxy
state: active