| Index: ensure_dependencies.py | 
| diff --git a/ensure_dependencies.py b/ensure_dependencies.py | 
| index 1cbbf09522eef68283123f634370064352ec49f1..2e7013da39ee3d207f89cbc7b0a0c0117461bc17 100755 | 
| --- a/ensure_dependencies.py | 
| +++ b/ensure_dependencies.py | 
| @@ -278,7 +278,16 @@ def resolve_npm_dependencies(target, vcs): | 
| lockfile_path = os.path.join(target, NPM_LOCKFILE) | 
| open(lockfile_path, 'a').close() | 
|  | 
| -        cmd = ['npm', 'install', '--only=production', '--loglevel=warn', | 
| +        if os.name == 'nt': | 
| +            # Windows' CreateProcess() (called by subprocess.Popen()) only | 
| +            # resolves executables ending in .exe. The windows installation of | 
| +            # Node.js only provides a npm.cmd, which is executable but won't | 
| +            # be recognized as such by CreateProcess(). | 
| +            npm_exec = 'npm.cmd' | 
| +        else: | 
| +            npm_exec = 'npm' | 
| + | 
| +        cmd = [npm_exec, 'install', '--only=production', '--loglevel=warn', | 
| '--no-package-lock', '--no-optional'] | 
| subprocess.check_output(cmd, cwd=target) | 
|  | 
|  |