mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-31 14:33:54 -04:00
Reload should listen on the same interface as the main server
This commit is contained in:
parent
f2519c96ea
commit
159e62ad37
@ -347,12 +347,12 @@ class ReloadServer(Thread):
|
||||
|
||||
daemon = True
|
||||
|
||||
def __init__(self):
|
||||
def __init__(self, listen_on):
|
||||
Thread.__init__(self, name='ReloadServer')
|
||||
self.reload_handler = ReloadHandler()
|
||||
self.loop = ServerLoop(
|
||||
create_http_handler(websocket_handler=self.reload_handler),
|
||||
opts=Options(shutdown_timeout=0.1, listen_on='127.0.0.1', port=0))
|
||||
opts=Options(shutdown_timeout=0.1, listen_on=(listen_on or '127.0.0.1'), port=0))
|
||||
self.loop.LISTENING_MSG = None
|
||||
self.notify_reload = self.reload_handler.notify_reload
|
||||
self.ping = self.reload_handler.ping
|
||||
@ -376,7 +376,7 @@ class ReloadServer(Thread):
|
||||
self.join(self.loop.opts.shutdown_timeout)
|
||||
# }}}
|
||||
|
||||
def auto_reload(log, dirs=frozenset(), cmd=None, add_default_dirs=True):
|
||||
def auto_reload(log, dirs=frozenset(), cmd=None, add_default_dirs=True, listen_on=None):
|
||||
if Watcher is None:
|
||||
raise NoAutoReload('Auto-reload is not supported on this operating system')
|
||||
fpath = os.path.abspath(__file__)
|
||||
@ -388,7 +388,7 @@ def auto_reload(log, dirs=frozenset(), cmd=None, add_default_dirs=True):
|
||||
dirs = find_dirs_to_watch(fpath, dirs, add_default_dirs)
|
||||
log('Auto-restarting server on changes press Ctrl-C to quit')
|
||||
log('Watching %d directory trees for changes' % len(dirs))
|
||||
with ReloadServer() as server, Worker(cmd, log, server) as worker:
|
||||
with ReloadServer(listen_on) as server, Worker(cmd, log, server) as worker:
|
||||
w = Watcher(dirs, worker, log)
|
||||
worker.wakeup = w.wakeup
|
||||
try:
|
||||
|
@ -231,7 +231,7 @@ def main(args=sys.argv):
|
||||
from calibre.srv.auto_reload import auto_reload, NoAutoReload
|
||||
try:
|
||||
from calibre.utils.logging import default_log
|
||||
return auto_reload(default_log)
|
||||
return auto_reload(default_log, listen_on=opts.listen_on)
|
||||
except NoAutoReload as e:
|
||||
raise SystemExit(e.message)
|
||||
opts.auto_reload_port=int(os.environ.get('CALIBRE_AUTORELOAD_PORT', 0))
|
||||
|
Loading…
x
Reference in New Issue
Block a user