如何跳过 Node.js buildpack 的重建和构建

How to skip rebuild and build for Node.js buildpack

通过 Node.js buildpack

将应用程序部署到 CloudFoundry 时

在暂存期间每次都执行。

这两个操作都可能花费大量时间,尤其是对于具有复杂供应依赖树的应用程序。

我的应用程序不需要任何本机模块,并且它们的所有依赖项都已出售。

我正在寻找一种在暂存期间完全跳过重建和安装步骤的方法。


编辑:我知道可以按照 SO answer 中的建议操作 package.json 的解决方法。

构建系统的其他部分取决于清单是否符合应用程序的实际要求,所以这对我来说是不可能的。

您可以添加 --ignore-scripts 标志以跳过 运行 prepost 安装挂钩

$ npm install --ignore-scripts

http://blog.npmjs.org/post/141702881055/package-install-scripts-vulnerability

从 Cloud Foundry 和 NodeJS 构建包的角度来看,您不能跳过 build step. It's going to run with Yarn or with NPM, and with NPM 它会 运行 npm installnpm rebuild.

您有两个选择:

  • You can vendor your dependencies。如果您真的没有任何本机依赖项,​​那么 rebuild 基本上是空操作。如果你有本地库,大多数人都有,你可以 运行 npm installcf push 来自 Ubuntu Trusty VM 或 docker 可以构建的容器甚至供应商本地图书馆。同样,当你按下它时,它仍然 运行 npm rebuild 但如果一切都已出售,它基本上应该是一个空操作。

  • 您可以分叉 NodeJS 构建包并更改操作以按您想要的顺序发生。这可能需要您编辑 supply code here 并添加标志或某种方式来跳过重建。

希望对您有所帮助!