ansible.utils.public test – Test if an IP address is public
Note
This test plugin is part of the ansible.utils collection (version 5.1.2).
You might already have this collection installed if you are using the ansible package.
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install ansible.utils.
To use it in a playbook, specify: ansible.utils.public.
New in ansible.utils 2.2.0
Synopsis
- This plugin checks if the provided value is a public IP address 
Keyword parameters
This describes keyword parameters of the test. These are the values key1=value1, key2=value2 and so on in the following
examples: input is ansible.utils.public(key1=value1, key2=value2, ...) and input is not ansible.utils.public(key1=value1, key2=value2, ...)
| Parameter | Comments | 
|---|---|
| A string that represents the value against which the test is going to be performed For example:  | 
Examples
- name: Check if 8.8.8.8 is a public IP address
  ansible.builtin.set_fact:
    data: "{{ '8.8.8.8' is ansible.utils.public }}"
# TASK [Check if 8.8.8.8 is a public IP address] *********************************
# ok: [localhost] => {
#     "ansible_facts": {
#         "data": true
#     },
#     "changed": false
# }
- name: Check if 10.1.1.1 is not a public IP address
  ansible.builtin.set_fact:
    data: "{{ '10.1.1.1' is not ansible.utils.public }}"
# TASK [Check if 10.1.1.1 is not a public IP address] ******************************
# ok: [localhost] => {
#     "ansible_facts": {
#         "data": true
#     },
#     "changed": false
# }
Return Value
| Key | Description | 
|---|---|
| If jinja test satisfies plugin expression  If jinja test does not satisfy plugin expression  Returned: success | 
