32 lines
878 B
YAML
32 lines
878 B
YAML
- name: Backup PostgreSQL database
|
|
community.docker.docker_container_exec:
|
|
container: synapse-postgres
|
|
docker_host: "{{ docker_host }}"
|
|
command: |
|
|
pg_dump -c
|
|
-d synapse
|
|
-U synapse
|
|
-f /var/lib/postgresql/data/synapse-dump.sql
|
|
|
|
- name: Create borg backup
|
|
command:
|
|
cmd: |
|
|
borg create
|
|
--compression=lzma
|
|
"{{ borg_repodir }}::{{ role_name }}-{now:%Y-%m-%d_%H-%M-%S}"
|
|
{{ volumes['synapse_datadir'] }}/media_store
|
|
{{ volumes['synapse_postgres_datadir'] }}/synapse-dump.sql
|
|
environment:
|
|
BORG_PASSCOMMAND: "cat {{ borg_passphrase_file }}"
|
|
become: true
|
|
|
|
- name: Prune borg repository
|
|
command:
|
|
cmd: |
|
|
borg prune
|
|
--glob-archives='{{ role_name }}-*'
|
|
{{ borg_prune_options }}
|
|
{{ borg_repodir }}
|
|
environment:
|
|
BORG_PASSCOMMAND: "cat {{ borg_passphrase_file }}"
|
|
become: true
|