amelioration atelier

This commit is contained in:
2021-03-13 22:11:41 +01:00
parent 9faf127833
commit 21b843694e
3 changed files with 73 additions and 0 deletions

8
bad.sh Normal file
View File

@@ -0,0 +1,8 @@
#! /bin/bash
# whatever you do i will return != 0
echo Hello world
exit 42

19
fail_when.yml Normal file
View File

@@ -0,0 +1,19 @@
---
- hosts: test
user: root
gather_facts: false
tasks:
- name: send script
copy:
src: random.sh
dest: /tmp//random.sh
mode: 0750
- name: execute script
command: /tmp//random.sh
register: result
failed_when: 2|string in result.stdout
- name: display result
debug:
var: result

46
gestion_erreurs.md Normal file
View File

@@ -0,0 +1,46 @@
## 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.
#### utiliser le module debug
Utilisez le module debug pour afficher la valeur de la variable *ansible_distribution* des cibles.
#### 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
#### Implémenter un mécanisme de gestion d'exception