00_core.ymlΒΆ

---
- name: πŸ“‚ Include dependencies
  include_role:
    name: "{{ sys_ctl_cln_bkps_dependency }}"
  loop:
    - sys-ctl-alm-compose
    - sys-lock
  loop_control:
    loop_var: sys_ctl_cln_bkps_dependency

- name: πŸ“¦ install lsof
  package_install: # nocheck: package-install only hosts that clean backups run this role
    id: lsof

- name: πŸ“¦ install psutil via pip
  include_role:
    name: sys-pip-install
  vars:
    package_name: psutil
    package_state: present
    global_install: true

- name: "βœ… Ensure backups root exists before the first backup run"
  ansible.builtin.file:
    path: "{{ DIR_BACKUPS }}"
    state: directory

- include_role:
    name: sys-service
  vars:
    system_service_timer_enabled: "{{ SYS_CTL_CLN_BKPS_TIMER_ENABLED | bool }}"
    system_service_on_calendar: "{{ SYS_SCHEDULE_CLEANUP_BACKUPS }}"
    system_service_tpl_on_failure: "{{ SYS_SERVICE_ON_FAILURE_COMPOSE }}"
    system_service_tpl_exec_start: "{{ system_service_script_exec }} --backups-folder-path {{ DIR_BACKUPS }} --maximum-backup-size-percent {{ SIZE_PERCENT_MAXIMUM_BACKUP
      }}"
    system_service_tpl_exec_start_pre: '{{ BIN_LOCK }} {{ SYS_SERVICE_GROUP_MANIPULATION | join(" ")  }} --ignore {{ SYS_SERVICE_GROUP_CLEANUP | join(" ") }} --timeout
      "{{ SYS_TIMEOUT_BACKUP_SERVICES }}"'
    system_service_copy_files: true
    system_service_force_linear_sync: false

    system_service_tpl_timeout_start_sec: "{{ '120s' if ((DOCKER_IN_CONTAINER|bool) and (MODE_DEBUG|bool)) else omit }}"
    system_service_tpl_runtime: "{{ '300s' if ((DOCKER_IN_CONTAINER|bool) and (MODE_DEBUG|bool)) else omit }}"

- meta: flush_handlers

- include_tasks: utils/once/flag.yml