On Wed, Nov 29, 2017 at 10:40 AM, Khitai Pang <[email protected]> wrote: > bridge-utils is already installed. > > # which brctl > /usr/sbin/brctl
Ok, so the problem is probably Avocado process utility not able to call brctl. Maybe wrong PATH configuration. But anyway, Avocado should use the full path for the command. I will send a fix for that. Could you please try to edit "/usr/lib/python2.7/site-packages/virttest/utils_net.py", line 996, replacing "brctl show" by "/usr/sbin/brctl show" and check whether it works? > > # rpm -qf /usr/sbin/brctl > bridge-utils-1.5-9.el7.x86_64 > > > Regards > Khitai > > On 2017/11/29 16:40, Amador Pahim wrote: >> Missing brctl? (bridge-utils package) >> >> On Wed, Nov 29, 2017 at 6:34 AM, Khitai Pang <[email protected]> wrote: >>> Hi, >>> >>> I ran a test on a baremetal server and it failed: >>> >>> # avocado run type_specific.io-github-autotest-qemu.migrate.default.tcp >>> JOB ID : c8d2e03b75ccaad7f340bb9d82d3dcfee7add187 >>> JOB LOG : /root/avocado/job-results/job-2017-11-29T11.02-c8d2e03/job.log >>> (1/1) type_specific.io-github-autotest-qemu.migrate.default.tcp: ERROR >>> (1.42 s) >>> RESULTS : PASS 0 | ERROR 1 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 0 | >>> CANCEL 0 >>> JOB TIME : 3.21 s >>> >>> # rpm -qa | grep avocado >>> python-avocado-56.0-0.20171120git3c9dad04.el7.centos.noarch >>> python-avocado-examples-56.0-0.20171120git3c9dad04.el7.centos.noarch >>> avocado-plugins-vt-56.0-0.el7.centos.noarch >>> >>> In the test log I see the following errors: >>> >>> 2017-11-29 11:02:36,334 test L0428 ERROR| Exception raised >>> during postprocessing: Failures occurred while postprocess: >>> Postprocess: [Errno 2] No such file or directory (brctl show) >>> 2017-11-29 11:02:36,335 stacktrace L0041 ERROR| >>> 2017-11-29 11:02:36,335 stacktrace L0044 ERROR| Reproduced traceback >>> from: /usr/lib/python2.7/site-packages/avocado_vt/test.py:245 >>> 2017-11-29 11:02:36,338 stacktrace L0047 ERROR| Traceback (most recent >>> call last): >>> 2017-11-29 11:02:36,338 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/avocado_vt/test.py", line 387, in _runTest >>> 2017-11-29 11:02:36,338 stacktrace L0047 ERROR| params = >>> env_process.preprocess(self, params, env) >>> 2017-11-29 11:02:36,338 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/error_context.py", line 135, in >>> new_fn >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| return fn(*args, >>> **kwargs) >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/env_process.py", line 878, in >>> preprocess >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| process(test, >>> params, env, preprocess_image, preprocess_vm) >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/env_process.py", line 554, in >>> process >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| _call_vm_func() >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/env_process.py", line 523, in >>> _call_vm_func >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| vm_func(test, >>> vm_params, env, vm_name) >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/env_process.py", line 189, in >>> preprocess_vm >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| >>> migration_exec_cmd=params.get("migration_exec_cmd_dst")) >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/error_context.py", line 135, in >>> new_fn >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| return fn(*args, >>> **kwargs) >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/qemu_vm.py", line 2658, in create >>> 2017-11-29 11:02:36,339 stacktrace L0047 ERROR| elif >>> (utils_net.find_current_bridge(nic.ifname)[1] == >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/utils_net.py", line 1141, in >>> wrap_init >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| return func(*args, >>> **kargs) >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/utils_net.py", line 1840, in >>> find_current_bridge >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| bridge = >>> master.port_to_br(iface_name) >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/utils_net.py", line 1055, in >>> port_to_br >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| for br in >>> self.list_br(): >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/utils_net.py", line 1035, in >>> list_br >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| return >>> self.get_structure().keys() >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/virttest/utils_net.py", line 996, in >>> get_structure >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| >>> process.run(r"brctl show", verbose=False).stdout.splitlines()) >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/avocado/utils/process.py", line 1189, in >>> run >>> 2017-11-29 11:02:36,340 stacktrace L0047 ERROR| cmd_result = >>> sp.run(timeout=timeout) >>> 2017-11-29 11:02:36,341 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/avocado/utils/process.py", line 711, in >>> run >>> 2017-11-29 11:02:36,341 stacktrace L0047 ERROR| >>> self._init_subprocess() >>> 2017-11-29 11:02:36,341 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/avocado/utils/process.py", line 515, in >>> _init_subprocess >>> 2017-11-29 11:02:36,341 stacktrace L0047 ERROR| raise details >>> 2017-11-29 11:02:36,341 stacktrace L0047 ERROR| OSError: [Errno 2] No >>> such file or directory (brctl show) >>> 2017-11-29 11:02:36,341 stacktrace L0048 ERROR| >>> 2017-11-29 11:02:36,341 stacktrace L0041 ERROR| >>> 2017-11-29 11:02:36,341 stacktrace L0044 ERROR| Reproduced traceback >>> from: /usr/lib/python2.7/site-packages/avocado/core/test.py:819 >>> 2017-11-29 11:02:36,341 stacktrace L0047 ERROR| Traceback (most recent >>> call last): >>> 2017-11-29 11:02:36,341 stacktrace L0047 ERROR| File >>> "/usr/lib/python2.7/site-packages/avocado_vt/test.py", line 271, in runTest >>> 2017-11-29 11:02:36,342 stacktrace L0047 ERROR| raise >>> self.__status # pylint: disable=E0702 >>> 2017-11-29 11:02:36,342 stacktrace L0047 ERROR| OSError: [Errno 2] No >>> such file or directory (brctl show) >>> 2017-11-29 11:02:36,342 stacktrace L0048 ERROR| >>> 2017-11-29 11:02:36,342 test L0824 DEBUG| Local variables: >>> 2017-11-29 11:02:36,372 test L0827 DEBUG| -> self <class >>> 'avocado_vt.test.VirtTest'>: >>> 1-type_specific.io-github-autotest-qemu.migrate.default.tcp >>> 2017-11-29 11:02:36,373 test L0278 DEBUG| DATA >>> (filename=stdout.expected) => NOT FOUND (data sources: variant, test, file) >>> 2017-11-29 11:02:36,373 test L0278 DEBUG| DATA >>> (filename=stderr.expected) => NOT FOUND (data sources: variant, test, file) >>> 2017-11-29 11:02:36,373 test L0955 ERROR| Traceback (most recent >>> call last): >>> >>> 2017-11-29 11:02:36,373 test L0955 ERROR| File >>> "/usr/lib/python2.7/site-packages/avocado/core/test.py", line 893, in >>> _run_avocado >>> raise test_exception >>> >>> 2017-11-29 11:02:36,373 test L0955 ERROR| OSError: [Errno 2] No >>> such file or directory (brctl show) >>> >>> 2017-11-29 11:02:36,373 test L0970 ERROR| ERROR >>> 1-type_specific.io-github-autotest-qemu.migrate.default.tcp -> OSError: >>> [Errno 2] No such file or directory (brctl show) >>> 2017-11-29 11:02:36,373 test L0959 INFO | >>> 2017-11-29 11:02:36,439 sysinfo L0111 DEBUG| Not logging /proc/pci >>> (file does not exist) >>> 2017-11-29 11:02:36,590 utils_net L1139 DEBUG| Host does not support >>> OpenVSwitch: Command 'ovs-vswitchd' could not be found in any of the PATH >>> dirs: ['/bin', '/sbin', '/usr/bin', '/usr/local/sbin', '/usr/libexec', >>> '/root/bin', '/usr/sbin', '/usr/local/bin'] >>> >>> >>> Any idea? >>> >>> >>> Regards, >>> Khitai >
