refactoring

This commit is contained in:
Devaev Maxim
2020-05-29 04:16:20 +03:00
parent 1c93f6a562
commit eb13da03be
4 changed files with 58 additions and 27 deletions

View File

@@ -20,14 +20,12 @@
# ========================================================================== #
import signal
import asyncio
import asyncio.subprocess
from typing import List
from ....logging import get_logger
from .... import aioproc
from .. import MsdError
@@ -62,14 +60,8 @@ async def _run_helper(cmd: List[str]) -> None:
logger = get_logger(0)
logger.info("Executing helper %s ...", cmd)
proc = await asyncio.create_subprocess_exec(
*cmd,
stdout=asyncio.subprocess.PIPE,
stderr=asyncio.subprocess.STDOUT,
preexec_fn=(lambda: signal.signal(signal.SIGINT, signal.SIG_IGN)),
)
(proc, stdout) = await aioproc.read_process(cmd)
stdout = (await proc.communicate())[0].decode(errors="ignore").strip()
if stdout:
log = (logger.info if proc.returncode == 0 else logger.error)
for line in stdout.split("\n"):