I have a case (IP with a space in a string)
vars:
requested_ip: '1 .2.3.4' # note a space in a string
tasks:
- name: Verify IP address
assert: { that: "{{ requested_ip | ipaddr }}" }
always_run: yes
--------------
ok: [18.130.41.1] => {
"changed": false,
"failed": false,
"msg": "All assertions passed"
W dniu piątek, 29 lipca 2016 17:51:14 UTC+2 użytkownik Ryan Groten napisał:
>
> Yep that was it, thanks a lot!
>
> On Thursday, 28 July 2016 15:45:29 UTC-6, Kai Stian Olstad wrote:
>>
>> On 28. juli 2016 23:19, Ryan Groten wrote:
>> > 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?
>>
>> According to the documentation, "that" has the same format as "when".
>> Since you shouldn't use curly brackets in "when" , you should probably
>> not use them in "that".
>>
>> Try
>> assert: { that: requested_ip | ipaddr }
>> and see if that fixes it.
>>
>> --
>> Kai Stian Olstad
>>
>
--
You received this message because you are subscribed to the Google Groups
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/8231a772-f978-4f0c-87d7-6d9460b48585%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.