after some testing, this doesn't work. private_ip_address and public_ip_address need to be method names, otherwise the string private_ip_address is stored as the IP address of the vm.