Swa*_*osh 5 build npm azure-devops
我已在VSTS中配置了一个私有代理,并在那里全局安装了NPM。当我尝试通过构建任务安装NPM时,它仍在为每个构建安装NPM软件包,这花费了大量的时间-大约12分钟。
如何缓存NPM安装,以减少构建时间?
我们使用npm-cache, npm-cache 是一个节点模块,它将为每个哈希计算您的 package.json 文件的哈希,它将在您的构建服务器上创建包含 node_modules 内容的 zip 文件夹,现在 npm install 被简化为提取一个zip 在每个构建中(当然只有在您实际上没有更改 package.json 的情况下)。
这个想法是:第一次该工具下载npm包并将它们保存在本地,第二次如果package.json没有改变,他从本地磁盘中取出包并将它们复制到构建代理文件夹,只有当package.json他下载改变时来自互联网的包裹。
在构建机器上安装 npm-cache:
npm install npm-cache -g
在构建定义中添加命令行任务(工具:(C:\Windows\User\AppData\Roaming\npm\npm-cache或者只是npm-cache将工具添加到环境路径变量);参数:install npm;工作文件夹:($(Build.SourcesDirectory)或所在的package.json位置)。
不幸的是,我们无法缓存 NPM 安装,因为目前没有这样的内置功能。
然而,已经有用户提交建议该功能的声音:通过构建缓存提高托管构建代理性能,并且 VSTS 团队现在似乎正在积极致力于此...
目前,您可以尝试在 Visual Studio Team Services 上加速 NPM INSTALL
| 归档时间: |
|
| 查看次数: |
2691 次 |
| 最近记录: |