Ensure EMCO is ready before using 06/4606/1
authorTodd Malsbary <todd.malsbary@intel.com>
Thu, 6 Jan 2022 18:33:19 +0000 (10:33 -0800)
committerTodd Malsbary <todd.malsbary@intel.com>
Thu, 6 Jan 2022 18:39:19 +0000 (10:39 -0800)
Signed-off-by: Todd Malsbary <todd.malsbary@intel.com>
Change-Id: Id630706a998f72d090e52b5bc8d6dbb94725a61b

deploy/addons/addons.sh

index 28337d9..8d2f5ca 100755 (executable)
@@ -10,7 +10,14 @@ source $LIBDIR/common.sh
 BUILDDIR=${SCRIPTDIR/deploy/build}
 mkdir -p ${BUILDDIR}
 
+function is_emco_ready {
+    local -r cluster_name=${CLUSTER_NAME:-icn}
+    local -r cluster_kubeconfig="${BUILDDIR}/${cluster_name}.conf"
+    kubectl --kubeconfig=${cluster_kubeconfig} -n emco wait pod --all --for=condition=Ready --timeout=0s >/dev/null 2>&1
+}
+
 function register_emco_controllers {
+    wait_for is_emco_ready
     local -r cluster_name=${CLUSTER_NAME:-icn}
     local -r host=$(kubectl -n metal3 get cluster/${cluster_name} -o jsonpath='{.spec.controlPlaneEndpoint.host}')
     cat <<EOF >${BUILDDIR}/${cluster_name}-config.yaml