From 9de721b693589e611a7def3df43575e5e003a940 Mon Sep 17 00:00:00 2001
From: Felipe D'Abrantes <felidabrantes@gmail.com>
Date: Thu, 27 Apr 2023 23:18:47 +0100
Subject: [PATCH] Define and deploy the feed service

---
 gcloud/Deployment Steps.md                    |  5 +++
 .../feed-service/feed-service-autoscaler.yaml | 12 ++++++
 .../feed-service/feed-service-deployment.yaml | 41 +++++++++++++++++++
 3 files changed, 58 insertions(+)
 create mode 100644 gcloud/feed-service/feed-service-autoscaler.yaml
 create mode 100644 gcloud/feed-service/feed-service-deployment.yaml

diff --git a/gcloud/Deployment Steps.md b/gcloud/Deployment Steps.md
index a291b8ca..5d681fc3 100644
--- a/gcloud/Deployment Steps.md	
+++ b/gcloud/Deployment Steps.md	
@@ -85,6 +85,11 @@ For our main services, we first define our Horizontal Autoscaler, then we deploy
 `kubectl apply -f gcloud/friend-service/friend-service-autoscaler.yaml`
 `kubectl apply -f gcloud/friend-service/friend-service-deployment.yaml`
 
+### Feed Backend
+
+`kubectl apply -f gcloud/feed-service/feed-service-autoscaler.yaml`
+`kubectl apply -f gcloud/feed-service/feed-service-deployment.yaml`
+
 <br />
 
 ## NGINX Service
diff --git a/gcloud/feed-service/feed-service-autoscaler.yaml b/gcloud/feed-service/feed-service-autoscaler.yaml
new file mode 100644
index 00000000..f78f73a5
--- /dev/null
+++ b/gcloud/feed-service/feed-service-autoscaler.yaml
@@ -0,0 +1,12 @@
+apiVersion: autoscaling/v1
+kind: HorizontalPodAutoscaler
+metadata:
+  name: feed-backend-deployment-hpa
+spec:
+  scaleTargetRef:
+    apiVersion: apps/v1
+    kind: Deployment
+    name: feed-backend-deployment
+  minReplicas: 1
+  maxReplicas: 5
+  targetCPUUtilizationPercentage: 80
diff --git a/gcloud/feed-service/feed-service-deployment.yaml b/gcloud/feed-service/feed-service-deployment.yaml
new file mode 100644
index 00000000..271c9095
--- /dev/null
+++ b/gcloud/feed-service/feed-service-deployment.yaml
@@ -0,0 +1,41 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: feed-backend-deployment
+spec:
+  selector:
+    matchLabels:
+      app: feed-backend
+  replicas: 3
+  template:
+    metadata:
+      labels:
+        app: feed-backend
+    spec:
+      containers:
+        - name: feed-service
+          image: europe-west2-docker.pkg.dev/daily-384822/daily-repo/feed-service:v1
+          ports:
+            - containerPort: 9000
+          env:
+            - name: MONGO_URI
+              value: "mongodb://feed-mongo-service:27017/"
+            - name: FRIEND_SERVICE_URI
+              value: "http://friend-service:9000/"
+            - name: ENABLE_QUESTION_DB_SEEDING
+              value: "true"
+            - name: JWT_PRIVATE_KEY
+              value: "yB/uX5KdyjHN9P34IE49HxAcrlQ4gfvpVJEzGbo5E/I="
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: feed-backend-service
+spec:
+  selector:
+    app: feed-backend
+  ports:
+    - name: http
+      port: 9000
+      targetPort: 9000
+  type: ClusterIP
-- 
GitLab