This seems like a bug, but I want to check first. I have a role that provisions VMs in an openstack tenancy. One of the tasks the role performs is to update the ansible_ssh_host variable with the ip address returned from the nova_compute or os_server module. After the role finishes the next play goes and attempts to gather facts on the updated hosts, however it keeps using the value of the inventory_hostname. This approach worked in previous versions of ansible and its nice, because I can avoid writing a dynamic inventory script.
So here is my hosts file
`
$ cat ostest
[fun]
os-test
`
And here is my playbook
`
$ cat os_test.yml