在 Linux Jenkins CI 上使用 Windows 中的 node_modules...好还是坏?

Using node_modules from Windows on Linux Jenkins CI...good or bad?

我们有一个 Angular 4 项目,其中包含典型的本地 node_module(angular-cli、rxjs、karma、jasmine、phantomjs-prebuilt 等)。 Windows 上的开发机器 运行。我们想 运行 在 Jenkins CI 上测试安装在 Ubuntu 16.0.4 LTS 上的应用程序。

是否有 "best practice" 如何处理 node_module 的方法?

到目前为止,我已经看过很多 "using Jenkins with Karma" 博客文章,但它们都是 运行 本地开发机器上的 Jenkins。没什么帮助。

谢谢 西蒙

在很多公司,开发人员在 windows 中编码,而 Jenkins 在 Unix 中构建是很正常的,这不是问题。

将 node_modules 文件夹上传到您的 git 不是一个好的做法 repository.The 最佳做法是将您的工件上传到工件存储库(Nexus、Jfrog Artifactory...)并将这些依赖项写入您的 package.json.

当您在 Jenkins 中构建 npm 安装时,将从您的工件存储库(Nexus、Jfrog Artifactory...)下载这些工件。

此外,当您部署工件时,这些工件将部署到您的 Nexus 或 Artifactory。