-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathrender.yaml
More file actions
70 lines (67 loc) · 2.72 KB
/
Copy pathrender.yaml
File metadata and controls
70 lines (67 loc) · 2.72 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
# HAIP — Render Blueprint (one-click cloud demo)
#
# ⚠️ DEMO ONLY — NOT A SECURE PRODUCTION TEMPLATE. ⚠️
# This blueprint runs with AUTH_ENABLED=false + HAIP_ALLOW_INSECURE=true + mock
# payments so the public demo is browsable with zero setup. That means EVERY API
# endpoint (incl. /api/v1/connect/*) is reachable WITHOUT authentication. Do NOT
# point real guest/PII or live payments at a deployment using these values.
# For a real deployment: remove HAIP_ALLOW_INSECURE, set AUTH_ENABLED=true with a
# configured Keycloak, set STRIPE_MODE=live/test with real keys, and set a strong
# CONNECT_API_KEY. (The API refuses to boot production-like with auth off UNLESS
# HAIP_ALLOW_INSECURE=true — so removing that line is the intended hardening step.)
#
# Deploy a fully-working HAIP demo (API + dashboard + AI agents, seeded) with no
# local setup. Render provisions Postgres + Redis, builds the Docker image, runs
# migrate+seed via preDeployCommand, then serves the app.
#
# Use the "Deploy to Render" button in the README, or:
# render blueprint launch (Render CLI)
#
# Note: plan names/tiers change over time — adjust `plan:` values to match the
# tiers available in your Render account if a deploy is rejected.
services:
- type: web
name: haip-demo
runtime: docker
dockerfilePath: ./apps/api/Dockerfile
dockerContext: .
plan: starter
healthCheckPath: /api/v1/health
# Push schema + seed the demo hotel before each deploy goes live.
# Idempotent (schema IF NOT EXISTS; seed skips if property 'TGH' exists),
# so redeploys are safe. Runs in the built image (compiled dist, no tsx).
preDeployCommand: 'node packages/database/dist/push-schema.js && node packages/database/dist/seed.js'
envVars:
- key: NODE_ENV
value: production
- key: SERVE_DASHBOARD
value: 'true'
- key: PORT
value: '3000'
- key: AUTH_ENABLED
value: 'false'
- key: STRIPE_MODE
value: mock
# This is the intentional public demo: it runs with auth off and mock
# payments. The API refuses to boot in production with that config UNLESS
# this opt-in is set — which prevents an accidental insecure real deployment
# while keeping the demo green.
- key: HAIP_ALLOW_INSECURE
value: 'true'
- key: DATABASE_URL
fromDatabase:
name: haip-postgres
property: connectionString
- key: REDIS_URL
fromService:
type: redis
name: haip-redis
property: connectionString
- type: redis
name: haip-redis
plan: free
maxmemoryPolicy: noeviction
ipAllowList: [] # only reachable from services in this blueprint
databases:
- name: haip-postgres
plan: free