Skip to content

Add staging environment and automated deployment workflow #75

Description

@nanaf6203-bit

Area: Deployment
Priority: P2 — Medium

Description

We need a staging environment that mirrors production for QA and pre-release testing. Without staging, releases go straight to production, increasing risk.

Acceptance Criteria

  • Add .github/workflows/deploy-staging.yml triggered on push to main
  • Staging uses separate DB (stellartip_staging) and Horizon testnet URL
  • Deployment target documented in docs/DEPLOYMENT.md (Render, Fly.io, Railway, AWS — team to pick)
  • Auto-deploys on successful CI run (lint + typecheck + tests pass)
  • Run database migrations on deploy
  • Smoke test after deploy: scripts/smoke.sh hits /health, /profiles, /tips and asserts 200
  • Document staging URLs and credentials in docs/OPERATIONS.md
  • Add staging link to /api/docs as Try-it URL

Technical Notes

  • Use GitHub Environments for staging secrets
  • Deploy via Docker image pushed to GHCR / Docker Hub
  • Rollback strategy: redeploy previous successful SHA

Metadata

Metadata

Assignees

Labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions