49 lines
1.3 KiB
Markdown
49 lines
1.3 KiB
Markdown
## Gestion des erreurs
|
|
|
|
**Tâche**: exploiter, comprendre la réussite / échec d'un module
|
|
|
|
**Condition**: très souvent ;)
|
|
|
|
**Norme**: module debug, clause failed_when, register ...
|
|
|
|
**Ressources**
|
|
* https://docs.ansible.com/ansible/latest/playbooks_error_handling.html
|
|
* support slide 51
|
|
|
|
### Ignorer les erreurs
|
|
|
|
Écrivez un playbook permettant:
|
|
|
|
- de déployer le script bad.sh
|
|
- de l'exécuter
|
|
- d'afficher le message "fin d'exécution du playbook"
|
|
|
|
Faites en sorte que les erreurs d'exécution du playbook soient ignorées.
|
|
|
|
Voir failed_when.yml
|
|
|
|
#### utiliser le module debug
|
|
|
|
Utilisez le module debug pour afficher la valeur de la variable *ansible_distribution* des cibles.
|
|
|
|
```bash
|
|
ansible cibles -u formation -o -m debug -a "var=ansible_distribution"
|
|
```
|
|
#### failed_when: définir soi-même les conditions de réussite / échec d'un module
|
|
|
|
Écrivez un playbook permettant:
|
|
|
|
- de déployer le script random.sh
|
|
- de l'exécuter
|
|
- d'afficher le message "fin d'exécution du playbook"
|
|
|
|
la tâche d'exécution doit échouer uniquement si le script renvoie la valeur 2.
|
|
|
|
#### register: Exploiter le résultat de l'exécution d'un module
|
|
|
|
Complétez le playbook précédemment mis au point afin qu'il:
|
|
|
|
- exécute une tâche de votre choix uniquement si le script a renvoyée la valeur 1
|
|
|
|
|
|
Solutions: voir branche "solution" |