I thought upgrading to shade 1.5.1 resolved our inventory issue but on second glance, openstack.py --list is not returning all the compute instances in our environment.
There are two things you should try to help us track down the problem, if you don’t mind.
First of all:
openstack server list
(python-openstackclient also uses occ, so that should let us know that the config is working right)
If that works and you see the servers, my hunch is that ansible cannot figure out the interface_ip of your server, which means our introspection code is making an assumption. So if you can try making a copy of openstack.py and editing it - find this:
if ‘interface_ip’ not in server:
continue
and delete it
If openstack.py --list works at that point, I’d really love if you’d be kind enough to send me a copy of the output of at least one of the servers so I can see what’s going on with your addresses list. (there should be nothing in the output that would be compromosing, but you migth want to scan it - feel free to send the entire output or just one server. OR - if you don’t want to do that, I can cook up some more code snippets for you to try to diagnose further.
Just to add a bit more info, we are actually using an external service which provides an openstack layer on top of our vmware infrastructure. While working with that vendor, they found that the dynamic inventory script for openstack assumes neutron networking when they were actually using nova networking. Their dev team provided a modified script to us, and we are now able to query the inventory successfully.