]> git.immae.eu Git - perso/Immae/Projets/Puppet.git/blob - modules/profile/templates/postgresql/backup_psql.sh.erb
Pause replication before the postgresql backup
[perso/Immae/Projets/Puppet.git] / modules / profile / templates / postgresql / backup_psql.sh.erb
1 #!/bin/bash
2
3 set -euo pipefail
4
5 resume_replication() {
6 /usr/bin/psql -h <%= @pg_path %><%= @pg_port_arg %> -c "SELECT pg_wal_replay_resume();" >/dev/null || echo "impossible to resume replication"
7 }
8
9 trap resume_replication EXIT
10
11 /usr/bin/psql -h <%= @pg_path %><%= @pg_port_arg %> -c "SELECT pg_wal_replay_pause();" >/dev/null || (echo "impossible to pause replication" && false)
12
13 /usr/bin/pg_dumpall -h <%= @pg_path %><%= @pg_port_arg %> -f <%= @pg_backup_path %>/$(date -Iseconds).sql