Background
Lens's aggregated price history lives in one managed Postgres. Losing it (provider limits, expiry, misconfig) means re-deriving from chain — slow. A nightly logical backup is the durability fallback for the mainnet deployment.
What to build
A free scheduled GitHub Actions workflow that pg_dumps to a dated artifact/release, plus a restore runbook. Covers both network DBs.
Key files
.github/workflows/db-backup.yml — new
docs/backup-restore.md — new
Suggested execution
git checkout -b ci/nightly-pg-dump
- Scheduled workflow using a
DATABASE_URL secret
pg_dump --format=custom → gzip → upload (retention ~14 days)
- Runbook:
pg_restore into a fresh Neon instance, swap DATABASE_URL
- Handle separate testnet/mainnet DBs
Acceptance criteria
Drips Wave · Complexity: Easy · 100 points
Required: Before submitting, join the contributor Telegram so your work can be tracked and counted toward the Stellar Wave: https://t.me/+fxHXq8f1SwlkZDBk
Background
Lens's aggregated price history lives in one managed Postgres. Losing it (provider limits, expiry, misconfig) means re-deriving from chain — slow. A nightly logical backup is the durability fallback for the mainnet deployment.
What to build
A free scheduled GitHub Actions workflow that
pg_dumps to a dated artifact/release, plus a restore runbook. Covers both network DBs.Key files
.github/workflows/db-backup.yml— newdocs/backup-restore.md— newSuggested execution
DATABASE_URLsecretpg_dump --format=custom→ gzip → upload (retention ~14 days)pg_restoreinto a fresh Neon instance, swapDATABASE_URLAcceptance criteria
Required: Before submitting, join the contributor Telegram so your work can be tracked and counted toward the Stellar Wave: https://t.me/+fxHXq8f1SwlkZDBk