home manager crons fix

This commit is contained in:
Roger Oriol
2026-07-25 00:54:46 +02:00
parent 4694034a04
commit 842815d370
4 changed files with 46 additions and 18 deletions

View File

@@ -40,7 +40,7 @@ Docs: https://hermes-agent.nousresearch.com/docs/user-guide/docker
| `pvc.yaml` | 5 Gi PVC for `/opt/data` (HERMES_HOME) |
| `deployment.yaml` | Deployment (1 replica, Recreate, pinned to amd64 NUC) + Service |
| `ingress.yaml` | `home-manager.rogi.casa` → dashboard (TLS + basic auth) |
| `cron-seed.yaml` | one-shot Job that creates the Hermes cron schedule |
| `cron-seed.yaml` | Sync-hook Job that reconciles the Hermes cron schedule from Git (deletes + recreates each job on every run so prompt/schedule changes apply on sync) |
| `README.md` | this file |
---
@@ -105,8 +105,11 @@ Docs: https://hermes-agent.nousresearch.com/docs/user-guide/docker
`argocd/apps/home-manager.yaml`). ArgoCD will create the namespace resources,
deploy the pod, and bring up the ingress at `home-manager.rogi.casa`.
7. **Seed the cron jobs:** ArgoCD runs `cron-seed.yaml` as a Sync hook
automatically. To re-seed after a wipe:
`kubectl apply -f home-manager/cron-seed.yaml`.
automatically on every sync. The hook **reconciles** the cron schedule to
match Git: it deletes + recreates each named job, so prompt/schedule edits
in `cron-seed.yaml` take effect on the next sync (this overwrites any live
`hermes cron edit` changes — edit the prompts in Git instead). To re-run
it by hand: `kubectl apply -f home-manager/cron-seed.yaml`.
8. **Smoke test:** trigger a check manually —
`kubectl exec -n home-manager deploy/hermes -- hermes cron run door-window-check`
and confirm the message lands in Discord (or `[SILENT]` if all clear).
@@ -133,7 +136,11 @@ the agent is trusted.
- **ArgoCD owns** (in git): namespace, RBAC, Secret, ConfigMap (seed), PVC,
Deployment, Service, Ingress, cron-seed Job.
- **Runtime state (on the PVC, NOT reconciled):** `config.yaml`, `SOUL.md`,
`.env`, `cron/jobs.json`, `sessions/`, `memories/`, `skills/`. The ConfigMap
only *seeds* these on first boot; after that, edits made via the dashboard or
`hermes cron edit` persist on the PVC and Argo will not revert them. For a
hard reset, delete the PVC and re-apply.
`.env`, `sessions/`, `memories/`, `skills/`. The ConfigMap only *seeds* these
on first boot; after that, edits made via the dashboard persist on the PVC
and Argo will not revert them. For a hard reset, delete the PVC and re-apply.
- **Exception — cron jobs (`cron/jobs.json`):** the `cron-seed` Sync hook
re-runs on every ArgoCD sync and **deletes + recreates** each named job from
`cron-seed.yaml`, so the cron schedule IS reconciled from Git. Live edits
via `hermes cron edit` will be overwritten on the next sync — edit the
prompts in `cron-seed.yaml` and commit instead.