forked from cellajs/cella
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrender.yaml
More file actions
150 lines (143 loc) · 3.78 KB
/
Copy pathrender.yaml
File metadata and controls
150 lines (143 loc) · 3.78 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
previewsEnabled: true
previewsExpireAfterDays: 3
# Make sure to replace everything with *.cella* with own domain name(s), etc
services:
# Backend
- type: web
name: cella-backend
runtime: node
region: frankfurt
rootDir: backend
buildCommand: pnpm install && pnpm build
preDeployCommand: pnpm predeploy
startCommand: pnpm start
numInstances: 1
healthCheckPath: /ping
envVars:
- key: DATABASE_URL
sync: false
- key: TUS_UPLOAD_API_SECRET
sync: false
- key: AWS_CLOUDFRONT_KEY_ID
sync: false
- key: AWS_CLOUDFRONT_PRIVATE_KEY
sync: false
buildFilter:
paths:
- backend/**/*.?s
# TUS upload server
- type: web
name: cella-tus
runtime: node
region: frankfurt
rootDir: tus
buildCommand: pnpm install && pnpm build
startCommand: pnpm proxy & pnpm start
numInstances: 1
envVars:
- key: TUS_UPLOAD_API_SECRET
sync: false
- key: AWS_S3_UPLOAD_ACCESS_KEY_ID
sync: false
- key: AWS_S3_UPLOAD_SECRET_ACCESS_KEY
sync: false
buildFilter:
paths:
- tus/**/*.?s
# Frontend
- type: web
name: cella-frontend
runtime: static
rootDir: frontend
- buildCommand: pnpm install && pnpm build
staticPublishPath: ./dist
pullRequestPreviewsEnabled: true
headers:
- path: /*
name: X-Content-Type-Options
value: nosniff
- path: /*
name: Content-Security-Policy
value: |
default-src 'self';
script-src 'self' *.cellajs.com *.vimeo.com *.googleapis.com *.gleap.io;
connect-src 'self' blob: *.cellajs.com *.gleap.io wss://ws.gleap.io;
img-src 'self' blob: https: data:;
media-src 'self' blob: data: https://i.ytimg.com *.gleap.io;
frame-src 'self' *.youtube.com *.vimeo.com *.paddle.com *.gleap.io;
style-src 'self' 'unsafe-inline' https://fonts.googleapis.com;
font-src 'self' data: https://fonts.gstatic.com;
- path: /*
name: Referrer-Policy
value: same-origin
- path: /*
name: Strict-Transport-Security
value: max-age=15768000
- path: /*
name: X-XSS-Protection
value: 1; mode=block
- path: /*
name: Permissions-Policy
value: camera=(), microphone=(), geolocation=(), accelerometer=(), gyroscope=(), magnetometer=(), payment=(), midi=()
- path: /*
name: X-Frame-Options
value: SAMEORIGIN
routes:
- type: rewrite
source: /*
destination: /index.html
envVars:
- key: SKIP_INSTALL_DEPS
value: true
buildFilter:
paths:
- frontend/**/*.?s
- type: web
name: cella-electric-sync
runtime: image
image:
url: docker.io/electricsql/electric:latest
plan: standard
envVars:
- key: PG_PROXY_PORT
value: http
sync: true
- key: PG_PROXY_PASSWORD
sync: false
- key: LOGICAL_PUBLISHER_HOST
value: electric-sync.cellajs.com
sync: true
- key: ELECTRIC_WRITE_TO_PG_MODE
value: direct_writes
sync: true
- key: ELECTRIC_RESUMABLE_WAL_WINDOW
value: 800M
sync: true
- key: DATABASE_USE_IPV6
value: false
sync: true
- key: DATABASE_URL
sync: false
- key: AUTH_MODE
value: secure
sync: true
- key: AUTH_JWT_KEY
sync: false
- key: AUTH_JWT_ISS
value: cella_backend
sync: true
- key: AUTH_JWT_AUD
value: cella_client
sync: true
- key: AUTH_JWT_ALG
value: ES256
sync: true
region: frankfurt
# Postgres database
# databases:
# - name: cella-db
# databaseName: cella
# region: frankfurt
# plan: starter
# previewPlan: starter
# postgresMajorVersion: 15