-if [[ "$INSTALLER_IP" == "none" ]] ; then
- instack_mac=$(sudo virsh domiflist instack | awk '/default/{print $5}')
- INSTALLER_IP=$(/usr/sbin/arp -e | grep ${instack_mac} | awk '{print $1}')
-fi
-
-if [[ "$COMPUTE_IP" == "none" ]] ; then
- COMPUTE_IP=$(sudo ssh $ssh_opts $INSTALLER_IP \
- "source stackrc; \
- nova show $COMPUTE_HOST \
- | awk '/ ctlplane network /{print \$5}'")
-fi
+get_compute_host_info() {
+ (
+ change_to_doctor_user
+
+ # get computer host info which VM boot in
+ export COMPUTE_HOST=$(openstack server show $VM_NAME | \
+ grep "OS-EXT-SRV-ATTR:host" | awk '{ print $4 }' |
+ awk -F '.' '{print $1}')
+ )
+ if [[ "$INSTALLER_TYPE" == "apex" ]] ; then
+ COMPUTE_USER=${COMPUTE_USER:-heat-admin}
+ if [[ "$INSTALLER_IP" == "none" ]] ; then
+ instack_mac=$(sudo virsh domiflist instack | awk '/default/{print $5}')
+ INSTALLER_IP=$(/usr/sbin/arp -e | grep ${instack_mac} | awk '{print $1}')
+ fi
+ COMPUTE_IP=$(sudo ssh $ssh_opts $INSTALLER_IP \
+ "source stackrc; \
+ openstack server show $COMPUTE_HOST \
+ | awk '/ ctlplane network /{print \$5}'")
+ elif [[ "$INSTALLER_TYPE" == "local" ]] ; then
+ COMPUTE_USER=${COMPUTE_USER:-$(whoami)}
+ COMPUTE_IP=$(getent hosts "$COMPUTE_HOST" | awk '{ print $1 }')
+ if [[ -z "$COMPUTE_IP" ]]; then
+ echo "ERROR: Could not resolve $COMPUTE_HOST. Either manually set COMPUTE_IP or enable DNS resolution."
+ exit 1
+ fi
+ fi