Je suis assez nouveau dans l'utilisation d'Ansible et j'ai lu aquí et google et je n'ai pas encore trouvé de réponse.
Mon scénario est le suivant : j'ai un utilisateur sur un serveur mais 2 ou 3 clés publiques différentes qui doivent être placées dans le fichier authorized_keys.
Je peux avec succès supprimer toutes les clés, ou ajouter toutes les clés avec ce script :
---
- hosts: all
tasks:
- name: update SSH keys
authorized_key:
user: <user>
key: "{{ lookup('file', item) }}"
state: present
#exclusive: yes
with_fileglob:
- ../files/pub_keys/*.pub
Avec le present
flag il lit et ajoute toutes les clés. Avec le drapeau absent
il supprime toutes les clés énumérées.
Le problème est que j'ai une ancienne clé qui est seulement sur le serveur et je veux la supprimer/écraser et pour les déploiements futurs écraser toutes les clés non autorisées qui pourraient être sur le serveur et pas dans mon playbook.
Avec le exclusive
flag, il ne prend que la dernière clé et l'ajoute. Ce serait fantastique s'il bouclait et ajoutait toutes les clés de manière récurrente. S'il y a un moyen de faire cela dans Ansible, je ne l'ai pas trouvé.
Existe-t-il un moyen de boucler sur les fichiers de pubs et d'utiliser la fonction exclusive
en même temps ?