我有一个Angular应用程序,它通过一个小型NodeJs应用程序提供。
我有一个詹金斯工作,他构建我的应用程序并打包它。
输出工件是dist
目录,其中包含角度应用和节点app.js
文件来执行服务。
我现在想要将这些工件推送到bluemix。
事情是:
package.json
文件来检测nodeJs buildpack package.json
bluemix / cloudfoundry(?)执行npm install / build / test
命令时我已经有一个构建的应用程序,所以我只需要调用 node app.js 来为我的应用程序提供服务。就devops而言,我更愿意保持Only Build Once良好实践。
我目前的旁路是让空package.json
来欺骗bluemix。
所以,我想知道是否可以在bluemix上部署节点应用程序而不需要package.json
?
或者至少禁用npm
命令?
我只想让bluemix / cloudfoundry(?)做node app.js
感谢您的帮助
答案 0 :(得分:1)
有两种方法(manifest.yml和命令行)来定位特定的构建包。此网页记录了模型https://docs.cloudfoundry.org/buildpacks/node/node-tips.html#discovery
您可能还需要考虑使用shrinkwrap(https://docs.npmjs.com/cli/shrinkwrap)来锁定依赖项的版本控制。
如果你将这两者结合起来,我认为它会让你更接近你的目标。