Some checks failed
Code scanning / CodeQL (push) Failing after 15s
Zulip production suite / Ubuntu 22.04 production build (push) Failing after 26s
Zulip production suite / Debian 12 production install with custom db name and user (push) Has been skipped
Zulip production suite / Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga (push) Has been skipped
Zulip production suite / Ubuntu 24.04 production install (push) Has been skipped
Zulip production suite / Ubuntu 26.04 production install (push) Has been skipped
Zulip production suite / Debian 13 production install (push) Has been skipped
Zulip production suite / 7.0 Version Upgrade (push) Has been skipped
Zulip production suite / 8.0 Version Upgrade (push) Has been skipped
Zulip production suite / 6.0 Version Upgrade (push) Has been skipped
Zulip production suite / 10.0 Version Upgrade (push) Has been skipped
Zulip production suite / 9.0 Version Upgrade (push) Has been skipped
Zulip production suite / 12.0 Version Upgrade (push) Has been skipped
Zulip production suite / 11.0 Version Upgrade (push) Has been skipped
GitHub Actions Security Analysis with zizmor / zizmor (push) Failing after 3s
Zulip CI / Debian 12 (Python 3.11, backend + documentation) (push) Failing after 26s
Zulip CI / Ubuntu 22.04 (Python 3.10, backend + frontend) (push) Failing after 3s
Zulip CI / Ubuntu 24.04 (Python 3.12, backend) (push) Failing after 25s
Zulip CI / Ubuntu 26.04 (Python 3.14, backend) (push) Failing after 25s
Zulip CI / Debian 13 (Python 3.13, backend) (push) Failing after 28s
Zulip production suite / Required jobs (push) Has been cancelled
Zulip CI / Required jobs (push) Has been cancelled
API Documentation Update Check / check-feature-level-updated (push) Has been cancelled
API Documentation Update Check / notify-if-api-docs-changed (push) Has been cancelled
48 lines
1.2 KiB
Puppet
48 lines
1.2 KiB
Puppet
# @summary Use wal-g to take daily backups of PostgreSQL
|
|
#
|
|
class zulip::postgresql_backups {
|
|
include zulip::postgresql_common
|
|
include zulip::wal_g
|
|
|
|
file { '/var/log/pg_backup_and_purge.log':
|
|
ensure => file,
|
|
owner => 'postgres',
|
|
group => 'postgres',
|
|
mode => '0644',
|
|
}
|
|
file { '/usr/local/bin/pg_backup_and_purge':
|
|
ensure => file,
|
|
owner => 'root',
|
|
group => 'postgres',
|
|
mode => '0754',
|
|
source => 'puppet:///modules/zulip/postgresql/pg_backup_and_purge',
|
|
require => [
|
|
File['/usr/local/bin/env-wal-g'],
|
|
Package[
|
|
$zulip::postgresql_common::postgresql,
|
|
],
|
|
],
|
|
}
|
|
|
|
zulip::cron { 'pg_backup_and_purge':
|
|
hour => '2',
|
|
minute => '0',
|
|
command => '/usr/local/bin/pg_backup_and_purge >/var/log/pg_backup_and_purge.log 2>&1',
|
|
user => 'postgres',
|
|
require => [
|
|
File['/var/log/pg_backup_and_purge.log'],
|
|
File['/usr/local/bin/pg_backup_and_purge'],
|
|
],
|
|
}
|
|
|
|
$postgresql_backup_directory = zulipconf('postgresql', 'backups_directory', '')
|
|
if $postgresql_backup_directory != '' {
|
|
file { $postgresql_backup_directory:
|
|
ensure => directory,
|
|
owner => 'postgres',
|
|
group => 'postgres',
|
|
mode => '0600',
|
|
}
|
|
}
|
|
}
|