mirror of
https://github.com/pre-commit/pre-commit.git
synced 2026-05-09 08:49:15 -05:00
Fix node runner for running without a system-level node installed.
This commit is contained in:
@@ -24,7 +24,7 @@ class Environment(object):
|
||||
"""
|
||||
raise NotImplementedError
|
||||
|
||||
def run(self, cmd, stdin=None, **kwargs):
|
||||
def run(self, cmd, stdin=None):
|
||||
"""Returns (returncode, stdout, stderr)."""
|
||||
proc = subprocess.Popen(
|
||||
['bash', '-c', ' '.join([self.env_prefix, cmd])],
|
||||
|
||||
@@ -31,13 +31,12 @@ def install_environment():
|
||||
with python.in_env() as python_env:
|
||||
python_env.run('pip install nodeenv')
|
||||
|
||||
try:
|
||||
# Try and use the system level node executable first
|
||||
python_env.run('nodeenv -n system {0}'.format(NODE_ENV))
|
||||
except Exception:
|
||||
# TODO: log exception here
|
||||
# cleanup
|
||||
local.path(NODE_ENV).remove()
|
||||
# Try and use the system level node executable first
|
||||
retcode, _, _ = python_env.run('nodeenv -n system {0}'.format(NODE_ENV))
|
||||
# TODO: log failure here
|
||||
# cleanup
|
||||
if retcode:
|
||||
local.path(NODE_ENV).delete()
|
||||
python_env.run('nodeenv --jobs 4 {0}'.format(NODE_ENV))
|
||||
|
||||
with in_env() as node_env:
|
||||
|
||||
Reference in New Issue
Block a user