-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrender.yaml
More file actions
150 lines (149 loc) · 4.02 KB
/
Copy pathrender.yaml
File metadata and controls
150 lines (149 loc) · 4.02 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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
services:
# ── Web API ───────────────────────────────────────────────────────────────
- type: web
name: whatsapp-pro-api
runtime: node
plan: starter
buildCommand: npm ci && npx prisma generate
startCommand: npx prisma migrate deploy && node src/server.js
healthCheckPath: /api/v1/health
envVars:
- key: NODE_ENV
value: production
- key: PORT
value: 4000
# All secrets below are set in the Render dashboard (not committed here)
- key: DATABASE_URL
sync: false
- key: REDIS_URL
sync: false
- key: JWT_SECRET
sync: false
- key: JWT_REFRESH_SECRET
sync: false
- key: SUPERADMIN_EMAIL
sync: false
- key: SUPERADMIN_PASSWORD
sync: false
- key: ANTHROPIC_API_KEY
sync: false
- key: OPENAI_API_KEY
sync: false
- key: GOOGLE_GEMINI_API_KEY
sync: false
- key: QDRANT_URL
sync: false
- key: QDRANT_API_KEY
sync: false
- key: QDRANT_COLLECTION
value: knowledge
- key: META_APP_ID
sync: false
- key: META_APP_SECRET
sync: false
- key: META_CONFIG_ID
sync: false
- key: WHATSAPP_VERIFY_TOKEN
sync: false
- key: WHATSAPP_ACCESS_TOKEN
sync: false
- key: WHATSAPP_API_VERSION
value: v20.0
- key: MONNIFY_API_KEY
sync: false
- key: MONNIFY_SECRET_KEY
sync: false
- key: MONNIFY_CONTRACT_CODE
sync: false
- key: MONNIFY_BASE_URL
value: https://api.monnify.com
- key: STORAGE_ENDPOINT
sync: false
- key: STORAGE_BUCKET
sync: false
- key: STORAGE_ACCESS_KEY
sync: false
- key: STORAGE_SECRET_KEY
sync: false
- key: STORAGE_REGION
value: auto
- key: EMAIL_HOST
value: smtp.gmail.com
- key: EMAIL_PORT
value: 587
- key: EMAIL_SECURE
value: false
- key: EMAIL_USER
sync: false
- key: EMAIL_PASSWORD
sync: false
- key: EMAIL_FROM
sync: false
- key: FRONTEND_URL
sync: false
- key: APP_URL
sync: false
- key: API_PREFIX
value: /api/v1
- key: JWT_EXPIRES_IN
value: 10m
- key: JWT_REFRESH_EXPIRES_IN
value: 7d
- key: AI_CHAT_PROVIDER
value: anthropic
- key: AI_EMBEDDING_PROVIDER
value: openai
# Customer auth (storefront shoppers)
- key: GOOGLE_CLIENT_ID
sync: false
- key: GOOGLE_CLIENT_SECRET
sync: false
- key: RP_ID
sync: false
- key: ALLOWED_ORIGINS
sync: false
# ── Background Worker (BullMQ — aiReply, outbox, notifications) ──────────
- type: worker
name: whatsapp-pro-worker
runtime: node
plan: starter
buildCommand: npm ci && npx prisma generate
startCommand: node src/jobs/worker.js
envVars:
- key: NODE_ENV
value: production
# Worker shares the same env vars as the web service
- key: DATABASE_URL
sync: false
- key: REDIS_URL
sync: false
- key: ANTHROPIC_API_KEY
sync: false
- key: OPENAI_API_KEY
sync: false
- key: GOOGLE_GEMINI_API_KEY
sync: false
- key: QDRANT_URL
sync: false
- key: QDRANT_API_KEY
sync: false
- key: QDRANT_COLLECTION
value: knowledge
- key: WHATSAPP_ACCESS_TOKEN
sync: false
- key: WHATSAPP_API_VERSION
value: v20.0
- key: STORAGE_ENDPOINT
sync: false
- key: STORAGE_BUCKET
sync: false
- key: STORAGE_ACCESS_KEY
sync: false
- key: STORAGE_SECRET_KEY
sync: false
- key: STORAGE_REGION
value: auto
- key: AI_CHAT_PROVIDER
value: anthropic
- key: AI_EMBEDDING_PROVIDER
value: openai