Check out all vcp nodes are available 67/39767/1
authorMichael Polenchuk <mpolenchuk@mirantis.com>
Mon, 21 Aug 2017 13:12:29 +0000 (17:12 +0400)
committerMichael Polenchuk <mpolenchuk@mirantis.com>
Mon, 21 Aug 2017 13:12:29 +0000 (17:12 +0400)
Change-Id: I86bb27b323152440e8a885dbf867da433a288dae
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
mcp/config/states/maas

index acee8c0..0c01617 100755 (executable)
@@ -53,6 +53,17 @@ salt -C 'kvm*' state.sls libvirt
 salt -C '* and not cfg01* and not mas01*' state.apply salt
 salt -C 'kvm*' state.sls salt.control
 
+vcp_nodes=$(salt --out yaml 'kvm01*' pillar.get salt:control:cluster:internal:node | awk '/\s+\w+:$/ {gsub(/:$/, "*"); print $1}')
+
+# Check all vcp nodes are available
+rc=1
+while [ $rc -ne 0 ]; do
+  rc=0
+  for node in $vcp_nodes; do
+    salt "$node" test.ping 2>/dev/null 1>&2 || { rc=$?; break; };
+  done
+done
+
 salt -C '* and not cfg01* and not mas01*' saltutil.sync_all
 salt -C '* and not cfg01* and not mas01*' state.apply salt
 salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp