aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/config/states
diff options
context:
space:
mode:
Diffstat (limited to 'mcp/config/states')
-rwxr-xr-xmcp/config/states/dpdk3
-rwxr-xr-xmcp/config/states/openstack_ha6
-rwxr-xr-xmcp/config/states/openstack_noha4
-rwxr-xr-xmcp/config/states/virtual_control_plane6
-rwxr-xr-xmcp/config/states/virtual_init39
5 files changed, 56 insertions, 2 deletions
diff --git a/mcp/config/states/dpdk b/mcp/config/states/dpdk
index 281b78fed..efe1dafe5 100755
--- a/mcp/config/states/dpdk
+++ b/mcp/config/states/dpdk
@@ -14,3 +14,6 @@ source "$(dirname "${BASH_SOURCE[0]}")/../../scripts/lib.sh"
salt -I 'nova:compute' alternatives.set ovs-vswitchd /usr/lib/openvswitch-switch-dpdk/ovs-vswitchd-dpdk
salt -I 'nova:compute' service.restart openvswitch-switch
+
+# Set datapath type to netdev for public bridge
+salt -I 'nova:compute' cmd.run 'ovs-vsctl set bridge br-floating datapath_type=netdev'
diff --git a/mcp/config/states/openstack_ha b/mcp/config/states/openstack_ha
index d7d8cbd45..0f6858f1e 100755
--- a/mcp/config/states/openstack_ha
+++ b/mcp/config/states/openstack_ha
@@ -51,11 +51,15 @@ wait_for 3.0 "salt -I 'cinder:volume' state.sls cinder"
salt -I 'neutron:server' state.sls neutron -b 1
salt -I 'neutron:gateway' state.sls neutron.gateway
if salt 'cmp*' match.pillar 'neutron:compute:backend:engine:ovn' \
- --out yaml --static | grep -q -e "true" ; then
+ --out yaml --static | grep -q -e 'true' ; then
salt -I 'neutron:compute' state.sls neutron.compute
fi
salt -I 'nova:compute' state.sls nova
+if salt -I 'nova:compute' match.grain 'cpuarch:aarch64' \
+ --out yaml --static | grep -q -e 'true' ; then
+ salt -C 'G@cpuarch:aarch64 and I@nova:compute' state.sls armband
+fi
salt -I 'barbican:server' state.sls barbican -b 1
salt -I 'barbican:client' state.sls barbican
diff --git a/mcp/config/states/openstack_noha b/mcp/config/states/openstack_noha
index 9a42d4813..44360e5e9 100755
--- a/mcp/config/states/openstack_noha
+++ b/mcp/config/states/openstack_noha
@@ -45,6 +45,10 @@ salt -I 'neutron:server' state.sls neutron
salt -I 'neutron:compute' state.sls neutron
salt -I 'nova:compute' state.sls nova
+if salt -I 'nova:compute' match.grain 'cpuarch:aarch64' \
+ --out yaml --static | grep -q -e 'true' ; then
+ salt -C 'G@cpuarch:aarch64 and I@nova:compute' state.sls armband
+fi
salt -I 'barbican:server' state.sls barbican
salt -I 'barbican:client' state.sls barbican
diff --git a/mcp/config/states/virtual_control_plane b/mcp/config/states/virtual_control_plane
index 8ea5047ae..ef6ce59c3 100755
--- a/mcp/config/states/virtual_control_plane
+++ b/mcp/config/states/virtual_control_plane
@@ -27,13 +27,17 @@ if [ "${ERASE_ENV}" -eq 1 ]; then
fi
# KVM libvirt first, VCP deployment
+if salt -C 'kvm*' match.grain 'cpuarch:aarch64' \
+ --out yaml --static | grep -q -e 'true' ; then
+ wait_for 5.0 "salt -C 'G@cpuarch:aarch64 and kvm*' state.sls armband"
+fi
wait_for 5.0 "salt -C 'kvm*' state.sls libvirt"
salt -C 'kvm* or cmp*' state.apply salt
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(/:$/, "*"); printf "%s ", $1}')
+ awk '/\s+\w+[[:digit:]]+:$/ {gsub(/:$/, "*"); printf "%s ", $1}')
# Check all vcp nodes are available
wait_for 25.0 "(for n in ${vcp_nodes}; do salt \${n} test.ping 2>/dev/null || exit; done)"
diff --git a/mcp/config/states/virtual_init b/mcp/config/states/virtual_init
new file mode 100755
index 000000000..47d69cd8a
--- /dev/null
+++ b/mcp/config/states/virtual_init
@@ -0,0 +1,39 @@
+#!/bin/bash -e
+# shellcheck disable=SC1090
+##############################################################################
+# Copyright (c) 2018 Mirantis Inc., Enea AB and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+CI_DEBUG=${CI_DEBUG:-0}; [[ "${CI_DEBUG}" =~ (false|0) ]] || set -x
+
+# shellcheck disable=SC1090
+source "$(dirname "${BASH_SOURCE[0]}")/../../scripts/lib.sh"
+source "$(dirname "${BASH_SOURCE[0]}")/../../scripts/xdf_data.sh"
+
+CI_DEBUG=${CI_DEBUG:-0}; [[ "${CI_DEBUG}" =~ (false|0) ]] || set -x
+# shellcheck disable=SC2154,SC2086,SC2116
+LOCAL_VIRT_NODES=$(echo ${virtual_nodes[*]}) # unquoted to filter space
+NODE_MASK="${LOCAL_VIRT_NODES// /|}"
+
+wait_for 5.0 "salt-call state.sls reclass,linux.network,salt.minion \
+ exclude='[{id: reclass_packages}, {id: /etc/reclass/reclass-config.yml}]'"
+wait_for 3.0 "salt -C 'E@^(${NODE_MASK}).*' saltutil.refresh_pillar"
+
+# NOTE: domain name changes are not yet supported without a clean redeploy
+
+# Init specific to VMs on FN (all for virtual, mas for baremetal)
+wait_for 3.0 "(for n in ${LOCAL_VIRT_NODES}; do salt -C \${n}.* test.ping || exit; done)"
+
+wait_for 3.0 "salt -C 'E@^(${NODE_MASK}).*' state.sls linux.system,linux.storage"
+wait_for 2.0 "salt -C 'E@^(${NODE_MASK}).*' state.sls linux.network"
+salt -C "E@^(${NODE_MASK}).*" system.reboot
+wait_for 90.0 "salt -C 'E@^(${NODE_MASK}).*' test.ping"
+wait_for 3.0 "salt -C 'E@^(${NODE_MASK}).*' pkg.upgrade refresh=False dist_upgrade=True"
+wait_for 3.0 "salt -C 'E@^(${NODE_MASK}).*' saltutil.sync_all"
+wait_for 3.0 "salt -C 'E@^(${NODE_MASK}).*' state.apply salt"
+
+wait_for 3.0 "salt -C 'E@^(${NODE_MASK}).*' state.sls ntp"