は、単純なfailed_whenチェックを実行しようとすると、期待通りに動作していないfailed_when ::Ansibleは -
- name: JunOS Commands
junos_command:
commands:
- show version
provider:
username: zgould
register: results
failed_when: '"[12.3R12.4]" in results.stdout'
! ! デバッグ出力::
"stdout": [
"fpc0:\n--------------------------------------------------------------------------\nHostname: KC2-SWI-SalesCloset\nModel: ex2200-48p-4g\nJUNOS Base OS boot [12.3R12.4]\nJUNOS Base OS Software Suite [12.3R12.4]\nJUNOS Kernel Software Suite [12.3R12.4]\nJUNOS Crypto Software Suite [12.3R12.4]\nJUNOS Online Documentation [12.3R12.4]\nJUNOS Enterprise Software Suite [12.3R12.4]\nJUNOS Packet Forwarding Engine Enterprise Software Suite [12.3R12.4]\nJUNOS Routing Software Suite [12.3R12.4]\nJUNOS Web Management [12.3R12.4]\nJUNOS FIPS mode utilities [12.3R12.4]"
],
"stdout_lines": [
[
"fpc0:",
"--------------------------------------------------------------------------",
"Hostname: KC2-SWI-SalesCloset",
"Model: ex2200-48p-4g",
"JUNOS Base OS boot [12.3R12.4]",
"JUNOS Base OS Software Suite [12.3R12.4]",
"JUNOS Kernel Software Suite [12.3R12.4]",
"JUNOS Crypto Software Suite [12.3R12.4]",
"JUNOS Online Documentation [12.3R12.4]",
"JUNOS Enterprise Software Suite [12.3R12.4]",
"JUNOS Packet Forwarding Engine Enterprise Software Suite [12.3R12.4]",
"JUNOS Routing Software Suite [12.3R12.4]",
"JUNOS Web Management [12.3R12.4]",
"JUNOS FIPS mode utilities [12.3R12.4]"
]
]
}
私はそれはバージョンがstd.outに表示された場合、それが失敗したことを、十分に単純なことだと思います。
これは今どのように動作するはずですか?
私は「ピーナッツ」という文字列を使って試してみたが、それでもまだ通過してしまった。文字列はそこにないので、失敗する理由はありません。 – techraf