commit 40cecb25ce8b9b163e38edb91be715cca1d9f7ce
Author: Radek Pazdera <rpazdera(a)redhat.com>
Date: Mon Sep 23 13:27:42 2013 +0200
SlaveMachineParser: Adding rpc_port parameter
This patch adds support for the rpc_port parameter to slave machine
configuration files, which was erroneously dropped during the
refactoring of the parsers.
Issue #42.
Signed-off-by: Radek Pazdera <rpazdera(a)redhat.com>
Signed-off-by: Jiri Pirko <jiri(a)resnulli.us>
lnst/Controller/Machine.py | 11 ++++++++---
lnst/Controller/NetTestController.py | 3 +--
lnst/Controller/SlavePool.py | 16 ++++++++++++----
3 files changed, 21 insertions(+), 9 deletions(-)
---
diff --git a/lnst/Controller/Machine.py b/lnst/Controller/Machine.py
index 4ac7d2f..428323e 100644
--- a/lnst/Controller/Machine.py
+++ b/lnst/Controller/Machine.py
@@ -21,6 +21,7 @@ import signal
from time import sleep
from xmlrpclib import Binary
from pprint import pprint, pformat
+from lnst.Common.Config import lnst_config
from lnst.Common.Logs import log_exc_traceback
from lnst.Common.XmlRpc import ServerProxy, ServerException
from lnst.Common.NetUtils import MacPool, normalize_hwaddr
@@ -43,7 +44,7 @@ class Machine(object):
deconfiguration, and running commands.
"""
- def __init__(self, m_id, hostname=None, libvirt_domain=None):
+ def __init__(self, m_id, hostname=None, libvirt_domain=None, rpcport=None):
self._id = m_id
self._hostname = hostname
self._connection = None
@@ -56,6 +57,11 @@ class Machine(object):
if libvirt_domain:
self._domain_ctl = VirtDomainCtl(libvirt_domain)
+ if rpcport:
+ self._port = rpcport
+ else:
+ self._port = lnst_config.get_option('environment',
'rpcport')
+
self._msg_dispatcher = None
self._mac_pool = None
@@ -226,9 +232,8 @@ class Machine(object):
""" Returns machine's id as defined in the recipe
"""
return self._id
- def set_rpc(self, dispatcher, port):
+ def set_rpc(self, dispatcher):
self._msg_dispatcher = dispatcher
- self._port = port
def get_mac_pool(self):
if self._mac_pool:
diff --git a/lnst/Controller/NetTestController.py b/lnst/Controller/NetTestController.py
index 2d562e0..acef4aa 100644
--- a/lnst/Controller/NetTestController.py
+++ b/lnst/Controller/NetTestController.py
@@ -202,8 +202,7 @@ class NetTestController:
address = socket.gethostbyname(machine.get_hostname())
self._log_ctl.add_slave(m_id, address)
- port = lnst_config.get_option('environment', 'rpcport')
- machine.set_rpc(self._msg_dispatcher, port)
+ machine.set_rpc(self._msg_dispatcher)
machine.set_mac_pool(self._mac_pool)
machine.set_network_bridges(self._network_bridges)
diff --git a/lnst/Controller/SlavePool.py b/lnst/Controller/SlavePool.py
index 33dca41..9304ed9 100644
--- a/lnst/Controller/SlavePool.py
+++ b/lnst/Controller/SlavePool.py
@@ -102,8 +102,8 @@ class SlavePool:
available = False
hostname = machine_spec["params"]["hostname"]
- if "rpcport" in machine_spec:
- port = machine_spec["params"]["rpcport"]
+ if "rpc_port" in machine_spec["params"]:
+ port = machine_spec["params"]["rpc_port"]
else:
port = lnst_config.get_option('environment',
'rpcport')
@@ -130,7 +130,11 @@ class SlavePool:
for param in machine_xml_data["params"]:
name = str(param["name"])
value = str(param["value"])
- machine_spec["params"][name] = value
+
+ if name == "rpc_port":
+ machine_spec["params"][name] = int(value)
+ else:
+ machine_spec["params"][name] = value
mandatory_params = ["hostname"]
for p in mandatory_params:
@@ -245,7 +249,11 @@ class SlavePool:
if "libvirt_domain" in pm["params"]:
libvirt_domain = pm["params"]["libvirt_domain"]
- machine = Machine(tm_id, hostname, libvirt_domain)
+ rpcport = None
+ if "rpc_port" in pm["params"]:
+ rpcport = pm["params"]["rpc_port"]
+
+ machine = Machine(tm_id, hostname, libvirt_domain, rpcport)
used = []
if_map = self._map["machines"][tm_id]["interfaces"]
Show replies by date