| Environment | Project ID | Config file |
|---|---|---|
| Development | odai-dev-5e4fd | app.yaml |
| Production | odai-prod | prod.yaml |
Prerequisites
Authenticate with the Google Cloud SDK before deploying:Configuration differences
- Development (app.yaml)
- Production (prod.yaml)
The development configuration uses manual scaling with a single instance, keeping costs low during active development.Key characteristics:
- 1 Gunicorn worker process with 2 Uvicorn workers
- 1 fixed instance (manual scaling — no auto-scaling)
- 1 vCPU, 4 GB RAM
LOCAL=falseso the app reads secrets from Google Secret Manager
Deploying
- Development
- Production
Use the provided shell script to deploy to the development environment. The script runs the full test suite before deploying to catch regressions early:This script executes the following steps:To deploy manually without the script:
Secrets in deployed environments
Neitherapp.yaml nor prod.yaml contains API keys. Since LOCAL is set to false in both configs, the application fetches all secrets from Google Secret Manager at startup using the project’s service account.
Ensure every required secret is stored in Secret Manager under the appropriate project before deploying. Secret IDs match the variable names from config.py (e.g., openai_api_key, plaid_client_id). See Environment Variables for the complete list.