1
0
镜像自地址 https://github.com/tuna/tunasync.git 已同步 2025-12-07 23:16:47 +00:00

add option to disable stdout/stderr redirection for shell provider

这个提交包含在:
bigeagle
2014-12-19 14:28:01 +08:00
父节点 0b4c5b9cb9
当前提交 caac9b4950
共有 2 个文件被更改,包括 10 次插入3 次删除

查看文件

@@ -81,6 +81,7 @@ class MirrorConfig(object):
local_dir=self.local_dir,
log_dir=self.log_dir,
log_file=self.log_file,
log_stdout=self.options.get("log_stdout", True),
interval=self.interval,
hooks=hooks
)

查看文件

@@ -106,12 +106,13 @@ class RsyncProvider(MirrorProvider):
class ShellProvider(MirrorProvider):
def __init__(self, name, command, upstream_url, local_dir, log_dir,
log_file="/dev/null", interval=120, hooks=[]):
log_file="/dev/null", log_stdout=True, interval=120, hooks=[]):
super(ShellProvider, self).__init__(name, local_dir, log_dir, log_file,
interval, hooks)
self.upstream_url = str(upstream_url)
self.command = shlex.split(command)
self.log_stdout = log_stdout
def run(self, ctx={}):
@@ -128,8 +129,13 @@ class ShellProvider(MirrorProvider):
_args = [] if len(self.command) == 1 else self.command[1:]
cmd = sh.Command(_cmd)
self.p = cmd(*_args, _env=new_env, _out=log_file,
_err=log_file, _out_bufsize=1, _bg=True)
if self.log_stdout:
self.p = cmd(*_args, _env=new_env, _out=log_file,
_err=log_file, _out_bufsize=1, _bg=True)
else:
self.p = cmd(*_args, _env=new_env, _out='/dev/null',
_err='/dev/null', _out_bufsize=1, _bg=True)
# vim: ts=4 sw=4 sts=4 expandtab