diff options
author | Alexandru Avadanii <Alexandru.Avadanii@enea.com> | 2017-12-31 19:35:17 +0100 |
---|---|---|
committer | Alexandru Avadanii <Alexandru.Avadanii@enea.com> | 2018-01-07 04:04:36 +0100 |
commit | 3f559299c232bbb7639d02243c95d6256cdf94d4 (patch) | |
tree | 57e4c95ba2c637bf139dcbc7be523b71756acf02 /mcp/config/states/virtual_control_plane | |
parent | fac41836e91dd56696c3a435bfdbc7adf53899e2 (diff) |
lib.sh: Extend wait_for function to catch no resp
wait_for function should be able to also check for minions that did
not return or not respond, in addition to the return code.
To keep it backwards compatible, condition the new check on the max
attempt number being specified in decimal format (e.g. '10.0' unlike
old '10').
Change-Id: If2512cf9121cdd795638efe7362ef0485d4e8d91
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'mcp/config/states/virtual_control_plane')
-rwxr-xr-x | mcp/config/states/virtual_control_plane | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/mcp/config/states/virtual_control_plane b/mcp/config/states/virtual_control_plane index c7768f746..0607b318b 100755 --- a/mcp/config/states/virtual_control_plane +++ b/mcp/config/states/virtual_control_plane @@ -27,11 +27,10 @@ if [ "${ERASE_ENV}" -eq 1 ]; then fi # KVM libvirt first, VCP deployment -wait_for 5 "salt -C 'kvm*' state.sls libvirt" +wait_for 5.0 "salt -C 'kvm*' state.sls libvirt" salt -C 'kvm* or cmp*' state.apply salt -wait_for 10 "! salt -C 'kvm*' state.sls salt.control | " \ - "tee /dev/stderr | grep -Fq 'Not connected'" +wait_for 10.0 "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}') @@ -49,7 +48,7 @@ while [ $rc -ne 0 ] && [ ${attempt} -lt ${total_attempts} ]; do ((attempt+=1)) done -wait_for 10 "salt -C '* and not cfg01* and not mas01*' saltutil.sync_all" +wait_for 10.0 "salt -C '* and not cfg01* and not mas01*' saltutil.sync_all" # Propagate APT proxy config created by curtin on baremetal nodes to VCP VMs APT_CONF_D_CURTIN='/etc/apt/apt.conf.d/90curtin-aptproxy' @@ -61,8 +60,7 @@ salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' cp.get_file \ wait_for 10 "salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' state.apply salt" wait_for 10 "salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' service.force_reload salt-minion" -wait_for 10 "! salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' state.apply linux,ntp | " \ - "tee /dev/stderr | grep -Eq '(Not connected|No response)'" +wait_for 10.0 "salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' state.apply linux,ntp" wait_for 10 "salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' ssh.set_auth_key ${SUDO_USER} \ $(awk 'NR==1{print $2}' "$(eval echo "~${SUDO_USER}/.ssh/authorized_keys")")" @@ -71,7 +69,6 @@ wait_for 10 "salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' ssh.set_auth_key ${SUDO_US salt -C 'prx*' file.write /etc/dhcp/dhclient-enter-hooks.d/no-default-route \ args='unset new_routers' salt -C 'prx*' system.reboot -wait_for 30 "! salt -C 'prx*' test.ping | " \ - "tee /dev/stderr | grep -Fq 'Not connected'" +wait_for 30.0 "salt -C 'prx*' test.ping" salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' pkg.upgrade refresh=False |