On this page
wait_for_connection – Waits until remote system is reachable/usable
New in version 2.3.
Synopsis
- Waits for a total of
timeout
seconds. - Retries the transport connection after a timeout of
connect_timeout
. - Tests the transport connection every
sleep
seconds. - This module makes use of internal ansible transport (and configuration) and the ping/win_ping module to guarantee correct end-to-end functioning.
- This module is also supported for Windows targets.
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
connect_timeout
integer
|
Default:
5
|
Maximum number of seconds to wait for a connection to happen before closing and retrying.
|
delay
integer
|
Default:
0
|
Number of seconds to wait before starting to poll.
|
sleep
integer
|
Default:
1
|
Number of seconds to sleep between checks.
|
timeout
integer
|
Default:
600
|
Maximum number of seconds to wait for.
|
Notes
Note
- This module is also supported for Windows targets.
See Also
See also
- wait_for – Waits for a condition before continuing
- The official documentation on the wait_for module.
- win_wait_for – Waits for a condition before continuing
- The official documentation on the win_wait_for module.
- win_wait_for_process – Waits for a process to exist or not exist before continuing
- The official documentation on the win_wait_for_process module.
Examples
- name: Wait 600 seconds for target connection to become reachable/usable
wait_for_connection:
- name: Wait 300 seconds, but only start checking after 60 seconds
wait_for_connection:
delay: 60
timeout: 300
# Wake desktops, wait for them to become ready and continue playbook
- hosts: all
gather_facts: no
tasks:
- name: Send magic Wake-On-Lan packet to turn on individual systems
wakeonlan:
mac: '{{ mac }}'
broadcast: 192.168.0.255
delegate_to: localhost
- name: Wait for system to become reachable
wait_for_connection:
- name: Gather facts for first time
setup:
# Build a new VM, wait for it to become ready and continue playbook
- hosts: all
gather_facts: no
tasks:
- name: Clone new VM, if missing
vmware_guest:
hostname: '{{ vcenter_ipaddress }}'
name: '{{ inventory_hostname_short }}'
template: Windows 2012R2
customization:
hostname: '{{ vm_shortname }}'
runonce:
- powershell.exe -ExecutionPolicy Unrestricted -File C:\Windows\Temp\ConfigureRemotingForAnsible.ps1 -ForceNewSSLCert -EnableCredSSP
delegate_to: localhost
- name: Wait for system to become reachable over WinRM
wait_for_connection:
timeout: 900
- name: Gather facts for first time
setup:
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
elapsed
float
|
always |
The number of seconds that elapsed waiting for the connection to appear.
Sample:
23.1
|
Status
- This module is guaranteed to have no backward incompatible interface changes going forward. [stableinterface]
- This module is maintained by the Ansible Core Team. [core]
Red Hat Support
More information about Red Hat’s support of this module is available from this Red Hat Knowledge Base article.
Authors
- Dag Wieers (@dagwieers)
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/wait_for_connection_module.html