aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/config/states/maas
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-09-08 23:03:56 +0200
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-10-14 01:02:04 +0200
commitebd7067904b36ae32566da63e433365948a1f973 (patch)
tree933974972756b0740bf2d28d682ab169d4e9ec8e /mcp/config/states/maas
parent3479e81a8bfa1ae15084100f2b3872ca8f1ed752 (diff)
states: Split virtual_control_plane from maas
We should eventually also support baremetal deploys without a virtualized control plane (VCP), so decouple MaaS provisioning from VCP provisioning. While at it, move "wait_for" bash function from maas state to common library file, lib.sh. Change-Id: I32c33135655cb6aceae901a5f92b51265a8c84b4 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'mcp/config/states/maas')
-rwxr-xr-xmcp/config/states/maas50
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")")"