ansible.builtin.wait_for_connection (v2.7.17) — module

Waits until remote system is reachable/usable

| "added in version" 2.3 of ansible.builtin"

Authors: Dag Wieers (@dagwieers)

stableinterface | supported by core

Install Ansible via pip

Install with pip install ansible==2.7.17

Description

Waits for a total of C(timeout) seconds.

Retries the transport connection after a timeout of C(connect_timeout).

Tests the transport connection every C(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.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Wait 600 seconds for target connection to become reachable/usable
  wait_for_connection:
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Wait 300 seconds, but only start checking after 60 seconds
  wait_for_connection:
    delay: 60
    timeout: 300
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# 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:
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# 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:

Inputs

    
delay:
    default: 0
    description:
    - Number of seconds to wait before starting to poll.

sleep:
    default: 1
    description:
    - Number of seconds to sleep between checks.

timeout:
    default: 600
    description:
    - Maximum number of seconds to wait for.

connect_timeout:
    default: 5
    description:
    - Maximum number of seconds to wait for a connection to happen before closing and
      retrying.

Outputs

elapsed:
  description: The number of seconds that elapsed waiting for the connection to appear.
  returned: always
  sample: 23
  type: int