Skip to content

fix: daily backups for discord bot#1363

Merged
bo0tzz merged 4 commits intomainfrom
fix/discord-bot-backups
Mar 4, 2026
Merged

fix: daily backups for discord bot#1363
bo0tzz merged 4 commits intomainfrom
fix/discord-bot-backups

Conversation

@bo0tzz
Copy link
Member

@bo0tzz bo0tzz commented Feb 27, 2026

No description provided.

@bo0tzz bo0tzz requested a review from a team as a code owner February 27, 2026 15:18
@github-actions
Copy link

github-actions bot commented Feb 27, 2026

--- kubernetes/apps Kustomization: flux-system/cluster-apps Kustomization: flux-system/discord-bot

+++ kubernetes/apps Kustomization: flux-system/cluster-apps Kustomization: flux-system/discord-bot

@@ -11,14 +11,19 @@

   commonMetadata:
     labels:
       app.kubernetes.io/name: discord-bot
   dependsOn:
   - name: cluster-apps-onepassword
   - name: podbump
+  - name: discord-bot-secrets
   interval: 30m
   path: ./kubernetes/apps/tools/discord-bot/app
+  postBuild:
+    substituteFrom:
+    - kind: Secret
+      name: discord-bot-db-backup-bucket
   prune: true
   retryInterval: 1m
   sourceRef:
     kind: GitRepository
     name: immich-kubernetes
   targetNamespace: tools
--- kubernetes/apps Kustomization: flux-system/cluster-apps Kustomization: flux-system/discord-bot-secrets

+++ kubernetes/apps Kustomization: flux-system/cluster-apps Kustomization: flux-system/discord-bot-secrets

@@ -0,0 +1,25 @@

+---
+apiVersion: kustomize.toolkit.fluxcd.io/v1
+kind: Kustomization
+metadata:
+  labels:
+    kustomize.toolkit.fluxcd.io/name: cluster-apps
+    kustomize.toolkit.fluxcd.io/namespace: flux-system
+  name: discord-bot-secrets
+  namespace: flux-system
+spec:
+  commonMetadata:
+    labels:
+      app.kubernetes.io/name: discord-bot-secrets
+  dependsOn:
+  - name: external-secrets-stores
+  interval: 30m
+  path: ./kubernetes/apps/tools/discord-bot/secrets
+  prune: true
+  retryInterval: 1m
+  sourceRef:
+    kind: GitRepository
+    name: immich-kubernetes
+  timeout: 5m
+  wait: true
+
--- kubernetes/apps/tools/discord-bot/app Kustomization: flux-system/discord-bot Cluster: tools/discord-bot-db

+++ kubernetes/apps/tools/discord-bot/app Kustomization: flux-system/discord-bot Cluster: tools/discord-bot-db

@@ -6,10 +6,24 @@

     app.kubernetes.io/name: discord-bot
     kustomize.toolkit.fluxcd.io/name: discord-bot
     kustomize.toolkit.fluxcd.io/namespace: flux-system
   name: discord-bot-db
   namespace: tools
 spec:
+  backup:
+    barmanObjectStore:
+      destinationPath: s3://${bucket_name}
+      endpointURL: ${api_endpoint}
+      s3Credentials:
+        accessKeyId:
+          key: id
+          name: discord-bot-db-backup-secret
+        secretAccessKey:
+          key: secret
+          name: discord-bot-db-backup-secret
+      wal:
+        compression: bzip2
+    retentionPolicy: 14d
   storage:
     size: 10Gi
     storageClass: zfs
 
--- kubernetes/apps/tools/discord-bot/app Kustomization: flux-system/discord-bot ScheduledBackup: tools/discord-bot-db-daily-backup

+++ kubernetes/apps/tools/discord-bot/app Kustomization: flux-system/discord-bot ScheduledBackup: tools/discord-bot-db-daily-backup

@@ -0,0 +1,15 @@

+---
+apiVersion: postgresql.cnpg.io/v1
+kind: ScheduledBackup
+metadata:
+  labels:
+    app.kubernetes.io/name: discord-bot
+    kustomize.toolkit.fluxcd.io/name: discord-bot
+    kustomize.toolkit.fluxcd.io/namespace: flux-system
+  name: discord-bot-db-daily-backup
+  namespace: tools
+spec:
+  cluster:
+    name: discord-bot-db
+  schedule: 0 0 18 * * *
+
--- kubernetes/apps/tools/discord-bot/secrets Kustomization: flux-system/discord-bot-secrets ExternalSecret: tools/discord-bot-db-backup-secret

+++ kubernetes/apps/tools/discord-bot/secrets Kustomization: flux-system/discord-bot-secrets ExternalSecret: tools/discord-bot-db-backup-secret

@@ -0,0 +1,26 @@

+---
+apiVersion: external-secrets.io/v1
+kind: ExternalSecret
+metadata:
+  labels:
+    app.kubernetes.io/name: discord-bot-secrets
+    cnpg.io/reload: 'true'
+    kustomize.toolkit.fluxcd.io/name: discord-bot-secrets
+    kustomize.toolkit.fluxcd.io/namespace: flux-system
+  name: discord-bot-db-backup-secret
+  namespace: tools
+spec:
+  data:
+  - remoteRef:
+      key: DISCORD_BOT_DB_BACKUP_BUCKET
+      property: access_key_id
+    secretKey: id
+  - remoteRef:
+      key: DISCORD_BOT_DB_BACKUP_BUCKET
+      property: secret_access_key
+    secretKey: secret
+  refreshInterval: 20s
+  secretStoreRef:
+    kind: ClusterSecretStore
+    name: 1p-tf
+
--- kubernetes/apps/tools/discord-bot/secrets Kustomization: flux-system/discord-bot-secrets ExternalSecret: flux-system/discord-bot-db-backup-bucket

+++ kubernetes/apps/tools/discord-bot/secrets Kustomization: flux-system/discord-bot-secrets ExternalSecret: flux-system/discord-bot-db-backup-bucket

@@ -0,0 +1,25 @@

+---
+apiVersion: external-secrets.io/v1
+kind: ExternalSecret
+metadata:
+  labels:
+    app.kubernetes.io/name: discord-bot-secrets
+    kustomize.toolkit.fluxcd.io/name: discord-bot-secrets
+    kustomize.toolkit.fluxcd.io/namespace: flux-system
+  name: discord-bot-db-backup-bucket
+  namespace: flux-system
+spec:
+  data:
+  - remoteRef:
+      key: DISCORD_BOT_DB_BACKUP_BUCKET
+      property: bucket_name
+    secretKey: bucket_name
+  - remoteRef:
+      key: DISCORD_BOT_DB_BACKUP_BUCKET
+      property: endpoint
+    secretKey: api_endpoint
+  refreshInterval: 20s
+  secretStoreRef:
+    kind: ClusterSecretStore
+    name: 1p-tf
+

zackpollard
zackpollard previously approved these changes Feb 27, 2026
@bo0tzz bo0tzz merged commit e5f3324 into main Mar 4, 2026
15 checks passed
@bo0tzz bo0tzz deleted the fix/discord-bot-backups branch March 4, 2026 16:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants