diff --git a/roles/database/tasks/backup.yml b/roles/database/tasks/backup.yml new file mode 100644 index 0000000000000000000000000000000000000000..e867d1608ab2e661d36023b4c21e7facefc1ca32 --- /dev/null +++ b/roles/database/tasks/backup.yml @@ -0,0 +1,20 @@ +--- + +- name: Create directory for storing MariaDB database dumps + file: path="{{ item }}" state=directory + owner=root group=root mode=700 + with_items: + - "/srv" + - "/srv/backup" + - "/srv/backup/mariadb" + +- name: Deploy include patterns to backup + template: src="backup_patterns.j2" dest="/etc/duply/main/patterns/{{ db_name }}" + owner="root" group="root" mode="700" + notify: + - Assemble Duply include patterns + +- name: Create crontab entry for creating MariaDB database dumps every day at 01:45 + cron: name="mariadb_{{ db_name }}" cron_file="mariadb_{{ db_name }}" hour=1 minute=45 + job="/usr/bin/mysqldump \"{{ db_name }}\" > /srv/backup/mariadb/\"{{ db_name }}\".sql" + state=present user=root