Thu, May 11, 2017 at 02:40:55PM CEST, olichtne(a)redhat.com wrote:
From: Ondrej Lichtner <olichtne(a)redhat.com>
Hi all,
the long avaited patchset for Python Recipes is here.
At this point there's still quite a lot of work left, but since the current
state is functional and the tester facing API should be mostly stable I think
it's a good time to get this merged into upstream so that more people can get
involved with filling in the missing pieces and can slowly start experimenting
and porting their XML recipes.
This I know are missing:
* Recipe run summary - how the Summary should look like was described in the
running proposal document, but I didn't manage to start with the
implementation yet...
* Porting of all the old test_modules into the lnst.Tests package, so far we
only have the IcmpPing module that should still be reworked to be more
universal (ip4 and ip6 in one class). Porting test_modules should be fairly
easy, but at this point there's no guide how to do it so if you're having
trouble feel free to contact me either on irc or email.
* test_tools - we haven't even thought of these yet
* network namespaces - also didn't think about them yet, though I'm hoping this
will be simple
* Ip address and network generators as we've discussed them on the upstream
meeting
Please review and provide any comments or features I forgot that should be
added to the above list.
Regards,
Ondrej
Hi, I gave this patchet a try on rhel6.9, rhel7.3 and Fedora24/25.
I'm not able to run the example script. On all distros I see following issues.
1. Exception when controller connects to slave
2017-05-15 15:00:13 (localhost) - INFO: Started
2017-05-15 15:00:13 (localhost) - INFO: Using RPC port 9999.
2017-05-15 15:00:13 (localhost) - INFO: Waiting for connection.
2017-05-15 15:00:47 (localhost) - INFO: Recieved connection from
192.168.122.1
2017-05-15 15:00:47 (localhost) - DEBUG:
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/lnst/Slave/NetTestSlave.py", line
1037, in run
self._server_handler.accept_connection()
File "/usr/lib/python2.7/site-packages/lnst/Slave/NetTestSlave.py", line
838, in accept_connection
self._c_socket[0].handshake(self._security)
File "/usr/lib/python2.7/site-packages/lnst/Slave/SlaveSecSocket.py", line
63, in handshake
ctl_hello = self.recv_msg()
File "/usr/lib/python2.7/site-packages/lnst/Common/SecureSocket.py", line
160, in recv_msg
raise SecSocketException("Disconnected")
SecSocketException: Disconnected
2017-05-15 15:00:47 (localhost) - INFO: Waiting for connection.
2. Import failure (log from lnst-slave)
/var/cache/lnst/a913a53919458efd910b522ad05e782c6ae240fd562d5963281449b034e8fe15:1:
RuntimeWarning: Parent module 'lnst.Tests' not found while handling absolute
import
import re
/var/cache/lnst/a913a53919458efd910b522ad05e782c6ae240fd562d5963281449b034e8fe15:2:
RuntimeWarning: Parent module 'lnst.Tests' not found while handling absolute
import
import logging
/var/cache/lnst/a913a53919458efd910b522ad05e782c6ae240fd562d5963281449b034e8fe15:3:
RuntimeWarning: Parent module 'lnst.Tests' not found while handling absolute
import
from lnst.Devices import Device
/var/cache/lnst/a913a53919458efd910b522ad05e782c6ae240fd562d5963281449b034e8fe15:4:
RuntimeWarning: Parent module 'lnst.Tests' not found while handling absolute
import
from lnst.Common.Parameters import IntParam, Param, FloatParam, IpParam
Traceback (most recent call last):
File "/usr/bin/lnst-slave", line 102, in <module>
main()
File "/usr/bin/lnst-slave", line 99, in main
nettestslave.run()
File "/usr/lib/python2.7/site-packages/lnst/Slave/NetTestSlave.py", line 1046,
in run
self._process_msg(msg[1])
File "/usr/lib/python2.7/site-packages/lnst/Slave/NetTestSlave.py", line 1077,
in _process_msg
result = method(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/lnst/Slave/NetTestSlave.py", line 144,
in load_cached_module
module = imp.load_source(module_name, module_path)
File
"/var/cache/lnst/a913a53919458efd910b522ad05e782c6ae240fd562d5963281449b034e8fe15",
line 4, in <module>
from lnst.Common.Parameters import IntParam, Param, FloatParam, IpParam
File "/usr/lib/python2.7/site-packages/lnst/Common/Parameters.py", line 19, in
<module>
from lnst.Devices.RemoteDevice import RemoteDevice
ImportError: No module named RemoteDevice
I removed all previous installations of LNST, erased the /var/cache/lnst
directory and all lnst-{ctl,slave}.conf files.