Infrastructure
Cloud platform and deployment approach
Infrastructure
Cloud Platform: Google Cloud
We deploy on Google Cloud Platform using managed services:
| Component | Service | Purpose |
|---|---|---|
| Compute | Cloud Run | Auto-scaling containers for all services |
| Database | Cloud SQL | PostgreSQL for HRMS data |
| Storage | Cloud Storage | Documents with signed URLs |
| Secrets | Secret Manager | API keys, credentials |
| Cache | Memory Store | Redis for sessions, queues, caching |
External Services
- MongoDB Atlas - Vector storage for AI Service only (separate from HRMS data)
Key Rules
- Separation - HRMS data (PostgreSQL) stays separate from AI data (MongoDB)
- Managed Services - Use GCP managed services over self-hosted
- Auto-scaling - Cloud Run handles scaling automatically
- Environments - Development → Staging → Production
CI/CD
GitHub Actions pipeline: lint → test → build → deploy to Cloud Run
Specifics to be defined during implementation