2025-04-09 12:10:49 -04:00

75 lines
2.0 KiB
YAML

---
- name: Check for previous backup and end host if present
ansible.builtin.include_role:
name: rhc.rear.rear_backup_check
- name: Ensure nfs-utils and rear packages are present
ansible.builtin.package:
name:
- nfs-utils
- rear
state: present
- name: Toggle IPv6 off
ansible.builtin.shell:
cmd: "echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6"
changed_when: false
- name: Disable IPv6 for future reboots
ansible.builtin.lineinfile:
path: /etc/sysctl.conf
line: "net.ipv6.conf.all.disable_ipv6 = 1"
state: present
when:
- rear_ipv6_disable_on_boot | default(false) | bool
- name: Check and define NFS server for backup
ansible.builtin.include_role:
name: rhc.rear.nfs_server_define
- name: Configure ReaR local.conf file
ansible.builtin.include_role:
name: rhc.rear.rear_local_cfg
- name: ReaR Backup
block:
- name: Execute ReaR backup
ansible.builtin.command: rear -d -v mkbackup
changed_when: true
register: rear_mkbackup
- name: Update menu item for ReaR in Grub config
ansible.builtin.include_role:
name: rhc.rear.rear_grub_cfg
- name: Archive backup log
ansible.builtin.include_tasks:
file: archive_backup_log.yml
- name: Write backup success file
ansible.builtin.include_tasks:
file: create_success_file.yml
rescue:
- name: ReaR backup failed
ansible.builtin.fail:
msg: "ReaR backup has failed. Please review the logs for any errors, and try again."
- name: Verify ReaR configuration is present
ansible.builtin.stat:
path: /etc/rear
register: rear_config_stat
- name: Create backup of ReaR configuration files
community.general.archive:
path: /etc/rear
dest: /root/etc-rear-backup-{{ rear_backup_workflow }}.tar.gz
format: gz
force_archive: true
mode: "0600"
when:
- rear_config_stat['stat']['exists'] | bool
- name: ReaR backup success
ansible.builtin.debug:
msg: "ReaR backup has completed successfully."