Skip to content

Host CcasServer on Render (deferred until post-CLI-v0 + #51) #60

Description

@Sootopolis

Placeholder for hosting CcasServer on Render so the scheduler runs continuously and remote job submission works from any device. Deferred — not near-term per roadmap discussion 2026-05-27.

Gating prereqs

Must land before any Render work begins:

Open decisions when unblocked

  • Neon compute budget: continuous Render box = always-warm endpoint. Free tier exhausts in ~8 days. Options: (a) auto-suspend gaps between scheduler ticks; (b) Neon Launch ($19/mo).
  • Render tier: free (sleeps after 15min idle, ~30s cold start — fine for cron-triggered jobs, not interactive) vs Starter ($7/mo always-on 512MB).
  • Single-writer invariant: hosted JobScheduler + local ccas serve against same DB would race on due-job claim. Either document "don't run both" in ccas serve lifecycle (serve, serve --detach, stop) #48 lifecycle or add DB-level scheduler lock.
  • Secrets: DATABASE_URL + CCAS_CONTACT_EMAIL into Render env vars. No .env in image.
  • Log retention: file-tail logs (File-tail logs endpoint GET /api/jobs/{id}/logs #47) assumes local disk; Render disks ephemeral. Pipe to stdout + external sink, or accept redeploy loss.
  • Health checks: existing HealthRoutes should suffice as Render health probe target.

Out of scope for this issue

Actual deploy work, auth/UI design, tier purchase. This issue only tracks "Render is on the roadmap, here's the parking lot of decisions for when it's time."

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:serverBackend HTTP server, jobs, schedulerenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions