playbook
Un fichier YAML qui décrit l'état dans lequel une ou plusieurs machines doivent être : les hôtes visés, puis une liste de tâches, chacune appelant un module avec l'état qu'il doit établir, et éventuellement des handlers qui s'exécutent quand une tâche a changé quelque chose. Il se lit comme une affirmation, pas comme un script : « nginx est installé », et non « installe nginx ». La différence se voit à la deuxième exécution : un script répète chaque action, un playbook répond changed=0 parce que chaque module a trouvé son état déjà vrai. L'idée fausse : ce serait un outil pour parcs de machines. Il gagne sa place sur une seule, comme une documentation qui ne peut pas dériver du serveur puisque le serveur est construit à partir d'elle. ansible-playbook site.yml --check --diff montre ce qu'une exécution changerait sans rien changer. Écrit pour une seule exécution, c'est un script avec plus de fichiers.
Aussi écrit : play, site.yml
