summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQiLiang <liangqi1@huawei.com>2016-12-29 19:27:30 -0800
committerQiLiang <liangqi1@huawei.com>2016-12-29 19:37:14 -0800
commitec95c66f771cc93801a3f73db30f42c184054cac (patch)
treeeb38135a8be5beebf0ca85ff1c7357908d0188b4
parentea88357b19d39c981f819a8437154433518568fd (diff)
Fix compass public vip fetch bug in Newton
Error log: More than one endpoint exists with the name 'identity'. fetch_os_creds.info: public_ip: Change-Id: Ie7c8eeec5e84de4c38a17b4e718be65f36c562a7 Signed-off-by: QiLiang <liangqi1@huawei.com>
-rwxr-xr-xutils/fetch_os_creds.sh14
1 files changed, 11 insertions, 3 deletions
diff --git a/utils/fetch_os_creds.sh b/utils/fetch_os_creds.sh
index 47fbc91dc..ecc571dba 100755
--- a/utils/fetch_os_creds.sh
+++ b/utils/fetch_os_creds.sh
@@ -144,9 +144,17 @@ elif [ "$installer_type" == "compass" ]; then
sshpass -p root scp 2>/dev/null $ssh_options root@${installer_ip}:~/admin-openrc.sh $dest_path &> /dev/null
info "This file contains the mgmt keystone API, we need the public one for our rc file"
- public_ip=$(sshpass -p root ssh $ssh_options root@${installer_ip} \
- "ssh ${controller_ip} 'source /opt/admin-openrc.sh; openstack endpoint show identity '" \
- | grep publicurl | awk '{print $4}')
+ grep "OS_AUTH_URL.*v2" $dest_path > /dev/null 2>&1
+ if [ $? -eq 0 ] ; then
+ public_ip=$(sshpass -p root ssh $ssh_options root@${installer_ip} \
+ "ssh ${controller_ip} 'source /opt/admin-openrc.sh; openstack endpoint show identity '" \
+ | grep publicurl | awk '{print $4}')
+ else
+ public_ip=$(sshpass -p root ssh $ssh_options root@${installer_ip} \
+ "ssh ${controller_ip} 'source /opt/admin-openrc.sh; \
+ openstack endpoint list --interface public --service identity '" \
+ | grep identity | awk '{print $14}')
+ fi
info "public_ip: $public_ip"