Je rencontre des problèmes lors de l'exécution d'un playbook complet, car certains des faits dont dépendent les jeux ultérieurs sont modifiés dans des jeux antérieurs, mais l'évolutivité ne met pas à jour les faits à mi-parcours.Est-il possible d'extraire des faits mis à jour au milieu d'un playbook?
Courir ansible somehost -m setup
quand tout Playbook commence contre un nouveau VPS:
"ansible_selinux": {
"status": "disabled"
},
Mon PlayBook contient un jeu qui installe SELinux et redémarre le serveur (alors que celui ansible wait_for), et une tâche plus tard utilise la when: ansible_selinux.status != 'disabled'
conditionnelle. Cependant, même si SELinux est maintenant installé et appliqué (ce qui nécessitait le redémarrage), les données relatives au système indiquent toujours que SELinux est désactivé, de sorte que la condition échoue et que la tâche est ignorée.
Exécution du PlayBook à nouveau bien sûr fonctionne parce que les faits sont mis à jour et retourner maintenant:
"ansible_selinux": {
"config_mode": "enforcing",
"mode": "enforcing",
"policyvers": 28,
"status": "enabled",
"type": "targeted"
}
Est-il possible de faire des faits rafraîchir la mi-PlayBook? Peut-être que le hack est à set_fact
sur ansible_selinux.status moi-même après le redémarrage?
Mise à jour: Eh bien, c'était trop facile, grâce à BruceP j'ajouté cette tâche à chercher des faits mis à jour à la fin de mon SELinux jouer
- name: SELinux - Force ansible to regather facts
setup: filter='ansible_selinux'