Fix node runner for running without a system-level node installed.

This commit is contained in:
Anthony Sottile 2014-03-24 11:17:38 -07:00
parent c300a11a97
commit d4c9f9075e
2 changed files with 7 additions and 8 deletions

View file

@ -24,7 +24,7 @@ class Environment(object):
""" """
raise NotImplementedError raise NotImplementedError
def run(self, cmd, stdin=None, **kwargs): def run(self, cmd, stdin=None):
"""Returns (returncode, stdout, stderr).""" """Returns (returncode, stdout, stderr)."""
proc = subprocess.Popen( proc = subprocess.Popen(
['bash', '-c', ' '.join([self.env_prefix, cmd])], ['bash', '-c', ' '.join([self.env_prefix, cmd])],

View file

@ -31,13 +31,12 @@ def install_environment():
with python.in_env() as python_env: with python.in_env() as python_env:
python_env.run('pip install nodeenv') python_env.run('pip install nodeenv')
try: # Try and use the system level node executable first
# Try and use the system level node executable first retcode, _, _ = python_env.run('nodeenv -n system {0}'.format(NODE_ENV))
python_env.run('nodeenv -n system {0}'.format(NODE_ENV)) # TODO: log failure here
except Exception: # cleanup
# TODO: log exception here if retcode:
# cleanup local.path(NODE_ENV).delete()
local.path(NODE_ENV).remove()
python_env.run('nodeenv --jobs 4 {0}'.format(NODE_ENV)) python_env.run('nodeenv --jobs 4 {0}'.format(NODE_ENV))
with in_env() as node_env: with in_env() as node_env: