· 5 years ago · Oct 06, 2020, 09:00 AM
1 kind: PersistentVolumeClaim
2apiVersion: v1
3metadata:
4 name: mongo-storage-claim
5 labels:
6 app: mongo-storage-claim
7spec:
8 accessModes:
9 - ReadWriteOnce
10 resources:
11 requests:
12 storage: 1Gi
13---
14apiVersion: apps/v1
15kind: Deployment
16metadata:
17 name: mongo
18spec:
19 replicas: 1
20 selector:
21 matchLabels:
22 app: mongo
23 template:
24 metadata:
25 name: mongo
26 labels:
27 app: mongo
28 spec:
29 containers:
30 - image: mongo:4.0
31 imagePullPolicy: "Always"
32 name: mongo
33 ports:
34 - containerPort: 27017
35 readinessProbe:
36 httpGet:
37 path: /
38 port: 27017
39 periodSeconds: 10
40 timeoutSeconds: 5
41 successThreshold: 2
42 failureThreshold: 5
43 resources:
44 requests:
45 memory: "128M"
46 cpu: 0.2
47 limits:
48 memory: "512M"
49 cpu: 0.5
50 volumeMounts:
51 - name: mongo-storage
52 mountPath: /data/db
53 restartPolicy: Always
54 serviceAccountName: ""
55 volumes:
56 - name: mongo-storage
57 persistentVolumeClaim:
58 claimName: mongo-storage-claim
59
60---
61apiVersion: apps/v1
62kind: Deployment
63metadata:
64 name: api
65spec:
66 replicas: 1
67 selector:
68 matchLabels:
69 app: api
70 template:
71 metadata:
72 labels:
73 app: api
74 name: api
75 spec:
76 containers:
77 - env:
78 - name: MONGODB_DATABASE
79 value: sorry-cypress
80 - name: MONGODB_URI
81 value: mongodb://mongo-service:27017
82 image: agoldis/sorry-cypress-api:latest
83 imagePullPolicy: "Always"
84 name: api
85 ports:
86 - containerPort: 4000
87 resources:
88 requests:
89 memory: "128M"
90 cpu: 0.2
91 limits:
92 memory: "512M"
93 cpu: 0.5
94 restartPolicy: Always
95 serviceAccountName: ""
96 volumes: null
97---
98apiVersion: apps/v1
99kind: Deployment
100metadata:
101 name: director
102spec:
103 replicas: 1
104 selector:
105 matchLabels:
106 app: director
107 template:
108 metadata:
109 labels:
110 app: director
111 name: director
112 spec:
113 containers:
114 - env:
115 - name: DASHBOARD_URL
116 value: http://dashboard-service:8080
117 - name: EXECUTION_DRIVER
118 value: ../execution/mongo/driver
119 - name: MONGODB_DATABASE
120 value: sorry-cypress
121 - name: MONGODB_URI
122 value: mongodb://mongo-service:27017
123 - name: SCREENSHOTS_DRIVER
124 value: ../screenshots/s3.driver
125 - name: S3_BUCKET
126 value: sendible-cypress
127 - name: S3_REGION
128 value: us-east-1
129 - name: AWS_ACCESS_KEY_ID
130 valueFrom:
131 secretKeyRef:
132 name: cypress-s3-secrets
133 key: AWS_ACCESS_KEY_ID
134 - name: AWS_SECRET_ACCESS_KEY
135 valueFrom:
136 secretKeyRef:
137 name: cypress-s3-secrets
138 key: AWS_SECRET_ACCESS_KEY
139 image: agoldis/sorry-cypress-director:latest
140 imagePullPolicy: "Always"
141 name: director
142 ports:
143 - containerPort: 1234
144 readinessProbe:
145 httpGet:
146 path: /
147 port: 1234
148 periodSeconds: 10
149 timeoutSeconds: 5
150 successThreshold: 2
151 failureThreshold: 5
152 resources:
153 requests:
154 memory: "128M"
155 cpu: 0.2
156 limits:
157 memory: "512M"
158 cpu: 0.5
159 restartPolicy: Always
160 serviceAccountName: ""
161 volumes: null
162---
163apiVersion: apps/v1
164kind: Deployment
165metadata:
166 name: dashboard
167spec:
168 replicas: 1
169 selector:
170 matchLabels:
171 app: dashboard
172 template:
173 metadata:
174 labels:
175 app: dashboard
176 name: dashboard
177 spec:
178 containers:
179 - env:
180 - name: GRAPHQL_SCHEMA_URL
181 value: api-service:4000
182 image: agoldis/sorry-cypress-dashboard:latest
183 imagePullPolicy: "Always"
184 name: dashboard
185 ports:
186 - containerPort: 8080
187 readinessProbe:
188 httpGet:
189 path: /
190 port: 8080
191 periodSeconds: 10
192 timeoutSeconds: 5
193 successThreshold: 2
194 failureThreshold: 5
195 resources:
196 requests:
197 memory: "128M"
198 cpu: 0.2
199 limits:
200 memory: "512M"
201 cpu: 0.5
202 restartPolicy: Always
203 serviceAccountName: ""
204 volumes: null
205---
206apiVersion: v1
207kind: Service
208metadata:
209 name: dashboard-service
210spec:
211 ports:
212 - name: "8080"
213 port: 8080
214 targetPort: 8080
215 selector:
216 app: dashboard
217---
218apiVersion: v1
219kind: Service
220metadata:
221 name: api-service
222spec:
223 ports:
224 - name: "4000"
225 port: 4000
226 targetPort: 4000
227 selector:
228 app: api
229---
230apiVersion: v1
231kind: Service
232metadata:
233 name: mongo-service
234spec:
235 ports:
236 - name: "27017"
237 port: 27017
238 targetPort: 27017
239 selector:
240 app: mongo
241---
242apiVersion: v1
243kind: Service
244metadata:
245 name: director-service
246spec:
247 ports:
248 - name: "1234"
249 port: 1234
250 targetPort: 1234
251 selector:
252 app: director
253---
254apiVersion: extensions/v1beta1
255kind: Ingress
256metadata:
257 name: cypress-ingresses
258spec:
259 rules:
260 - host: cypress-dashboard.net
261 http:
262 paths:
263 - backend:
264 serviceName: dashboard-service
265 servicePort: 8080
266 - host: api-service.net
267 http:
268 paths:
269 - backend:
270 serviceName: api-service
271 servicePort: 4000
272 - host: director-service.net
273 http:
274 paths:
275 - backend:
276 serviceName: director-service
277 servicePort: 1234
278---
279apiVersion: v1
280kind: Secret
281metadata:
282 name: cypress-s3-secrets
283data:
284 # Insert your appropriate secrets, base64-encoded.
285 # In a terminal, type: echo -n YOUR-TEXT-TO-ENCODE | base64
286 AWS_SECRET_ACCESS_KEY: SU5TRVJULUhFUkU=
287 AWS_ACCESS_KEY_ID: SU5TRVJULUhFUkU=