Skip to content

Commit 56f7fa3

Browse files
authored
Merge pull request #41 from AET-DevOps25/feature/add-db-deployment
Add mongodb deployment
2 parents 9c75e38 + d1869a7 commit 56f7fa3

File tree

8 files changed

+89
-3
lines changed

8 files changed

+89
-3
lines changed

.github/workflows/ci-cd.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -237,4 +237,4 @@ jobs:
237237
chmod 600 ~/.kube/config
238238
239239
- name: Deploy with Helm
240-
run: helm -n team-continuous-disappointment upgrade recip-ai ./recipai-chart --set secrets.gitlabClientSecret="${{ secrets.PROD_CLIENT_SECRET }}"
240+
run: helm -n team-continuous-disappointment upgrade recip-ai ./recipai-chart --set secrets.gitlabClientSecret="${{ secrets.PROD_CLIENT_SECRET }}" --set secrets.mongodbAdminPassword="${{ secrets.MONGODB_ADMIN_PASSWORD }}"
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: mongodb
5+
spec:
6+
selector:
7+
matchLabels:
8+
app: mongodb
9+
template:
10+
metadata:
11+
labels:
12+
app: mongodb
13+
spec:
14+
containers:
15+
- name: mongodb
16+
image: mongo:6.0
17+
imagePullPolicy: IfNotPresent
18+
ports:
19+
- containerPort: 27017
20+
volumeMounts:
21+
- name: mongo-storage
22+
mountPath: /data/db
23+
resources:
24+
requests:
25+
memory: "256Mi"
26+
cpu: "100m"
27+
limits:
28+
memory: "512Mi"
29+
cpu: "500m"
30+
env:
31+
- name: MONGO_INITDB_ROOT_USERNAME
32+
value: {{ .Values.db.adminUsername }}
33+
- name: MONGO_INITDB_ROOT_PASSWORD
34+
valueFrom:
35+
secretKeyRef:
36+
name: mongodb-secret
37+
key: admin-password
38+
volumes:
39+
- name: mongo-storage
40+
persistentVolumeClaim:
41+
claimName: mongodb-pvc
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
apiVersion: v1
2+
kind: PersistentVolumeClaim
3+
metadata:
4+
name: mongodb-pvc
5+
spec:
6+
accessModes:
7+
- ReadWriteOnce
8+
resources:
9+
requests:
10+
storage: {{ .Values.db.storage }}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
apiVersion: v1
2+
kind: Secret
3+
metadata:
4+
name: mongodb-secret
5+
annotations:
6+
checksum/redeploy: "{{ randAlphaNum 8 }}"
7+
type: Opaque
8+
stringData:
9+
admin-password: {{ .Values.secrets.mongodbAdminPassword }}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: {{ .Values.services.mongodb }}
5+
spec:
6+
selector:
7+
app: mongodb
8+
ports:
9+
- protocol: TCP
10+
port: 27017
11+
targetPort: 27017

recipai-chart/templates/server-deployment.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,13 @@ spec:
2222
- containerPort: {{ .Values.ports.server }}
2323
name: server-api
2424
env:
25+
- name: MONGODB_USERNAME
26+
value: {{ .Values.db.adminUsername }}
27+
- name: MONGODB_PASSWORD
28+
valueFrom:
29+
secretKeyRef:
30+
name: server-secret
31+
key: mongodb-password
2532
- name: GITLAB_CLIENT_SECRET
2633
valueFrom:
2734
secretKeyRef:

recipai-chart/templates/server-sercret.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@ metadata:
66
checksum/redeploy: "{{ randAlphaNum 8 }}"
77
type: Opaque
88
stringData:
9-
gitlab-client-secret: {{ .Values.secrets.gitlabClientSecret }}
9+
gitlab-client-secret: {{ .Values.secrets.gitlabClientSecret }}
10+
mongodb-password: {{ .Values.secrets.mongodbAdminPassword }}

recipai-chart/values.yaml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,13 @@ services:
2929
client: client-service
3030
server: server-service
3131
genai: genai-service
32+
mongodb: mongodb-service
3233

34+
db:
35+
adminUsername: admin
36+
storage: 4Gi
37+
38+
# will be overridden
3339
secrets:
34-
gitlabClientSecret: "set in CI pipeline" # will be overridden
40+
gitlabClientSecret: "set in CI pipeline"
41+
mongodbAdminPassword: "set in CI pipeline"

0 commit comments

Comments
 (0)