mirror of
https://git.lapiole.org/dani/ansible-roles.git
synced 2025-05-03 18:43:16 +02:00
Update to 2025-04-30 17:00
This commit is contained in:
parent
4fb8dee0b6
commit
931d14ba3d
@ -1,6 +1,7 @@
|
||||
#!/bin/bash -e
|
||||
|
||||
{% if pg_remove_dump_after_backup %}
|
||||
rm -f /home/lbkp/pgsql/*.sql*
|
||||
{% endif %}
|
||||
rm -rf /home/lbkp/pgsql/*
|
||||
{% else %}
|
||||
rm -f /home/lbkp/pgsql/*.conf
|
||||
{% endif %}
|
||||
|
@ -4,45 +4,65 @@ set -eo pipefail
|
||||
|
||||
DEST=/home/lbkp/pgsql
|
||||
|
||||
{% if pg_dump_format == 'text' %}
|
||||
{% set dump_options = '-Fp -Cc' %}
|
||||
{% set dump_ext = 'sql' %}
|
||||
{% elif pg_dump_format == 'custom' %}
|
||||
{% set dump_options = '-Fc' %}
|
||||
{% set dump_ext = 'sqlc' %}
|
||||
{% else %}
|
||||
{% set dump_options = '-F' + pg_dump_format %}
|
||||
{% set dump_ext = 'dump' %}
|
||||
{% endif %}
|
||||
{%- if pg_dump_format == 'text' or pg_dump_format == 'plain' %}
|
||||
{%- set dump_options = '-Fp' %}
|
||||
{%- set dump_ext = 'sql' %}
|
||||
{%- elif pg_dump_format == 'custom' or pg_dump_format == 'c' %}
|
||||
{%- set dump_options = '-Fc' %}
|
||||
{%- set dump_ext = 'sqlc' %}
|
||||
{%- elif pg_dump_format == 'directory' or pg_dump_format == 'd' %}
|
||||
{%- set dump_options = '-Fd' %}
|
||||
{%- set dump_ext = '' %}
|
||||
|
||||
# Ensure postgres can reach /home/lbkp/pgsql
|
||||
setfacl -m u:postgres:x /home/lbkp
|
||||
mkdir -p ${DEST}
|
||||
chown postgres:postgres ${DEST}
|
||||
{%- else %}
|
||||
{%- set dump_options = '-F' + pg_dump_format %}
|
||||
{%- set dump_ext = 'dump' %}
|
||||
{%- endif %}
|
||||
|
||||
for DB in $(su - postgres -c "{{ (pg_version != 'default') | ternary('/usr/pgsql-' + pg_version | string,'') }}/bin/psql -d postgres -qtc 'SELECT datname from pg_database' | grep -vP '^\s+?template[01]$'")
|
||||
do
|
||||
{% if pg_compress_cmd %}
|
||||
{% if pg_compress_cmd is search('p?xz') %}
|
||||
{% set comp_ext = 'xz' %}
|
||||
{% elif pg_compress_cmd is search('p?bzip2') %}
|
||||
{% set comp_ext = 'bz2' %}
|
||||
{% elif pg_compress_cmd is search('(pi)?gz') %}
|
||||
{% set comp_ext = 'gz' %}
|
||||
{% elif pg_compress_cmd is search('lzop') %}
|
||||
{% set comp_ext = 'lzo' %}
|
||||
{% elif pg_compress_cmd is search('lz4') %}
|
||||
{% set comp_ext = 'lz4' %}
|
||||
{% elif pg_compress_cmd is search('zst') %}
|
||||
{% set comp_ext = 'zst' %}
|
||||
{% else %}
|
||||
{% set comp_ext = 'z' %}
|
||||
{% endif %}
|
||||
{%- if pg_compress_cmd is search('p?xz') %}
|
||||
{%- set comp_ext = 'xz' %}
|
||||
{%- elif pg_compress_cmd is search('p?bzip2') %}
|
||||
{%- set comp_ext = 'bz2' %}
|
||||
{%- elif pg_compress_cmd is search('(pi)?gz') %}
|
||||
{%- set comp_ext = 'gz' %}
|
||||
{%- elif pg_compress_cmd is search('lzop') %}
|
||||
{%- set comp_ext = 'lzo' %}
|
||||
{%- elif pg_compress_cmd is search('lz4') %}
|
||||
{%- set comp_ext = 'lz4' %}
|
||||
{%- elif pg_compress_cmd is search('zst') %}
|
||||
{%- set comp_ext = 'zst' %}
|
||||
{%- else %}
|
||||
{%- set comp_ext = 'z' %}
|
||||
{%- endif %}
|
||||
{%- if pg_dump_format == 'directory' or pg_dump_format == 'd' %}
|
||||
echo "Dumping $DB to $DEST/$DB"
|
||||
su - postgres -c "{{ (pg_version != 'default') | ternary('/usr/pgsql-' + pg_version | string,'') }}/bin/pg_dump {{ dump_options }} $DB -f $DEST/$DB"
|
||||
{%- else %}
|
||||
echo "Dumping $DB to $DEST/$DB.{{ dump_ext }}.{{ comp_ext }}"
|
||||
su - postgres -c "{{ (pg_version != 'default') | ternary('/usr/pgsql-' + pg_version | string,'') }}/bin/pg_dump {{ dump_options }} $DB" | /bin/nice -n 10 {{ pg_compress_cmd }} > $DEST/$DB.{{ dump_ext }}.{{ comp_ext }}
|
||||
echo "Dumping $DB schema to $DEST/$DB.schema.{{ dump_ext }}.{{ comp_ext }}"
|
||||
su - postgres -c "{{ (pg_version != 'default') | ternary('/usr/pgsql-' + pg_version | string,'') }}/bin/pg_dump --schema-only -Fp $DB" | /bin/nice -n 10 {{ pg_compress_cmd }} > $DEST/$DB.schema.{{ dump_ext }}.{{ comp_ext }}
|
||||
{%- endif %}
|
||||
|
||||
echo "Dumping $DB schema to $DEST/$DB.schema.sql.{{ comp_ext }}"
|
||||
su - postgres -c "{{ (pg_version != 'default') | ternary('/usr/pgsql-' + pg_version | string,'') }}/bin/pg_dump --schema-only -Fp $DB" | /bin/nice -n 10 {{ pg_compress_cmd }} > $DEST/$DB.schema.sql.{{ comp_ext }}
|
||||
{% else %}
|
||||
{%- if pg_dump_format == 'directory' or pg_dump_format == 'd' %}
|
||||
echo "Dumping $DB to $DEST/$DB"
|
||||
su - postgres -c "{{ (pg_version != 'default') | ternary('/usr/pgsql-' + pg_version | string,'') }}/bin/pg_dump {{ dump_options }} --compress=0 $DB -f $DEST/$DB"
|
||||
{%- else %}
|
||||
echo "Dumping $DB to $DEST/$DB.{{ dump_ext }}"
|
||||
su - postgres -c "{{ (pg_version != 'default') | ternary('/usr/pgsql-' + pg_version | string,'') }}/bin/pg_dump {{ dump_options }} $DB" > $DEST/$DB.{{ dump_ext }}
|
||||
echo "Dumping $DB schema to $DEST/$DB.schema.sql"
|
||||
su - postgres -c "{{ (pg_version != 'default') | ternary('/usr/pgsql-' + pg_version | string,'') }}/bin/pg_dump --schema-only -Fp $DB" > $DEST/$DB.schema.sql
|
||||
{%- endif %}
|
||||
{% endif %}
|
||||
|
||||
done
|
||||
{% if pg_compress_cmd %}
|
||||
echo "Dumping globals to $DEST/pg_globals.sql.{{ comp_ext }}"
|
||||
|
Loading…
x
Reference in New Issue
Block a user