diff options
Diffstat (limited to 'utils/fetch_os_creds.sh')
-rwxr-xr-x | utils/fetch_os_creds.sh | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/utils/fetch_os_creds.sh b/utils/fetch_os_creds.sh index 3667dbe6c..c99afaca8 100755 --- a/utils/fetch_os_creds.sh +++ b/utils/fetch_os_creds.sh @@ -38,6 +38,16 @@ verify_connectivity() { error "Can not talk to $ip." } + +swap_to_public() { + if [ "$1" != "" ]; then + info "Exchanging keystone public IP in rc file to $public_ip" + sed -i "/OS_AUTH_URL/c\export OS_AUTH_URL=\'$public_ip'" $dest_path + sed -i 's/internalURL/publicURL/g' $dest_path + fi +} + + : ${DEPLOY_TYPE:=''} #Get options @@ -111,6 +121,14 @@ if [ "$installer_type" == "fuel" ]; then # but sometimes the output of endpoint-list is like this: http://172.30.9.70:8004/v1/%(tenant_id)s # Fuel virtual need a fix + #convert to v3 URL + auth_url=$(cat $dest_path|grep AUTH_URL) + if [[ -z `echo $auth_url |grep v3` ]]; then + auth_url=$(echo $auth_url |sed "s|'$|v3&|") + fi + sed -i '/AUTH_URL/d' $dest_path + echo $auth_url >> $dest_path + elif [ "$installer_type" == "apex" ]; then verify_connectivity $installer_ip @@ -126,7 +144,7 @@ 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~/\"host[1-5]\"/) {print $(i+1);break;}}' \ + | awk -F"," '{for(i=1;i<NF;i++)if($i~/\"127.0.0.1\"/) {print $(i+2);break;}}' \ | grep -oP "\d+.\d+.\d+.\d+") if [ -z $controller_ip ]; then @@ -151,6 +169,7 @@ elif [ "$installer_type" == "compass" ]; then | grep identity | awk '{print $14}') fi info "public_ip: $public_ip" + swap_to_public $public_ip elif [ "$installer_type" == "joid" ]; then @@ -182,6 +201,17 @@ elif [ "$installer_type" == "foreman" ]; then 'source keystonerc_admin;keystone endpoint-list'" \ | grep $admin_ip | sed 's/ /\n/g' | grep ^http | head -1) &> /dev/null +elif [ "$installer_type" == "daisy" ]; then + verify_connectivity $installer_ip + cluster=$(sshpass -p r00tme ssh 2>/dev/null $ssh_options root@${installer_ip} \ + "source ~/daisyrc_admin; daisy cluster-list"|grep active|head -1|awk -F "|" '{print $3}') &> /dev/null + if [ -z $cluster ]; then + echo "No active cluster detected in daisy" + exit 1 + fi + + sshpass -p r00tme scp 2>/dev/null $ssh_options root@${installer_ip}:/etc/kolla/admin-openrc.sh $dest_path &> /dev/null + else error "Installer $installer is not supported by this script" fi |