Fedora Mockbuild:执行业力测试

Fedora Mockbuild: Execute karma tests

我正在尝试在构建生成期间执行 KARMA 测试用例。 KARMA 在一个端口中运行,这就是导致问题的原因。在构建过程中是否有任何我可以打开或使用的端口。我试过 BuildRequires:Firewalld,并配置了不起作用的防火墙。非常感谢任何提示或帮助。

[DEBUG] config - Loading config /builddir/build/BUILD/karma.conf.js
ERROR [runner]: There is no server listening on port 80

这里的答案可能不是你想的那样在防火墙中打开一个端口。

从您发布的错误消息来看,测试服务器似乎试图侦听端口 80,该端口禁止非 root 用户使用:

$ python -m SimpleHTTPServer 80
Traceback (most recent call last):
  File "/usr/lib64/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib64/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/usr/lib64/python2.7/SimpleHTTPServer.py", line 235, in <module>
    test()
  File "/usr/lib64/python2.7/SimpleHTTPServer.py", line 231, in test
    BaseHTTPServer.test(HandlerClass, ServerClass)
  File "/usr/lib64/python2.7/BaseHTTPServer.py", line 595, in test
    httpd = ServerClass(server_address, HandlerClass)
  File "/usr/lib64/python2.7/SocketServer.py", line 420, in __init__
    self.server_bind()
  File "/usr/lib64/python2.7/BaseHTTPServer.py", line 108, in server_bind
    SocketServer.TCPServer.server_bind(self)
  File "/usr/lib64/python2.7/SocketServer.py", line 434, in server_bind
    self.socket.bind(self.server_address)
  File "/usr/lib64/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
socket.error: [Errno 13] Permission denied

但是运行宁和root一样:

$ sudo python -m SimpleHTTPServer 80
Serving HTTP on 0.0.0.0 port 80 ...

所以我要做的第一件事就是尝试将该测试服务器连接到端口 > 1024 上的 运行。


您尝试将 firewalld 安装为构建要求,但它会安装在构建 chroot 中。您可能已经在主机上安装了 firewalld 运行ning,所以我认为您不能 运行 在 chroot 中再安装一个。

因此,如果您确实需要更改防火墙规则才能通过这些测试,那么我认为您需要在构建主机上配置防火墙。