Files
nixos/manifests/gitea/postgres.yaml

131 lines
2.8 KiB
YAML

apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: postgres-user-gitea
spec:
target:
name: postgres-user-gitea
deletionPolicy: Delete
template:
type: kukbernetes.io/basic-auth
data:
username: |-
{{ .dbuser }}
password: |-
{{ .dbpass }}
secretStoreRef:
name: bitwarden-login
kind: ClusterSecretStore
data:
- secretKey: dbuser
remoteRef:
key: df47ed61-61d7-4273-b81c-b3a9000de00e
property: username
- secretKey: dbpass
remoteRef:
key: df47ed61-61d7-4273-b81c-b3a9000de00e
property: password
---
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: postgres
spec:
instances: 1
enablePDB: false
storage:
size: 100Gi
primaryUpdateStrategy: unsupervised
managed:
roles:
- name: gitea
ensure: present
comment: Gitea DB user
login: true
superuser: false
passwordSecret:
name: postgres-user-gitea
plugins:
- name: barman-cloud.cloudnative-pg.io
isWALArchiver: true
parameters:
barmanObjectName: k3sbackup-objectstore
---
apiVersion: barmancloud.cnpg.io/v1
kind: ObjectStore
metadata:
name: k3sbackup-objectstore
spec:
configuration:
destinationPath: "s3://k3sbackup/postgres-gitea"
endpointURL: "http://s3.thehellings.lan:9000/"
s3Credentials:
accessKeyId:
name: k3sbackup-secret
key: username
secretAccessKey:
name: k3sbackup-secret
key: password
wal:
compression: gzip
retentionPolicy: "30d"
---
apiVersion: postgresql.cnpg.io/v1
kind: ScheduledBackup
metadata:
name: postgres-backup
spec:
immediate: true # Create one when this is added to the cluster
schedule: "0 1 0 * * *" # 1AM, nightly
backupOwnerReference: self
cluster:
name: postgres
method: plugin
pluginConfiguration:
name: barman-cloud.cloudnative-pg.io
---
apiVersion: external-secrets.io/v1
kind: ExternalSecret
metadata:
name: k3sbackup-externalsecret
spec:
target:
name: k3sbackup-secret
deletionPolicy: Delete
template:
type: Opaque
data:
username: |-
{{ .username }}
password: |-
{{ .password }}
data:
- secretKey: username
sourceRef:
storeRef:
name: bitwarden-login
kind: ClusterSecretStore
remoteRef:
key: 685b29c6-9264-4e60-ba4a-b2ea005a5d7b
property: username
- secretKey: password
sourceRef:
storeRef:
name: bitwarden-login
kind: ClusterSecretStore
remoteRef:
key: 685b29c6-9264-4e60-ba4a-b2ea005a5d7b
property: password
---
apiVersion: postgresql.cnpg.io/v1
kind: Database
metadata:
name: database-gitea
spec:
name: gitea
owner: gitea
cluster:
name: postgres