44 lines
1.1 KiB
YAML
44 lines
1.1 KiB
YAML
---
|
|
- name: "Install required software on clients"
|
|
become: true
|
|
ansible.builtin.package:
|
|
name: "{{ item }}"
|
|
state: "present"
|
|
with_items:
|
|
- "acl"
|
|
|
|
- name: "Create backup user on clients"
|
|
become: true
|
|
ansible.builtin.user:
|
|
name: "{{ duplicity_client_user }}"
|
|
|
|
- name: "Deploy server ssh keys to clients"
|
|
become: true
|
|
ansible.posix.authorized_key:
|
|
user: "{{ duplicity_client_user }}"
|
|
state: "present"
|
|
key: "{{ item.duplicity_server_user_key }}"
|
|
with_items: "{{ groups['duplicityclient'] | flatten(levels=1) }}"
|
|
|
|
- name: "Set default ACLs on backup data"
|
|
become: true
|
|
ansible.posix.acl:
|
|
path: "{{ item }}"
|
|
entity: "{{ duplicity_client_user }}"
|
|
etype: "user"
|
|
permissions: r-X
|
|
default: true
|
|
state: present
|
|
recursive: true
|
|
with_items: "{{ duplicity_client_backup_paths }}"
|
|
|
|
- name: "Set read ACLs on existing backup data"
|
|
become: true
|
|
ansible.posix.acl:
|
|
path: "{{ item }}"
|
|
entity: "{{ duplicity_client_user }}"
|
|
etype: "user"
|
|
permissions: r-X
|
|
state: present
|
|
recursive: true
|
|
with_items: "{{ duplicity_client_backup_paths }}"
|