I’m trying to create a task that verifies a variable is a valid IP address. The task should pass if it is valid, and fail if it’s not.
I feel like I’m close, but not quite there with this:
`
- name: Verify IP address
assert: { that: “{{ requested_ip | ipaddr }}” }
always_run: yes
`
This task fails properly when the value is not an IP (ipaddr filter returns False), but if it IS an IP it tries to evaluate the ip itself and throws an error (ipaddr returns the IP itself):
TASK [Verify IP address] **************************** fatal: [localhost]: FAILED! => {“failed”: true, “msg”: “The conditional check ‘10.1.4.232 != False’ failed. The error was: error while evaluating conditional (10.1.4.232 != False): float object has no element 4”}
Any suggestions?
Thanks,
Ryan