diff --git a/kubernetes/apps/finesse/finesse-deployment.yml b/kubernetes/apps/finesse/finesse-backend-deployment.yml similarity index 72% rename from kubernetes/apps/finesse/finesse-deployment.yml rename to kubernetes/apps/finesse/finesse-backend-deployment.yml index 08883f2a..fbd8ff86 100644 --- a/kubernetes/apps/finesse/finesse-deployment.yml +++ b/kubernetes/apps/finesse/finesse-backend-deployment.yml @@ -1,12 +1,4 @@ apiVersion: v1 -kind: Namespace -metadata: - name: finesse - labels: - name: finesse - ---- -apiVersion: v1 kind: ServiceAccount metadata: name: secrets-reader @@ -16,17 +8,17 @@ metadata: apiVersion: apps/v1 kind: Deployment metadata: - name: finesse + name: finesse-backend namespace: finesse spec: replicas: 2 selector: matchLabels: - app: finesse + app: finesse-backend template: metadata: labels: - app: finesse + app: finesse-backend annotations: vault.hashicorp.com/agent-inject: 'true' vault.hashicorp.com/role: 'secrets-reader' @@ -53,7 +45,7 @@ spec: serviceAccountName: secrets-reader containers: - name: finesse-backend - image: gcr.io/spartan-rhino-408115/finesse-backend:latest + image: ghcr.io/ai-cfia/finesse-backend:98f702dddef8f5d46668794b65920c9ce38b8034 imagePullPolicy: Always command: ["/bin/sh", "-c"] args: @@ -73,41 +65,12 @@ spec: apiVersion: v1 kind: Service metadata: - name: finesse + name: finesse-backend-svc namespace: finesse spec: clusterIP: None selector: - app: finesse + app: finesse-backend ports: - protocol: TCP - port: 8080 - ---- -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: finesse - namespace: finesse - annotations: - cert-manager.io/cluster-issuer: letsencrypt-http - ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-read-timeout: "1800" - kubernetes.io/tls-acme: "true" -spec: - ingressClassName: nginx - tls: - - hosts: - - finesse.ninebasetwo.xyz - secretName: aciacfia-tls - rules: - - host: finesse.ninebasetwo.xyz - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: finesse - port: - number: 8080 + port: 8080 \ No newline at end of file diff --git a/kubernetes/apps/finesse/finesse-frontend-deployment.yml b/kubernetes/apps/finesse/finesse-frontend-deployment.yml new file mode 100644 index 00000000..cb900eb5 --- /dev/null +++ b/kubernetes/apps/finesse/finesse-frontend-deployment.yml @@ -0,0 +1,42 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: finesse-frontend + namespace: finesse +spec: + replicas: 2 + selector: + matchLabels: + app: finesse-frontend + template: + metadata: + labels: + app: finesse-frontend + spec: + serviceAccountName: secrets-reader + containers: + - name: finesse-frontend + image: ghcr.io/ai-cfia/finesse-frontend:2f1a36ef6f184639f301070ba3b732aeac28fb4d + imagePullPolicy: Always + ports: + - containerPort: 3000 + livenessProbe: + httpGet: + path: /health + port: 3000 + initialDelaySeconds: 60 + periodSeconds: 10 + +--- +apiVersion: v1 +kind: Service +metadata: + name: finesse-frontend-svc + namespace: finesse +spec: + clusterIP: None + selector: + app: finesse-frontend + ports: + - protocol: TCP + port: 3000 \ No newline at end of file diff --git a/kubernetes/apps/finesse/finesse-ingress.yml b/kubernetes/apps/finesse/finesse-ingress.yml new file mode 100644 index 00000000..6b126779 --- /dev/null +++ b/kubernetes/apps/finesse/finesse-ingress.yml @@ -0,0 +1,60 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: finesse-backend-ingress + namespace: finesse + annotations: + nginx.ingress.kubernetes.io/use-regex: "true" + nginx.ingress.kubernetes.io/rewrite-target: /$2 # https://kubernetes.github.io/ingress-nginx/examples/rewrite/ + cert-manager.io/cluster-issuer: letsencrypt-http + ingress.kubernetes.io/force-ssl-redirect: "true" + kubernetes.io/tls-acme: "true" +spec: + ingressClassName: nginx + tls: + - hosts: + - finesse.ninebasetwo.xyz + secretName: aciacfia-tls + rules: + - host: finesse.ninebasetwo.xyz + http: + paths: + - path: /api(/|$)(.*) + pathType: ImplementationSpecific + backend: + service: + name: finesse-backend-svc + port: + number: 8080 + +--- +# For more information check https://github.com/nginxinc/kubernetes-ingress/issues/323 +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: finesse-frontend-ingress + namespace: finesse + annotations: + nginx.ingress.kubernetes.io/add-base-url: "true" + nginx.ingress.kubernetes.io/rewrite-target: / + cert-manager.io/cluster-issuer: letsencrypt-http + ingress.kubernetes.io/force-ssl-redirect: "true" + kubernetes.io/tls-acme: "true" +spec: + ingressClassName: nginx + tls: + - hosts: + - finesse.ninebasetwo.xyz + secretName: aciacfia-tls + rules: + - host: finesse.ninebasetwo.xyz + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: finesse-frontend-svc + port: + number: 3000 + diff --git a/kubernetes/apps/finesse/finesse-namespace.yml b/kubernetes/apps/finesse/finesse-namespace.yml new file mode 100644 index 00000000..af0e5586 --- /dev/null +++ b/kubernetes/apps/finesse/finesse-namespace.yml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: finesse + labels: + name: finesse \ No newline at end of file