#This file contains the mgmt keystone API, we need the public one for our rc file
admin_ip=$(cat $dest_path | grep "OS_AUTH_URL" | sed 's/^.*\=//' | sed "s/^\([\"']\)\(.*\)\1\$/\2/g" | sed s'/\/$//')
public_ip=$(sshpass -p r00tme ssh $ssh_options root@${installer_ip} \
- "ssh ${controller_ip} 'source openrc; keystone endpoint-list'" \
+ "ssh ${controller_ip} 'source openrc; openstack endpoint list --long'" \
| grep $admin_ip | sed 's/ /\n/g' | grep ^http | head -1) &> /dev/null
#| grep http | head -1 | cut -d '|' -f 4 | sed 's/v1\/.*/v1\//' | sed 's/ //g') &> /dev/null
#NOTE: this is super ugly sed 's/v1\/.*/v1\//'OS_AUTH_URL
# The credentials file is located in the Instack VM (192.0.2.1)
# NOTE: This might change for bare metal deployments
info "Fetching rc file from Instack VM $installer_ip..."
+ if [ -f /root/.ssh/id_rsa ]; then
+ chmod 600 /root/.ssh/id_rsa
+ fi
sudo scp $ssh_options root@$installer_ip:/home/stack/overcloudrc $dest_path
elif [ "$installer_type" == "compass" ]; then
verify_connectivity $installer_ip
controller_ip=$(sshpass -p'root' ssh 2>/dev/null $ssh_options root@${installer_ip} \
'mysql -ucompass -pcompass -Dcompass -e"select * from cluster;"' \
- | awk -F"," '{for(i=1;i<NF;i++)if($i~/\"host1\"/) {print $(i+1);break;}}' \
+ | awk -F"," '{for(i=1;i<NF;i++)if($i~/\"host[1-5]\"/) {print $(i+1);break;}}' \
| grep -oP "\d+.\d+.\d+.\d+")
if [ -z $controller_ip ]; then
info "public_ip: $public_ip"
+elif [ "$installer_type" == "joid" ]; then
+ # do nothing...for the moment
+ # we can either do a scp from the jumphost or use the -v option to transmit the param to the docker file
+ echo "Do nothing, creds will be provided through volume option at docker creation for joid"
+
elif [ "$installer_type" == "foreman" ]; then
#ip_foreman="172.30.10.73"
controller="oscontroller1.opnfv.com"