diff options
Diffstat (limited to 'mcp/config/states')
-rwxr-xr-x | mcp/config/states/dpdk | 3 | ||||
-rwxr-xr-x | mcp/config/states/openstack_ha | 6 | ||||
-rwxr-xr-x | mcp/config/states/openstack_noha | 4 | ||||
-rwxr-xr-x | mcp/config/states/virtual_control_plane | 6 | ||||
-rwxr-xr-x | mcp/config/states/virtual_init | 39 |
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" |