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,32 +1,32 @@
# 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: paperless
kind: lxc
os: linux
role: document-archive
state: active
# Generated by oikos build-hosts from inventory.yaml.
# Do NOT edit by hand.
host: hubris
pve_id: 103
kind: lxc
lan_ip: 192.168.8.130
mcp_endpoint: https://mcp.hubris.network/mcp
mesh:
tailscale:
fqdn: paperless
mesh_globals:
primary: netbird
accepted:
- netbird
- tailscale
- netbird
- tailscale
primary: netbird
mounts:
- /mnt/library
- /mnt/library
name: paperless
os: linux
public_host: paperless.hubris.network
pve_id: 103
role: document-archive
runs:
- paperless
services_hosted:
- name: paperless
url: https://paperless.hubris.network
backend: paperless
doc_page: knowledge/wiki/containers/103-paperless.md
risk_notes: "document archive \u2014 treat data as irreplaceable; DB operations are destructive-class"
mcp_endpoint: https://mcp.hubris.network/mcp
- paperless
secrets_issuance_endpoint: https://secrets.hubris.network/issue
services_hosted:
- backend: paperless
doc_page: knowledge/wiki/containers/103-paperless.md
name: paperless
risk_notes: document archive — treat data as irreplaceable; DB operations are destructive-class
url: https://paperless.hubris.network
state: active