当前位置 : 主页 > 网页制作 > Nodejs >

node.js – 缓存Jenkins管道上的NPM依赖项

来源:互联网 收集:自由互联 发布时间:2021-06-16
我们都知道用npm下载依赖项可能非常耗时,特别是当我们仅限于旧的npm版本时. 对我来说,作为一名开发人员,这并不是什么大问题,因为我必须在我的本地开发机器上执行此操作,并且所有内
我们都知道用npm下载依赖项可能非常耗时,特别是当我们仅限于旧的npm版本时.

对我来说,作为一名开发人员,这并不是什么大问题,因为我必须在我的本地开发机器上执行此操作,并且所有内容都与我项目文件夹中的node_modules缓存有关.但是现在我想把这个应用程序带到Jenns的CI环境中.

我意识到用npm下载依赖项花了很多时间.这是一个问题,因为:

> npm下载项目文件夹中的依赖项,而不是Maven的/home/user/.m2等全局文件夹
>我必须在每次运行时清理Jenkins工作区文件夹,以避免git checkout出现问题.

我想要一个非常优雅的解决方案来缓存我的Jenkins从属的npm依赖项,但到目前为止我只能想到:

>从Jenkins工作区中删除除node_modules文件夹之外的所有文件夹.我不喜欢这个,因为如果我继续为我的项目创建分支,我可能会消耗大量的硬盘.每个分支创建一个工作区.
>在每次安装npm之后执行类似cp ./node_modules / home / npm_cache的操作,然后在代码检出后执行cp / home / npm_cache ./node_modules.

我觉得这些解决方案很糟糕.必须有更好的方法来做到这一点.

我不知道node.js足以知道如何处理这方面.但是可以在 Linux机器上处理的一个简单方法就是在从git签出后立即将缓存目录符号链接到外部位置.每个代理机器都将维护自己的缓存,但无论解决方案如何,您都可能必须这样做.

我假设你已经调查过nodeJS插件,它无法做你想做的事情.

网友评论