amelioration atelier
This commit is contained in:
8
bad.sh
Normal file
8
bad.sh
Normal 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
19
fail_when.yml
Normal 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
46
gestion_erreurs.md
Normal 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
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user