Ensure node is ready before trying to label it.
Related-Prod: PRODX-2894
Change-Id: I26610b6dba586b0b4b9d8d36403739718a09d6b8
diff --git a/de/heat-templates/scripts/instance_boot.sh b/de/heat-templates/scripts/instance_boot.sh
index 54e2d61..8f0e9c6 100644
--- a/de/heat-templates/scripts/instance_boot.sh
+++ b/de/heat-templates/scripts/instance_boot.sh
@@ -177,7 +177,7 @@
function wait_for_node {
function retry_wait {
- kubectl --kubeconfig /etc/kubernetes/admin.conf get nodes |awk '{print $1}' |grep -q $(hostname)
+ kubectl --kubeconfig /etc/kubernetes/admin.conf get nodes |grep -w Ready |awk '{print $1}' |grep -q $(hostname)
}
retry $NODE_DEPLOYMENT_RETRIES "The node didn't come up." retry_wait
}
@@ -272,8 +272,10 @@
$functions_override
function set_node_labels {
-
- kubectl patch node $(hostname) -p "{\"metadata\": ${NODE_METADATA}}"
+ function set_node_labels_retry {
+ kubectl patch node $(hostname) -p "{\"metadata\": ${NODE_METADATA}}"
+ }
+ retry 10 "Labeling node failed." set_node_labels
}
case "$NODE_TYPE" in