-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrender.yaml
More file actions
77 lines (68 loc) · 2.54 KB
/
Copy pathrender.yaml
File metadata and controls
77 lines (68 loc) · 2.54 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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# Render Blueprint for the Engram backend (FastAPI + Cognee).
# Deploy: Render Dashboard → New → Blueprint → point at this repo.
# Secrets marked `sync: false` must be filled in the Render dashboard.
databases:
- name: engram-db
databaseName: engram
user: engram
plan: free # NOTE: Render free Postgres expires ~30 days; upgrade for production.
services:
- type: web
name: engram-backend
runtime: python
plan: free # Free instances spin down when idle; first request after idle is slow.
rootDir: backend
buildCommand: pip install -r requirements.txt
startCommand: uvicorn main:app --host 0.0.0.0 --port $PORT
healthCheckPath: /health
autoDeploy: true
envVars:
# --- Runtime ---
- key: PYTHON_VERSION
value: 3.12.7
- key: ENVIRONMENT
value: production
# --- Database (auto-wired from the engram-db instance above) ---
- key: DATABASE_URL
fromDatabase:
name: engram-db
property: connectionString
# --- Auth: MUST match the frontend's ENGRAM_ACCESS_KEY on Vercel ---
- key: ENGRAM_ACCESS_KEY
sync: false
# Encrypts BYOK API keys at rest. Generate:
# python -c "import base64,os;print(base64.urlsafe_b64encode(os.urandom(32)).decode())"
- key: ENGRAM_ENCRYPTION_KEY
sync: false
# --- CORS: set to your Vercel frontend URL, e.g. https://engram1002.vercel.app ---
- key: FRONTEND_URL
sync: false
# --- Optional: GitHub token for repo ingestion (raises API limit 60->5000/hr,
# enables private repos). Create a PAT at github.com/settings/tokens ---
- key: GITHUB_TOKEN
sync: false
# --- LLM provider (Groq is a reliable free default) ---
- key: LLM_PROVIDER
value: groq
- key: GROQ_API_KEY
sync: false
- key: LLM_MODEL_FALLBACK
value: groq/llama-3.3-70b-versatile
# For Gemini instead, set these and change LLM_PROVIDER=gemini:
# - key: GEMINI_API_KEY
# sync: false
# - key: LLM_MODEL
# value: gemini/gemini-2.5-flash
# --- Cognee init flags ---
- key: MOCK_EMBEDDING
value: "true"
- key: COGNEE_SKIP_CONNECTION_TEST
value: "true"
# --- Hosted Cognee Cloud tenant: routes remember/recall/improve/forget to the
# tenant so memory persists and recall answers from the graph. Set all three. ---
- key: COGNEE_API_KEY
sync: false
- key: COGNEE_SERVICE_URL
sync: false
- key: COGNEE_TENANT_ID
sync: false