Ansible

Quelques trucs et astuces Ansible en plus de ce qui peut déjà être trouvé dans la documentation officielle.

Utilisation systématique de ansible_managed dans les templates

Les modifications manuelles de fichiers gérés par Ansible sont susceptibles d’être écrasées à tout moment. Pour éviter cela il est recommandé de commenter systématiquement vos templates avec ansible_managed .

Pour cela on combinera la variable ansible_managed avec le filtre comment . Par exemple sur un script shell :

#!/usr/bin/env bash
{{ ansible_managed | comment }}

echo "Hello, world!"

Afin d’être plus explicite il est aussi possible de modifier la valeur de ansible_manage dans ansible.cfg comme suit :

…
ansible_managed = This file is managed by ansible. Manual changes are likely to be overwritten !
…

Conservation de la structure de répertoires avec les modules file et template

En plus d’être plus claire (à mon humble avis) la conservation de la structure de répertoires cible avec les modules file et template permet de ne pas avoir à répéter le chemin deux fois.

Par exemple :

template:
  src : '{{ item }}.j2'
  dest: '/{{ item }}'
loop:
- 'etc/apt/sources.list'
- 'etc/ansible/ansible.cfg'

Liens intéressants