| # mildly cursed |
| # run manually, change filename (but don't commit it) |
| local mastodon = import "prod.jsonnet"; |
| local kube = import "../../../kube/kube.libsonnet"; |
| |
| local filename = error "change me"; |
| |
| mastodon.namespace.Contain(kube.Job("mastodon-backup-dumper")) { |
| spec+: { |
| template+: { |
| spec+: { |
| containers_: { |
| default: kube.Container("dumper") { |
| image: "nixery.dev/shell/postgresql_13/zstd/rclone", |
| env_: mastodon.env, |
| args: ["bash", "-c", |
| "pg_dump -d postgres://$DB_USER:$DB_PASS@$DB_HOST/mastodon?sslmode=disable -v -c -C --if-exists | zstd -10 | rclone --s3-provider=Ceph --s3-env-auth=true --s3-endpoint=$S3_ENDPOINT rcat :s3:$S3_BUCKET/%s.sql.zstd" % filename |
| ] |
| } |
| } |
| } |
| } |
| } |
| } |