-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrender.yaml
More file actions
60 lines (57 loc) · 1.92 KB
/
render.yaml
File metadata and controls
60 lines (57 loc) · 1.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# Render Blueprint — one-click provisioning of the TradeWise backend stack.
#
# Usage:
# 1. Push this file to the repo root on `main`.
# 2. In Render dashboard → New + → Blueprint → pick ArjunDeshwal/Tradewise → Apply.
# 3. Render creates: Postgres DB, Redis (Key-Value store), and the FastAPI web service.
# 4. Fill the `sync: false` secrets (FINNHUB_API_KEY, HF_API_TOKEN, OPENROUTER_API_KEY,
# MARKETAUX_API_KEY) in the dashboard when prompted — they aren't committed.
#
# Notes:
# - `fromDatabase.property: connectionString` returns a `postgres://` URL. The FastAPI
# app normalizes it to `postgresql+asyncpg://` at startup (see app/core/config.py).
# - JWT_SECRET is auto-generated per environment with `generateValue: true`.
# - The Redis free plan on Render has no persistence — fine for our quote cache.
databases:
- name: tradewise-db
plan: free
databaseName: tradewise
user: tradewise
services:
- type: redis
name: tradewise-redis
plan: free
ipAllowList: [] # internal-only; only services in the same Render team can reach it
maxmemoryPolicy: allkeys-lru
- type: web
name: tradewise-api
runtime: docker
plan: free
region: oregon
rootDir: backend
dockerfilePath: ./Dockerfile
healthCheckPath: /health
autoDeploy: true
envVars:
- key: DATABASE_URL
fromDatabase:
name: tradewise-db
property: connectionString
- key: REDIS_URL
fromService:
type: redis
name: tradewise-redis
property: connectionString
- key: JWT_SECRET
generateValue: true
- key: PYTHONUNBUFFERED
value: "1"
# Secrets — set these in the dashboard, not in this file.
- key: FINNHUB_API_KEY
sync: false
- key: HF_API_TOKEN
sync: false
- key: OPENROUTER_API_KEY
sync: false
- key: MARKETAUX_API_KEY
sync: false