如何在 Travis CI 上缓存全局 NPM 包?
How do I cache global NPM packages on Travis CI?
本地安装的包通过以下方式缓存:
# .travis.yml
...
cache:
directories:
- node_modules
...
但是我如何缓存全局安装的包 ($ npm install -g <...>
) 以加速我的构建?
我是这样做的:
cache:
directories:
# Replace "grunt-cli" with whatever global binary you're using
- $(npm config get prefix)/bin/grunt-cli
编辑:
正如评论中指出的那样,$(npm config get prefix)/bin
包含指向其他代码的符号链接。这是未经测试的,但可能会起作用:$(npm config get prefix)/lib/node_modules
。那应该缓存所有全局安装的模块。
本地安装的包通过以下方式缓存:
# .travis.yml
...
cache:
directories:
- node_modules
...
但是我如何缓存全局安装的包 ($ npm install -g <...>
) 以加速我的构建?
我是这样做的:
cache:
directories:
# Replace "grunt-cli" with whatever global binary you're using
- $(npm config get prefix)/bin/grunt-cli
编辑:
正如评论中指出的那样,$(npm config get prefix)/bin
包含指向其他代码的符号链接。这是未经测试的,但可能会起作用:$(npm config get prefix)/lib/node_modules
。那应该缓存所有全局安装的模块。