summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--morphlib/stagingarea.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/morphlib/stagingarea.py b/morphlib/stagingarea.py
index 61f9e660..124edabf 100644
--- a/morphlib/stagingarea.py
+++ b/morphlib/stagingarea.py
@@ -309,7 +309,14 @@ class StagingArea(object):
real_argv += argv
try:
- return self._app.runcmd(real_argv, **kwargs)
+ if 'logfile' in kwargs and kwargs['logfile'] != None:
+ logfile = kwargs['logfile']
+ del kwargs['logfile']
+
+ teecmd = ['tee', '-a', logfile]
+ return self._app.runcmd(real_argv, teecmd, **kwargs)
+ else:
+ return self._app.runcmd(real_argv, **kwargs)
except cliapp.AppException as e:
raise cliapp.AppException('In staging area %s: running '
'command \'%s\' failed.' %