Disable blocking on buildable queue (Functest)
[releng.git] / utils / fetch_os_creds.sh
index 0873a68..5010950 100755 (executable)
@@ -8,7 +8,6 @@
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
 set -o errexit
-set -o nounset
 set -o pipefail
 
 usage() {
@@ -114,7 +113,7 @@ if [ "$installer_type" == "fuel" ]; then
         ssh ${ssh_options} "${ssh_user}@${controller_ip}" \
             "sudo cat /root/keystonercv3" > "${dest_path}"
 
-        if [[ "${BUILD_TAG}" =~ "baremetal" ]]; then
+        if [[ ! "${BUILD_TAG}" =~ 'virtual' ]]; then
             ssh ${ssh_options} "${ssh_user}@${installer_ip}" \
                 "cat /etc/ssl/certs/os_cacert" > "${os_cacert}"
         fi
@@ -149,29 +148,35 @@ if [ "$installer_type" == "fuel" ]; then
     echo $auth_url >> $dest_path
 
 elif [ "$installer_type" == "apex" ]; then
-    if ! ipcalc -c $installer_ip; then
-      installer_ip=$(sudo 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
+    if [ -n "$RC_FILE_PATH" ]; then
+        echo "RC_FILE_PATH is set: ${RC_FILE_PATH}. Copying RC FILE to ${dest_path}"
+        sudo cp -f ${RC_FILE_PATH} ${dest_path}
+    else
+        if ! ipcalc -c $installer_ip; then
+            installer_ip=$(sudo 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)
-    # NOTE: This might change for bare metal deployments
-    info "... 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.v3 $dest_path
+        # The credentials file is located in the Instack VM (192.0.2.1)
+        # NOTE: This might change for bare metal deployments
+        info "... from Instack VM $installer_ip..."
+        if [ -f /root/.ssh/id_rsa ]; then
+            chmod 600 /root/.ssh/id_rsa
+        fi
 
+        if [ "${BRANCH}" == "stable/fraser" ]; then
+            rc_file=overcloudrc.v3
+        else
+            rc_file=overcloudrc
+        fi
+        sudo scp $ssh_options root@$installer_ip:/home/stack/${rc_file} $dest_path
+    fi
 elif [ "$installer_type" == "compass" ]; then
-    if [ "${BRANCH}" == "master" ]; then
-        sudo docker cp compass-tasks:/opt/openrc $dest_path &> /dev/null
-        sudo chown $(whoami):$(whoami) $dest_path
-        sudo docker cp compass-tasks:/opt/os_cacert $os_cacert
-    else
+    if [ "${BRANCH}" == "stable/danube" ]; 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;"' \
@@ -201,6 +206,10 @@ elif [ "$installer_type" == "compass" ]; then
         fi
         info "public_ip: $public_ip"
         swap_to_public $public_ip
+    else
+        sudo docker cp compass-tasks:/opt/openrc $dest_path &> /dev/null
+        sudo chown $(whoami):$(whoami) $dest_path
+        sudo docker cp compass-tasks:/opt/os_cacert $os_cacert
     fi
 
 elif [ "$installer_type" == "joid" ]; then