bootstrap-vz/common/tools.py
2013-07-08 23:14:01 +02:00

21 lines
589 B
Python

def log_command(command, logger):
import subprocess
import select
process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
while True:
reads = [process.stdout.fileno(), process.stderr.fileno()]
ret = select.select(reads, [], [])
for fd in ret[0]:
if fd == process.stdout.fileno():
line = process.stdout.readline()
if line != '':
logger.debug(line)
if fd == process.stderr.fileno():
line = process.stderr.readline()
if line != '':
logger.error(line)
if process.poll() is not None:
break
return process.returncode