aboutsummaryrefslogtreecommitdiffstats
path: root/kubernetes/namespaces/prestashop
diff options
context:
space:
mode:
authorGravatar Joe Banks <[email protected]>2024-04-15 17:57:25 +0100
committerGravatar Joe Banks <[email protected]>2024-04-15 17:57:35 +0100
commitd54bb7e9c6843cf81023ab371b7e6e664d4fdc04 (patch)
tree2ca58f729d025344dbc6be13b3ef0787992ee3f3 /kubernetes/namespaces/prestashop
parentRemove pydis-site from nginx p99 report (diff)
Move Prestashop to Prestashop namespace
Diffstat (limited to 'kubernetes/namespaces/prestashop')
-rw-r--r--kubernetes/namespaces/prestashop/README.md12
-rw-r--r--kubernetes/namespaces/prestashop/ingress.yaml39
-rw-r--r--kubernetes/namespaces/prestashop/values.yaml49
3 files changed, 100 insertions, 0 deletions
diff --git a/kubernetes/namespaces/prestashop/README.md b/kubernetes/namespaces/prestashop/README.md
new file mode 100644
index 0000000..183f87c
--- /dev/null
+++ b/kubernetes/namespaces/prestashop/README.md
@@ -0,0 +1,12 @@
+# Prestashop
+
+This folder contains the ingress and values.yaml file for the deployment of Prestashop, used for our merch store. It additionally deploys MariaDB, used for data storage.
+
+## Deployment
+
+```
+$ helm repo add bitnami https://charts.bitnami.com/bitnami
+$ helm install prestashop bitnami/prestashop -f prestashop/values.yaml --set prestashopPassword=<admin passsword>,mariadb.auth.rootPassword=<database password>,smtpPassword=<password from mailgun>
+```
+
+The Helm chart can be located [here](https://github.com/bitnami/charts/tree/master/bitnami/prestashop), including all available parameters.
diff --git a/kubernetes/namespaces/prestashop/ingress.yaml b/kubernetes/namespaces/prestashop/ingress.yaml
new file mode 100644
index 0000000..815f571
--- /dev/null
+++ b/kubernetes/namespaces/prestashop/ingress.yaml
@@ -0,0 +1,39 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: merch-svc
+ namespace: prestashop
+spec:
+ selector:
+ app.kubernetes.io/instance: prestashop
+ app.kubernetes.io/name: prestashop
+ ports:
+ - protocol: TCP
+ port: 80
+ targetPort: 8080
+---
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+ annotations:
+ nginx.ingress.kubernetes.io/auth-tls-verify-client: "on"
+ nginx.ingress.kubernetes.io/auth-tls-secret: "kube-system/mtls-client-crt-bundle"
+ nginx.ingress.kubernetes.io/auth-tls-error-page: "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
+ name: merch
+ namespace: prestashop
+spec:
+ tls:
+ - hosts:
+ - "*.pythondiscord.com"
+ secretName: pythondiscord.com-tls
+ rules:
+ - host: merch.pythondiscord.com
+ http:
+ paths:
+ - path: /
+ pathType: Prefix
+ backend:
+ service:
+ name: merch-svc
+ port:
+ number: 80
diff --git a/kubernetes/namespaces/prestashop/values.yaml b/kubernetes/namespaces/prestashop/values.yaml
new file mode 100644
index 0000000..865393a
--- /dev/null
+++ b/kubernetes/namespaces/prestashop/values.yaml
@@ -0,0 +1,49 @@
+prestashopHost: merch.pythondiscord.com
+
+prestashopUsername: [email protected]
+prestashopPassword:
+prestashopEmail: [email protected]
+prestashopFirstName: Joe
+prestashopLastName: Banks
+
+allowEmptyPassword: false
+
+smtpHost: smtp.mailgun.org
+smtpPort: 587
+smtpProtocol: tls
+
+podAnnotations:
+ prometheus.io/scrape: "false"
+
+mariadb:
+ primary:
+ persistence:
+ enabled: true
+ storageClass: linode-block-storage-retain
+ size: 10Gi
+
+containerPorts:
+ http: 8080
+ https: 8443
+
+updateStrategy:
+ type: Recreate
+
+service:
+ type: ClusterIP
+
+ingress:
+ enabled: false
+
+persistence:
+ enabled: true
+ storageClass: "linode-block-storage-retain"
+
+ size: 10Gi
+
+metrics:
+ enabled: false
+
+ podAnnotations:
+ prometheus.io/scrape: "false"