[states] baremetal_init: Parameterize kvm hosts 37/60637/2
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Sat, 4 Aug 2018 16:32:45 +0000 (18:32 +0200)
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Tue, 7 Aug 2018 04:21:10 +0000 (06:21 +0200)
Instead of hardcoding the 'kvm' hostnames, use new targeting
mechanism based on scenario-specific node names, preparing for
baremetal noha scenario integration.

JIRA: FUEL-382

Change-Id: If336aa1ac130749e4df7bffaf27a55513dd4f267
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
mcp/config/states/baremetal_init
mcp/scripts/xdf_data.sh.j2

index 3e5f659..f363e4a 100755 (executable)
@@ -11,25 +11,29 @@ 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"
+
+cluster_nodes_query="${control_nodes_query} or cmp*"
+compute_nodes_query='cmp*'
 
 # KVM, compute node prereqs
 # patch the networking module for Debian based distros
 debian_ip_source=/usr/lib/python2.7/dist-packages/salt/modules/debian_ip.py
-salt -C 'kvm* or cmp*' file.line $debian_ip_source \
+salt -C "${cluster_nodes_query}" file.line $debian_ip_source \
   content='iface = iface.lower()' mode='delete'
 
-salt -C 'kvm* or cmp*' file.replace $debian_ip_source \
+salt -C "${cluster_nodes_query}" file.replace $debian_ip_source \
   pattern="^\s{8}__salt__\['pkg.install'\]\('vlan'\)" \
   repl="\n        if not __salt__['pkg.version']('vlan'):\n            __salt__['pkg.install']('vlan')"
 
-salt -C 'kvm* or cmp*' pkg.install bridge-utils
-salt -C 'kvm*' state.apply linux.network,linux.system.kernel
-wait_for 5.0 "salt -C 'kvm* or cmp*' state.apply salt.minion"
-wait_for 5.0 "salt -C 'cmp*' state.apply linux.system,linux.network"
-wait_for 30.0 "salt -C 'kvm* or cmp*' test.ping"
+salt -C "${cluster_nodes_query}" pkg.install bridge-utils
+salt -C "${control_nodes_query}" state.apply linux.network,linux.system.kernel
+wait_for 5.0 "salt -C '${cluster_nodes_query}' state.apply salt.minion"
+wait_for 5.0 "salt -C '${compute_nodes_query}' state.apply linux.system,linux.network"
+wait_for 30.0 "salt -C '${cluster_nodes_query}' test.ping"
 
-salt -C 'kvm* or cmp*' system.reboot
-wait_for 90.0 "salt -C 'kvm* or cmp*' test.ping"
+salt -C "${cluster_nodes_query}" system.reboot
+wait_for 90.0 "salt -C '${cluster_nodes_query}' test.ping"
 
-salt -C 'kvm* or cmp*' state.apply linux,ntp
-salt -C 'kvm* or cmp*' pkg.upgrade refresh=False
+salt -C "${cluster_nodes_query}" state.apply linux,ntp
+salt -C "${cluster_nodes_query}" pkg.upgrade refresh=False
index bc01077..c0629fe 100644 (file)
@@ -89,6 +89,7 @@ OPNFV_BRIDGES=(
 export CLUSTER_DOMAIN={{ conf.cluster.domain }}
 cluster_states={{ bash_arr(conf.cluster.states) }}
 virtual_nodes={{ filter_nodes('virtual') }}
+control_nodes_query={{ filter_nodes(['baremetal', 'virtual'], True, ['control']) }}
 base_image={{ arch.base_image }}
 
 # Serialize vnode data as '<name0>,<ram0>,<vcpu0>|<name1>,<ram1>,<vcpu1>[...]'