70 lines
1.9 KiB
YAML
70 lines
1.9 KiB
YAML
---
|
|
- name: installer age et lftp
|
|
ansible.builtin.apt:
|
|
name:
|
|
- age
|
|
- lftp
|
|
state: present
|
|
update_cache: true
|
|
cache_valid_time: 3600
|
|
|
|
- name: créer le répertoire de la clé age
|
|
ansible.builtin.file:
|
|
path: "{{ sauvegardes_age_dir }}"
|
|
state: directory
|
|
owner: root
|
|
group: root
|
|
mode: "0700"
|
|
|
|
- name: générer la paire de clés age (si absente)
|
|
ansible.builtin.command:
|
|
cmd: "age-keygen -o {{ sauvegardes_age_cle }}"
|
|
creates: "{{ sauvegardes_age_cle }}"
|
|
|
|
- name: restreindre les permissions de la clé privée age
|
|
ansible.builtin.file:
|
|
path: "{{ sauvegardes_age_cle }}"
|
|
owner: root
|
|
group: root
|
|
mode: "0600"
|
|
|
|
- name: lire la clé publique age (pour affichage, jamais la clé privée)
|
|
ansible.builtin.command:
|
|
cmd: "grep -oP '(?<=public key: )age1\\S+' {{ sauvegardes_age_cle }}"
|
|
register: sauvegardes_age_pub
|
|
changed_when: false
|
|
|
|
- name: déployer le script de sauvegarde
|
|
ansible.builtin.template:
|
|
src: sauvegarde-dedibackup.sh.j2
|
|
dest: /usr/local/sbin/sauvegarde-dedibackup.sh
|
|
owner: root
|
|
group: root
|
|
mode: "0700"
|
|
|
|
- name: déployer le service systemd
|
|
ansible.builtin.template:
|
|
src: sauvegarde-dedibackup.service.j2
|
|
dest: /etc/systemd/system/sauvegarde-dedibackup.service
|
|
mode: "0644"
|
|
notify: recharger systemd
|
|
|
|
- name: déployer le timer systemd
|
|
ansible.builtin.template:
|
|
src: sauvegarde-dedibackup.timer.j2
|
|
dest: /etc/systemd/system/sauvegarde-dedibackup.timer
|
|
mode: "0644"
|
|
notify: recharger systemd
|
|
|
|
- name: appliquer les changements systemd
|
|
ansible.builtin.meta: flush_handlers
|
|
|
|
- name: activer et démarrer le timer de sauvegarde
|
|
ansible.builtin.systemd:
|
|
name: sauvegarde-dedibackup.timer
|
|
enabled: true
|
|
state: started
|
|
|
|
- name: afficher la clé publique age (à connaître, jamais la privée)
|
|
ansible.builtin.debug:
|
|
msg: "Clé publique age du serveur : {{ sauvegardes_age_pub.stdout }}"
|