Set-OPS-Public/roles/client_backup/tasks/acces.yml
Daniel Allaire 11b5bb5733 temoins : l'instantane d'avant rasage est garde, et l'etat remis lui est compare
M4 a reconstruit Technolibre par le site qui la nomme ; les 7 jeux sont revenus
de l'instantane de 11:34, mais le premier depot d'apres reconstruction l'a chasse
par --keep-daily le jour meme : plus rien a quoi comparer.

Le depot d'avant rasage est etiquete avant-raser et garde jusqu'a la
reconstruction suivante. Le bilan dit ce qui a ete restaure et si c'est encore
au depot. setops-restaurer temoins et make temoins-etat comparent l'etat vivant
a cet instantane : une perte ou une identite changee est un ecart.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 12:48:00 -04:00

78 lines
2.2 KiB
YAML

---
# ACCES AU DEPOT DE CE NOEUD — partage par la sauvegarde (`main.yml`) et par la
# restauration (`restaurer.yml`, incluse par les roles proprietaires de l'etat).
#
# Une seule copie de ces taches : deux facons de poser une cle finiraient par diverger,
# et on ne le decouvrirait que le jour ou l'on restaure.
- name: Installer restic
ansible.builtin.apt:
name: "{{ client_backup_paquets }}"
state: present
update_cache: true
- name: Créer le répertoire des secrets Set-OPS
ansible.builtin.file:
path: /etc/setops
state: directory
owner: root
group: root
mode: "0700"
- name: Déposer la clé SSH privée de sauvegarde
ansible.builtin.copy:
content: "{{ client_backup_ssh_privkey }}"
dest: "{{ client_backup_ssh_key }}"
owner: root
group: root
mode: "0600"
no_log: true
- name: Déposer le mot de passe restic
ansible.builtin.copy:
content: "{{ client_backup_password }}\n"
dest: /etc/setops/restic.pass
owner: root
group: root
mode: "0600"
no_log: true
- name: Assurer /root/.ssh
ansible.builtin.file:
path: /root/.ssh
state: directory
owner: root
group: root
mode: "0700"
- name: Configurer l'accès SSH à la cible de sauvegarde
ansible.builtin.blockinfile:
path: /root/.ssh/config
create: true
owner: root
group: root
mode: "0600"
marker: "# {mark} SETOPS BACKUP {{ client_backup_cible }}"
block: |
Host {{ client_backup_cible }}
User {{ client_backup_utilisateur_distant }}
IdentityFile {{ client_backup_ssh_key }}
IdentitiesOnly yes
StrictHostKeyChecking accept-new
- name: Déployer l'outil de restauration (setops-restaurer)
ansible.builtin.template:
src: restaurer.sh.j2
dest: /usr/local/sbin/setops-restaurer
owner: root
group: root
mode: "0700"
# LES TEMOINS (2026-10-07) : `setops-restaurer temoins` extrait l'instantane d'avant rasage,
# puis ce comparateur le confronte a l'etat vivant. Lecture seule.
- name: Déployer le comparateur des témoins (setops-temoins)
ansible.builtin.copy:
src: setops-temoins.py
dest: /usr/local/sbin/setops-temoins
owner: root
group: root
mode: "0700"