Operations: deploys without downtime, sync on the server, first GitHub release #22

Open
opened 2026-10-08 18:30:31 +00:00 by anas · 2 comments
Owner

Scope: Import from divan-data in the daily sync; background jobs; audit log; contribution stats; Docker images and compose (Postgres, API, web, Caddy); backups and restore; deploy docs.

Acceptance criteria: Owner can deploy v2 to the Vultr server from the docs; daily data reaches the site.

Tracked in titus-ai projects/divan/TASKS.md and ROADMAP Phase 6.

**Scope:** Import from divan-data in the daily sync; background jobs; audit log; contribution stats; Docker images and compose (Postgres, API, web, Caddy); backups and restore; deploy docs. **Acceptance criteria:** Owner can deploy v2 to the Vultr server from the docs; daily data reaches the site. _Tracked in titus-ai `projects/divan/TASKS.md` and ROADMAP Phase 6._
anas added this to the Phase 5: Community milestone 2026-10-08 18:30:31 +00:00
anas added the
area/infra
v2
labels 2026-10-08 18:30:31 +00:00
anas modified the milestone from Phase 5: Community to Phase 6: Operations and release 2026-10-08 20:49:44 +00:00
Author
Owner

Progress: the audit log, daily sync script (deploy/sync.sh, which absorbs #6), backups/restore scripts and the e-book file store (DIVAN_FILES_DIR, README) are in place. Remaining: Docker images and compose (Postgres, API, web, Caddy), the file store on a resizable volume, deploy docs, first release. The trusted client IP from #44 must be fixed before going public.

Progress: the audit log, daily sync script (deploy/sync.sh, which absorbs #6), backups/restore scripts and the e-book file store (DIVAN_FILES_DIR, README) are in place. Remaining: Docker images and compose (Postgres, API, web, Caddy), the file store on a resizable volume, deploy docs, first release. The trusted client IP from #44 must be fixed before going public.
Author
Owner

Status: the beta runs at divan.anasrashid.net on the anasrashid.net server, in the same style as bistro (private repo anas/divan-deploy, server/). It has:

  • systemd services;
  • a deploy timer with health check and rollback (one run at a time);
  • daily sync and backups;
  • /health, uptime monitoring and error logs (#82);
  • admin statistics (#86).

Left:

  • Deploys without downtime: build each release in its own folder and switch a current link at the end. Today the site is down for the minute or two of the install and build.
  • Fix the daily sync on the server (divan-sync failed on 2026-10-10; waiting for its log).
  • First GitHub release.
  • divan.db in divan-data: it is 51 MB; move it out of git or to LFS.
Status: the beta runs at divan.anasrashid.net on the anasrashid.net server, in the same style as bistro (private repo anas/divan-deploy, `server/`). It has: - systemd services; - a deploy timer with health check and rollback (one run at a time); - daily sync and backups; - /health, uptime monitoring and error logs (#82); - admin statistics (#86). Left: - **Deploys without downtime:** build each release in its own folder and switch a `current` link at the end. Today the site is down for the minute or two of the install and build. - **Fix the daily sync on the server** (`divan-sync` failed on 2026-10-10; waiting for its log). - **First GitHub release.** - **divan.db in divan-data:** it is 51 MB; move it out of git or to LFS.
anas changed title from 6.6 Operations and deployment to Operations: deploys without downtime, sync on the server, first GitHub release 2026-10-09 23:15:34 +00:00
Sign in to join this conversation.
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: anas/divan#22
No description provided.