Ansible bigip_命令模块

Ansible bigip_命令模块,ansible,f5,Ansible,F5,有没有一种方法可以在条件语句未满足时忽略“wait_for”抛出的错误 在我的游戏中,我有一个任务来查看这对中的哪个LTM是活动的,当它点击待机时就会失败(这是有意义的) 但是如果你能忽略这个错误就好了 Traceback (most recent call last): File "/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py", line 691, in <module> main() File "/tmp

有没有一种方法可以在条件语句未满足时忽略“wait_for”抛出的错误

在我的游戏中,我有一个任务来查看这对中的哪个LTM是活动的,当它点击待机时就会失败(这是有意义的)

但是如果你能忽略这个错误就好了

Traceback (most recent call last):
  File "/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py", line 691, in <module>
    main()
  File "/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py", line 680, in main
    results = mm.exec_module()
  File "/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py", line 617, in exec_module
    result = manager.exec_module()
  File "/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py", line 409, in exec_module
    changed = self.execute()
  File "/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py", line 498, in execute
    raise FailedConditionsError(errmsg, failed_conditions)
ansible.module_utils.network.common.parsing.FailedConditionsError: One or more conditional statements have not been satisfied.

fatal: [x.x.x.x -> localhost]: FAILED! => {
    "changed": false, 
    "module_stderr": "Traceback (most recent call last):\n  File \"/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py\", line 691, in <module>\n    main()\n  File \"/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py\", line 680, in main\n    results = mm.exec_module()\n  File \"/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py\", line 617, in exec_module\n    result = manager.exec_module()\n  File \"/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py\", line 409, in exec_module\n    changed = self.execute()\n  File \"/tmp/ansible_yIW5Ex/ansible_module_bigip_command.py\", line 498, in execute\n    raise FailedConditionsError(errmsg, failed_conditions)\nansible.module_utils.network.common.parsing.FailedConditionsError: One or more conditional statements have not been satisfied.\n", 
    "module_stdout": "", 
    "msg": "MODULE FAILURE", 
    "rc": 1

请查看模块文档——有一个默认为“all”的“match”指令,这意味着在“wait_for”部分中,所有检查都应为true。您可以显式地将其设置为“any”,如果满足“wait_for”中的至少1个条件,则会使您的运行通过

您还有一个“重试次数”和“间隔”标志,分别告诉模块要进行多少次重试以及它们之间的距离

我希望这有帮助

干杯

  - name : Checking which LTM is active....
    bigip_command:
      server: "{{ inventory_hostname }}"
      user: "{{ remote_username }}"
      password: "{{ remote_passwd }}"
      commands:
        - "tmsh show sys failover"
        - "tmsh list /sys management-ip  | grep -o x.x.x.x"
      wait_for:
        - result[0] contains active
      validate_certs: no
    delegate_to: localhost