forked from mirror/coolify-cli
298bd28cd1
Adds phases 4 + 5 to `coolify init apply` for bootstrapping the v5 central transport plane without Laravel: - Phase 4 (central-only): apt-install Redis, download coolify-broker from GitHub releases, generate an EC P-256 JWT keypair under /etc/coolify/, and enable coolify-broker.service bound to the wg0 mgmt IP:6443. - Phase 5 (per non-central host): read jwt.priv from central, mint a 1-year ES256 JWT (sub = host wg0 IP), write it to /etc/coolify/host-jwt, rewrite coold.service with COOLD_BROKER_URL + COOLD_HOST_JWT_PATH, restart coold. New service generators under internal/services: - broker.go — unit, install command, JWT keypair setup - redis.go — apt install + enable - jwt.go — golang-jwt/jwt/v5 ES256 minting coold.go gains CooldServiceUnitWithBroker + BrokerConfig so the unit can carry broker env vars on non-central hosts. DesiredMesh gains CentralHost + BrokerVersion; empty CentralHost skips phases 4+5 (existing behavior). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>