Add playbook to backup specific directories and upload to S3
parent
e654daa52a
commit
004ba3b791
@ -0,0 +1,16 @@
|
|||||||
|
---
|
||||||
|
- name: Backup Directories.
|
||||||
|
hosts: servers
|
||||||
|
become: true
|
||||||
|
|
||||||
|
pre_tasks:
|
||||||
|
- name: Include vault variables.
|
||||||
|
ansible.builtin.include_vars: '../{{ vault_file }}'
|
||||||
|
tags: [always]
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- ansible.builtin.include_role:
|
||||||
|
name: backup_directory
|
||||||
|
with_items: "{{ backup_directories }}"
|
||||||
|
loop_control:
|
||||||
|
loop_var: backup
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
---
|
||||||
|
galaxy_info:
|
||||||
|
author: Cian Hatton
|
||||||
|
namespace: chatton
|
||||||
|
description: Backup directories
|
||||||
|
license: MIT
|
||||||
|
min_ansible_version: "2.1"
|
||||||
|
galaxy_tags: []
|
||||||
|
platforms:
|
||||||
|
- name: Debian
|
||||||
|
versions:
|
||||||
|
- all
|
||||||
|
dependencies: []
|
||||||
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
- name: Determine backup timestamp.
|
||||||
|
ansible.builtin.set_fact: backup_time="{{ ansible_date_time.iso8601 }}"
|
||||||
|
|
||||||
|
- name: Compress Directory
|
||||||
|
community.general.archive:
|
||||||
|
path: "{{ backup.path }}"
|
||||||
|
dest: /tmp/backup.tar.gz
|
||||||
|
|
||||||
|
- name: Upload backups to S3
|
||||||
|
amazon.aws.aws_s3:
|
||||||
|
s3_url: "{{ docker_backup_aws_s3_url }}"
|
||||||
|
bucket: "{{ docker_backup_aws_s3_bucket }}"
|
||||||
|
object: "{{ backup.s3_name }}-{{ backup_time }}.tar.gz"
|
||||||
|
src: /tmp/backup.tar.gz
|
||||||
|
aws_access_key: "{{ docker_backup_aws_s3_aws_access_key }}"
|
||||||
|
aws_secret_key: "{{ docker_backup_aws_s3_aws_secret_key }}"
|
||||||
|
region: "{{ docker_backup_aws_s3_region }}"
|
||||||
|
mode: put
|
||||||
|
permission: "{{ docker_backup_aws_s3_permissions }}"
|
||||||
Loading…
Reference in New Issue