e81bbf9b8f
Recently, a user reported that the bigip_facts module was failing with the error received exception: object of type 'itertools.imap' has no len() This reported was occurring at line 1657 of the bigip_facts module bug report is here https://github.com/F5Networks/f5-ansible/issues/25 Upon further investigation, the map function for returning the specified includes was returning an iterator, and calling len() on an iterator does not work. I believe this problem was caused by part of the Python 3.x effort insofar as the inclusion of this line https://github.com/ansible/ansible/blob/devel/lib/ansible/module_utils/basic.py#L143 seems to affect our usage of map(), probably for the better anyway, and we need to change our expectations in our module's code to no longer assume a list, but instead assume an iterator. After trawling through the module_utils/basic code, I think a list comprehension is more appropriate here anyway, so I'm changing it to be that. The affected user reported it works this way, and my own testing on 2.2.0 supports that. |
||
---|---|---|
.. | ||
__init__.py | ||
bigip_device_dns.py | ||
bigip_device_ntp.py | ||
bigip_device_sshd.py | ||
bigip_facts.py | ||
bigip_gtm_datacenter.py | ||
bigip_gtm_virtual_server.py | ||
bigip_gtm_wide_ip.py | ||
bigip_irule.py | ||
bigip_monitor_http.py | ||
bigip_monitor_tcp.py | ||
bigip_node.py | ||
bigip_pool.py | ||
bigip_pool_member.py | ||
bigip_routedomain.py | ||
bigip_selfip.py | ||
bigip_sys_db.py | ||
bigip_virtual_server.py | ||
bigip_vlan.py |