Impossible de rechercher dans ma variable de sortie une chaîne spécifiée que j'utilise pour une instruction when. Le code ci-dessous est supposé vérifier la chaîne "distribute-list" dans la variable de sortie mais quand il exécute le playbook il donne l'erreur.Utilisation lorsque conditionnel pour faire correspondre la chaîne dans le registre de sortie (Ansible)
fatal: [192.168.3.252]: FAILED! => {"failed": true, "msg": "The conditional check 'output | search(\"distribute-list\")' failed. The error was: Unexpected templating type error occurred on ({% if output | search(\"distribute-list\") %} True {% else %} False {% endif %}): expected string or buffer\n\nThe error appears to have been in '/home/khibiny/test4.yml': line 26, column 5, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n - debug:\n ^here\n"}
Voici le code qui est à l'origine question:
- ios_command:
commands: show run | sec ospf
provider: "{{cli}}"
register: output
- debug:
msg: "{{output.stdout_lines}}"
when: output | search("distribute-list")
apprécierait un peu d'aide. Merci d'avance.
Merci beaucoup. Posté dans un autre forum et n'a pas pu obtenir de l'aide. Publié dans Stack Overflow et moins d'une heure plus tard, je reçois de l'aide. Merci beaucoup – techkid