Service catalog, replica floors, monitor, restart, pause
Find a file
2026-09-11 14:24:18 -04:00
docs Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
public Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
services Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
src Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
test Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
.gitignore Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
fleet.json Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
machines.json Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
machines.secrets.json.example Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
NATS.md Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
package.json Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
README.md Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
SERVICES.md Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00
SUMMARY.md Initial import of verae-fleet from zapier monorepo 2026-09-11 14:24:18 -04:00

verae-fleet

Operator control plane for Verae Time × Zapier runtime services:

  • a list of every service and its config file
  • a central replica spec (fleet.json) — how many copies must be up
  • a monitor of active / paused / unhealthy replicas
  • restart when a copy is offline or fails /health
  • on / off / pause / resume per service or per instance
  • keepFloor on tree nodes so at least min copies stay available (paused copies do not count)
cd packages/verae-fleet
npm test
node src/cli.js list
node src/cli.js serve    # http://127.0.0.1:3850/

Against a running daemon:

node src/cli.js status
node src/cli.js pause tree-node-0      # floor starts another tree-node
node src/cli.js resume tree-node-0
node src/cli.js restart tree-node-1
node src/cli.js stop webhook-deliver   # disable that service
node src/cli.js start webhook-deliver

Add capacity in machines.json or the monitor Add machine form (kind=ssh, user, host, identity file path). New replicas land on the least-loaded eligible host.

node src/cli.js ssh-check ns1    # marchon@70.88.205.138 with ~/.ssh/id_ed25519

Private keys stay on disk (~/.ssh/id_ed25519); git stores only the path. Optional overrides: machines.secrets.json (gitignored).

Operator console (Fleet · Trace · Docs) at http://127.0.0.1:3850/docs/CONSOLE.md · CONSOLE.pdf (also https://zapier.georgelambert.org/packages/verae-fleet/docs/CONSOLE.pdf). Message-processing min / avg / p50 / p90 RTT is on the Fleet tab.

Zapier cloud apps are listed but not spawned. NATS on NS1 is monitored only (loopback :4222, never a public bind).

Clone: ssh://git@git.georgelambert.org:2223/marchon/verae-fleet.git