2016-06-30 8 views
0

Ich versuche, die KARMA-Testfälle während der Build-Generation auszuführen. KARMA läuft in einem Port und das verursacht das Problem. Gibt es irgendwelche, die ich öffnen oder den Port während des Build-Prozesses verwenden konnte? Ich habe BuildRequires: Firewalld ausprobiert und die Firewall konfiguriert, die nicht funktioniert. Jeder Hinweis oder Hilfe wird sehr geschätzt.Fedora Mockbuild: Führen Sie Karma-Tests

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

Antwort

1

Die Antwort könnte nicht einen Port in der Firewall zu öffnen, wie Sie denken.

Von der Fehlermeldung Sie auf dem Laufenden, so scheint es, dass der Test-Server auf Port zu hören versucht 80, die an Nicht-Root-Benutzer verboten ist:

$ 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 

Aber läuft das gleiche wie root:

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

das erste, was ich tun würde, wäre, dass die Test-Server zu versuchen und auf einem Port laufen> 1024.


Sie haben versucht, Firewall als Build-Anforderung zu installieren, aber das wird in der Build-Chroot installiert. Sie haben wahrscheinlich bereits Firewall auf dem Host-Rechner laufen, also glaube ich nicht, dass Sie noch einen innerhalb der Chroot laufen können.

Wenn Sie wirklich die Firewall-Regeln für diese Tests ändern müssen, müssen Sie die Firewall auf dem Build-Host konfigurieren.