Source code for starforge.execution.local

"""
"""
from __future__ import absolute_import

from subprocess import check_call
try:
    from subprocess import check_output
except ImportError:
    from ..util import check_output

from ..io import info
from . import ExecutionContext


[docs]class LocalExecutionContext(ExecutionContext): def __init__(self, image, **kwargs): self.image = image
[docs] def start(self, **kwargs): pass
[docs] def run(self, cmd, cwd=None, capture_output=False, **kwargs): cmd = self.normalize_cmd(cmd) info('Running local: %s', ' '.join(cmd)) if capture_output: return check_output(cmd, cwd=cwd) else: check_call(cmd, cwd=cwd)
[docs] def destroy(self, **kwargs): pass