Move Minecraft PostgreSQL to CloudNativePG

This commit is contained in:
feedc0de committed 2026-10-25 12:56:00 +01:00
1 parent 4b0afad165
commit f73bc60cba
9 files changed
+73 -13

No files matched your search

@@ -19,6 +19,7 @@ patches:
- name: pg-dump
env:
- {name: BACKUP_TARGET, value: mcserver}
- {name: PGHOST, value: paper-postgresql}
- {name: PGHOST, value: paper-cnpg-rw}
- {name: PGUSER, value: postgres}
- name: PGPASSWORD
valueFrom: {secretKeyRef: {name: paper-postgres, key: postgres-password}}
valueFrom: {secretKeyRef: {name: paper-cnpg-superuser, key: password}}
@@ -0,0 +1,18 @@
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: paper-cnpg
namespace: mcserver
spec:
instances: 1
enableSuperuserAccess: true
imageName: ghcr.io/cloudnative-pg/postgresql:18.6-standard-trixie
bootstrap:
initdb:
database: minecraft
owner: minecraft
secret:
name: paper-cnpg-bootstrap
storage:
size: 8Gi
storageClass: rook-ceph-block-ec
@@ -0,0 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- cluster.yaml
@@ -0,0 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- service.yaml
@@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: paper-postgresql
namespace: mcserver
spec:
type: ClusterIP
ports:
- name: postgresql
port: 5432
protocol: TCP
targetPort: 5432
selector:
cnpg.io/cluster: paper-cnpg
cnpg.io/instanceRole: primary
+1
View File
@@ -106,6 +106,7 @@ resources:
- mumble-namespace.yaml
- mumble-postgresql.yaml
- minecraft-project.yaml
- minecraft-cnpg.yaml
- minecraft-paper.yaml
- minecraft-atm10.yaml
- bitnami-helm-repo.yaml
+21
View File
@@ -0,0 +1,21 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: minecraft-cnpg
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: "0"
spec:
project: minecraft
source:
repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
path: apps/minecraft-postgresql/cluster
destination:
server: https://kubernetes.default.svc
namespace: mcserver
syncPolicy:
automated:
enabled: true
prune: true
selfHeal: true
+5 -11
View File
@@ -5,23 +5,17 @@ metadata:
namespace: argocd
spec:
project: minecraft
sources:
- repoURL: registry-1.docker.io/bitnamicharts
chart: postgresql
targetRevision: 18.12.4
helm:
releaseName: paper
valueFiles: [$values/apps/minecraft-postgresql/values.yaml]
- repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
ref: values
source:
repoURL: https://code.brunner.ninja/feedc0de/homelab-gitops.git
targetRevision: main
path: apps/minecraft-postgresql/service
destination:
server: https://kubernetes.default.svc
namespace: mcserver
syncPolicy:
automated:
enabled: true
prune: false
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
+2
View File
@@ -31,6 +31,8 @@ spec:
kind: Deployment
- group: apps
kind: StatefulSet
- group: postgresql.cnpg.io
kind: Cluster
- group: networking.k8s.io
kind: NetworkPolicy
- group: policy