public function determineServerIps(\Scalr\Service\OpenStack\OpenStack $client, $server)
{
$config = \Scalr::getContainer()->config;
$publicNetworkName = 'public';
$privateNetworkName = 'private';
if (is_array($server->addresses->{$publicNetworkName})) {
foreach ($server->addresses->{$publicNetworkName} as $addr) {
if ($addr->version == 4) {
$remoteIp = $addr->addr;
break;
}
}
}
if (is_array($server->addresses->{$privateNetworkName})) {
foreach ($server->addresses->{$privateNetworkName} as $addr) {
if ($addr->version == 4) {
$localIp = $addr->addr;
break;
}
}
}
if (!$localIp) {
$localIp = $remoteIp;
}
return array('localIp' => $localIp, 'remoteIp' => $remoteIp);
}