computer-playbook/roles/backup-docker-to-local/tasks/main.yml

79 lines
3.0 KiB
YAML
Raw Normal View History

2023-08-07 23:02:22 +02:00
- name: install pandas system wide
community.general.pacman:
name:
- lsof
- python-pandas
state: present
when: run_once_backup_docker_to_local is not defined
2022-01-23 22:01:21 +01:00
2023-11-16 17:07:28 +01:00
- name: pull backup-docker-to-local.git
2020-12-24 14:27:31 +01:00
git:
2023-11-16 17:07:28 +01:00
repo: "https://github.com/kevinveenbirkenbach/backup-docker-to-local.git"
2023-11-17 12:35:39 +01:00
dest: "{{backup_docker_to_local_folder}}"
2020-12-24 14:27:31 +01:00
update: yes
register: git_result
ignore_errors: true
when: run_once_backup_docker_to_local is not defined
- name: Warn if repo is not reachable
debug:
msg: "Warning: Repository is not reachable."
when: git_result is defined and git_result.failed is defined and run_once_cleanup_failed_docker_backups is not defined
2020-12-24 14:27:31 +01:00
- name: configure backup-docker-to-local-everything.service
template:
src: backup-docker-to-local-everything.service.j2
dest: /etc/systemd/system/backup-docker-to-local-everything.service
notify: reload backup-docker-to-local-everything.service
when: run_once_backup_docker_to_local is not defined
2023-11-16 17:07:28 +01:00
- name: configure backup-docker-to-local.service
2023-04-15 17:06:10 +02:00
template:
2023-11-16 17:07:28 +01:00
src: backup-docker-to-local.service.j2
dest: /etc/systemd/system/backup-docker-to-local.service
notify: reload backup-docker-to-local.service
when: run_once_backup_docker_to_local is not defined
2020-12-24 14:27:31 +01:00
2023-11-16 17:07:28 +01:00
- name: configure backup-docker-to-local.timer.tpl
template: src=backup-docker-to-local.timer.j2 dest=/etc/systemd/system/backup-docker-to-local.timer
register: backup_docker_to_local_timer
2023-12-15 13:27:23 +01:00
changed_when: backup_docker_to_local_timer.changed or activate_all_timers | bool
2023-11-16 17:07:28 +01:00
notify: restart backup-docker-to-local.timer
when: run_once_backup_docker_to_local is not defined
2022-01-23 21:43:05 +01:00
- name: seed database values
command:
cmd: "python database_entry_seeder.py databases.csv {{docker_compose_project_name}} {{database_host}} {{database_databasename}} {{database_username}} {{database_password}}"
chdir: "{{backup_docker_to_local_folder}}"
when: >
docker_compose_project_name is defined or
database_host is defined or
database_databasename is defined or
database_username is defined or
database_password is defined
- name: Set file permissions for databases.csv to be readable, writable, and executable by root only
ansible.builtin.file:
path: "{{ backup_docker_to_local_folder }}databases.csv"
mode: '0700'
2022-01-23 21:43:05 +01:00
owner: root
group: root
when: >
(docker_compose_project_name is defined or
database_host is defined or
database_databasename is defined or
database_username is defined or
database_password is defined) and
run_once_backup_docker_to_local_file_permission is not defined
register: file_permission_result
- name: run the backup_docker_to_local_file_permission tasks once
set_fact:
run_once_backup_docker_to_local_file_permission: true
when: run_once_backup_docker_to_local_file_permission is not defined and file_permission_result is defined and file_permission_result.changed
- name: run the backup_docker_to_local tasks once
set_fact:
run_once_backup_docker_to_local: true
when: run_once_backup_docker_to_local is not defined