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
|
daemon = True
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self, listen_on):
|
||||||
Thread.__init__(self, name='ReloadServer')
|
Thread.__init__(self, name='ReloadServer')
|
||||||
self.reload_handler = ReloadHandler()
|
self.reload_handler = ReloadHandler()
|
||||||
self.loop = ServerLoop(
|
self.loop = ServerLoop(
|
||||||
create_http_handler(websocket_handler=self.reload_handler),
|
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.loop.LISTENING_MSG = None
|
||||||
self.notify_reload = self.reload_handler.notify_reload
|
self.notify_reload = self.reload_handler.notify_reload
|
||||||
self.ping = self.reload_handler.ping
|
self.ping = self.reload_handler.ping
|
||||||
@ -376,7 +376,7 @@ class ReloadServer(Thread):
|
|||||||
self.join(self.loop.opts.shutdown_timeout)
|
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:
|
if Watcher is None:
|
||||||
raise NoAutoReload('Auto-reload is not supported on this operating system')
|
raise NoAutoReload('Auto-reload is not supported on this operating system')
|
||||||
fpath = os.path.abspath(__file__)
|
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)
|
dirs = find_dirs_to_watch(fpath, dirs, add_default_dirs)
|
||||||
log('Auto-restarting server on changes press Ctrl-C to quit')
|
log('Auto-restarting server on changes press Ctrl-C to quit')
|
||||||
log('Watching %d directory trees for changes' % len(dirs))
|
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)
|
w = Watcher(dirs, worker, log)
|
||||||
worker.wakeup = w.wakeup
|
worker.wakeup = w.wakeup
|
||||||
try:
|
try:
|
||||||
|
@ -231,7 +231,7 @@ def main(args=sys.argv):
|
|||||||
from calibre.srv.auto_reload import auto_reload, NoAutoReload
|
from calibre.srv.auto_reload import auto_reload, NoAutoReload
|
||||||
try:
|
try:
|
||||||
from calibre.utils.logging import default_log
|
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:
|
except NoAutoReload as e:
|
||||||
raise SystemExit(e.message)
|
raise SystemExit(e.message)
|
||||||
opts.auto_reload_port=int(os.environ.get('CALIBRE_AUTORELOAD_PORT', 0))
|
opts.auto_reload_port=int(os.environ.get('CALIBRE_AUTORELOAD_PORT', 0))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user