- name: setup delegated hsot hosts: localhost gather_facts: false tasks: - add_host: name: delegatetome ansible_host: 127.0.0.4 - name: ensure we dont use orig host vars if delegated one does not define them hosts: testhost gather_facts: false connection: local tasks: - name: force current host to use winrm set_fact: ansible_connection: winrm - name: this should fail (missing winrm or unreachable) ping: ignore_errors: true ignore_unreachable: true register: orig - name: ensure prev failed assert: that: - orig is failed or orig is unreachable - name: this will only fail if we take orig host ansible_connection instead of defaults ping: delegate_to: delegatetome - name: ensure plugin specific vars are properly used hosts: testhost gather_facts: false tasks: - name: set unusable ssh args set_fact: ansible_host: 127.0.0.1 ansible_connection: ssh ansible_ssh_common_args: 'MEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE' ansible_connection_timeout: 5 - name: fail to ping with bad args ping: register: bad_args_ping ignore_unreachable: true - debug: var=bad_args_ping - name: ensure prev failed assert: that: - bad_args_ping is failed or bad_args_ping is unreachable - name: this should work by ignoring the bad ags for orig host ping: delegate_to: delegatetome