任何NPM命令都会挂起TFS构建过程

时间:2016-06-08 16:01:00

标签: tfs angular tfsbuild angular-cli

我正在构建一个angular2应用程序,我在TFS中开发了一个构建配置文件来自动构建它。

有四个npm命令:

  • npm install angular-cli -g
  • npm install
  • npm run typings(执行typings install
  • npm run build(执行ng build

然后是Copy Publish Artifact步骤。

但是,即使每个步骤都过去了,它都显示Finishing Copy and Publish Build Artifacts,项目已经构建,文件已经移动,实际构建 永远不会完成 。我已经尝试将这些npm命令分解为powershell脚本,在TFS中将它们作为NPM命令,并将它们作为CMD命令运行,但每次都会发生同样的事情。此外,如果我只是远程进入构建服务器并手动运行命令,它就可以正常工作。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我们最近遇到了同样的问题,我强烈建议您不要依赖TFS Build来恢复npm包。即使你做对了,也需要很长时间,并且不会将你需要的node_modules部署到IIS。

相反,使用WebPack将node_modules捆绑到bundle.js中。 在您的projects / scripts文件夹中引用它并将其检入源代码管理。

删除构建过程中的所有npm安装步骤(因为你现在引用了bundle.js,所以不再需要它了。)

这将提高您的质量(没有未来的软件包版本意外),并加快您的部署(无需再在每个版本上下载npm软件包)。

安装Webpack相当快,你可以省去头痛:)