diff options
Diffstat (limited to 'mcp/config/states/maas')
-rwxr-xr-x | mcp/config/states/maas | 50 |
1 files changed, 2 insertions, 48 deletions
diff --git a/mcp/config/states/maas b/mcp/config/states/maas index 67ef6d559..df11d5b13 100755 --- a/mcp/config/states/maas +++ b/mcp/config/states/maas @@ -1,18 +1,8 @@ #!/bin/bash +# shellcheck disable=SC1090 set -x -function wait_for() { - local total_attempts=$1; shift - local cmdstr=$* - local sleep_time=10 - echo "[NOTE] Waiting for cmd to return success: ${cmdstr}" - # shellcheck disable=SC2034 - for attempt in $(seq "${total_attempts}"); do - # shellcheck disable=SC2015 - eval "${cmdstr}" && break || true - echo -n '.'; sleep "${sleep_time}" - done -} +source "$(dirname "${BASH_SOURCE[0]}")/../../scripts/lib.sh" # Wait for MaaS commissioning/deploy to finish, retry on failure function maas_fixup() { @@ -80,40 +70,4 @@ salt -C 'mas01*' pillar.item\ maas:region:admin:username \ maas:region:admin:password -# KVM, compute node prereqs (libvirt first), VCP deployment salt -C '* and not cfg01* and not mas01*' saltutil.sync_all - -salt -C 'kvm*' pkg.install bridge-utils -salt -C 'kvm*' state.apply linux.network -salt -C 'kvm*' system.reboot -wait_for 90 "! salt 'kvm*' test.ping | tee /dev/stderr | fgrep -q 'Not connected'" - -salt -C '* and not cfg01* and not mas01*' state.apply linux,ntp - -salt -C 'kvm*' state.sls libvirt - -salt -C '* and not cfg01* and not mas01*' state.apply salt -salt -C 'kvm*' saltutil.sync_all -wait_for 10 "! salt -C 'kvm*' state.sls salt.control | " \ - "tee /dev/stderr | fgrep -q 'Not connected'" - -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 || { rc=$?; break; }; - done - sleep 5 -done - -wait_for 10 "salt -C '* and not cfg01* and not mas01*' saltutil.sync_all" -wait_for 10 "salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' state.apply salt" -wait_for 10 "! salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' state.apply linux,ntp | " \ - "tee /dev/stderr | fgrep -q 'Not connected'" - -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")")" |