# retrieving controller vip
controller_ip=$(ssh 2>/dev/null ${ssh_options} ubuntu@${installer_ip} \
- "sudo salt --out txt 'ctl01*' pillar.get _param:openstack_control_address | awk '{print \$2}'" | \
+ "sudo salt --out txt 'ctl*' pillar.get _param:openstack_control_address | awk '{print \$2; exit}'" | \
sed 's/ //g') &> /dev/null
info "Fetching rc file from controller $controller_ip..."
echo $auth_url >> $dest_path
elif [ "$installer_type" == "apex" ]; then
+ if ! ipcalc -c $installer_ip; then
+ installer_ip=$(virsh domifaddr undercloud | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')
+ if [ -z "$installer_ip" ] || ! $(ipcalc -c $installer_ip); then
+ echo "Unable to find valid IP for Apex undercloud: ${installer_ip}"
+ exit 1
+ fi
+ fi
verify_connectivity $installer_ip
# The credentials file is located in the Instack VM (192.0.2.1)