.. _ansible.utils.resolvable_test: ************************ ansible.utils.resolvable ************************ **Test if an IP or name can be resolved via /etc/hosts or DNS** Version added: 2.2.0 .. contents:: :local: :depth: 1 Synopsis -------- - This plugin checks if the provided IP address of host name can be resolved using /etc/hosts or DNS Parameters ---------- .. raw:: html
Parameter Choices/Defaults Configuration Comments
host
string / required
A string that represents the IP address or the host name
For example: "docs.ansible.com", 127.0.0.1, or ::1

Examples -------- .. code-block:: yaml #### Simple examples - name: Check if docs.ansible.com is resolvable or not ansible.builtin.set_fact: data: "{{ 'docs.ansible.com' is ansible.utils.resolvable }}" # TASK [Check if docs.ansible.com is resolvable or not] ********************************** # ok: [localhost] => { # "ansible_facts": { # "data": true # }, # "changed": false # } - name: Set host name variables ansible.builtin.set_fact: good_name: www.google.com bad_name: foo.google.com - name: Assert good_name's resolvability assert: that: "{{ 'www.google.com' is ansible.utils.resolvable }}" - name: Assert bad_name's resolvability assert: that: "{{ 'foo.google.com' is not ansible.utils.resolvable }}" # TASK [Assert good_name's resolvability] ************************************************ # ok: [localhost] => { # "changed": false, # "msg": "All assertions passed" # } # TASK [Assert bad_name's resolvability] ************************************************* # ok: [localhost] => { # "changed": false, # "msg": "All assertions passed" # } - name: Set ip variables ansible.builtin.set_fact: ipv4_localhost: "127.0.0.1" ipv6_localhost: "::1" - name: Assert ipv4_localhost's resolvability assert: that: "{{ ipv4_localhost is ansible.utils.resolvable }}" - name: Assert ipv6_localhost's resolvability assert: that: "{{ ipv6_localhost is ansible.utils.resolvable }}" # TASK [Assert ipv4_localhost's resolvability] ******************************************* # ok: [localhost] => { # "changed": false, # "msg": "All assertions passed" # } # TASK [Assert ipv6_localhost's resolvability] ******************************************* # ok: [localhost] => { # "changed": false, # "msg": "All assertions passed" # } Return Values ------------- Common return values are documented `here `_, the following are the fields unique to this test: .. raw:: html
Key Returned Description
data
-
If jinja test satisfies plugin expression true
If jinja test does not satisfy plugin expression false



Status ------ Authors ~~~~~~~ - Priyam Sahoo (@priyamsahoo) .. hint:: Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.