From 2cf9b566295e7528ddf63ea6b2a70dbbb4917708 Mon Sep 17 00:00:00 2001 From: Marcus Noble Date: Thu, 14 May 2026 07:40:55 +0100 Subject: [PATCH] Added PairDrop Signed-off-by: Marcus Noble --- manifests/_apps/pairdrop.yaml | 25 +++++++++ manifests/pairdrop/pairdrop.yaml | 89 ++++++++++++++++++++++++++++++++ 2 files changed, 114 insertions(+) create mode 100644 manifests/_apps/pairdrop.yaml create mode 100644 manifests/pairdrop/pairdrop.yaml diff --git a/manifests/_apps/pairdrop.yaml b/manifests/_apps/pairdrop.yaml new file mode 100644 index 0000000..04348e5 --- /dev/null +++ b/manifests/_apps/pairdrop.yaml @@ -0,0 +1,25 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: pairdrop + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: cluster.fun + destination: + namespace: pairdrop + name: cluster-fun (v2) + source: + path: manifests/pairdrop + repoURL: "https://git.cluster.fun/AverageMarcus/cluster.fun.git" + targetRevision: HEAD + syncPolicy: + automated: {} + syncOptions: + - CreateNamespace=true + ignoreDifferences: + - kind: Secret + jsonPointers: + - /data + diff --git a/manifests/pairdrop/pairdrop.yaml b/manifests/pairdrop/pairdrop.yaml new file mode 100644 index 0000000..09d416a --- /dev/null +++ b/manifests/pairdrop/pairdrop.yaml @@ -0,0 +1,89 @@ +apiVersion: v1 +kind: Service +metadata: + name: pairdrop + namespace: pairdrop +spec: + type: ClusterIP + ports: + - port: 80 + targetPort: web + name: web + selector: + app: pairdrop +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: pairdrop + namespace: pairdrop +spec: + replicas: 1 + selector: + matchLabels: + app: pairdrop + template: + metadata: + labels: + app: pairdrop + spec: + imagePullSecrets: + - name: docker-config + priorityClassName: low + containers: + - name: web + image: ghcr.io/schlagmichdoch/pairdrop:v1.11.2 + imagePullPolicy: IfNotPresent + ports: + - containerPort: 3000 + name: web + env: + - name: RATE_LIMIT + value: "1" + - name: DONATION_BUTTON_ACTIVE + value: "false" + - name: TWITTER_BUTTON_ACTIVE + value: "false" + - name: MASTODON_BUTTON_ACTIVE + value: "false" + - name: BLUESKY_BUTTON_ACTIVE + value: "false" + - name: PRIVACYPOLICY_BUTTON_ACTIVE + value: "false" + resources: + limits: + memory: 100Mi + requests: + memory: 100Mi + livenessProbe: + httpGet: + path: / + port: + number: 3000 +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: pairdrop + namespace: pairdrop + annotations: + cert-manager.io/cluster-issuer: letsencrypt + ingress.kubernetes.io/ssl-redirect: "true" + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" +spec: + ingressClassName: nginx + tls: + - hosts: + - drop.cluster.fun + secretName: pairdrop-ingress + rules: + - host: drop.cluster.fun + http: + paths: + - path: / + pathType: ImplementationSpecific + backend: + service: + name: pairdrop + port: + number: 80