使用 NodeJS 和私有注册表部署 IBM Cloud DevOps 管道

IBM Cloud DevOps pipeline deploy with NodeJS and private registry

结合 IBM Cloud DevOps 管道使用私有注册表,我们得到了 模块发布。在 DevOps 管道中,也可以使用以下策略进行构建:

    #!/bin/bash
    export PATH=/opt/IBM/node-v6.7.0/bin:$PATH
    npm config set @<scope>:registry <registry-url>
    echo "//<registry-url-short>:_authToken=$NPM_TOKEN" >> ~/.npmrc
    npm install

这样可以找到并安装 public 和私有模块。但是,当需要部署到 NodeJS 运行时时,'npm install' 是在平台端完成的。

我们如何用上面的方法来指导它?

一种可能的方法是使用 npm 中的 postinstall 脚本将您的私有模块下载到不同的目录中。这里有一个关于如何实现这一点的很好的解释。

https://github.com/pmuellr/bluemix-private-packages

另一种方法是在推送时将 .npmrc 文件与应用程序打包在一起。更多信息在这里 https://github.com/cloudfoundry/nodejs-buildpack/issues/79

这里的方法是创建一个 .npmrc 作为构建阶段的一部分,并将其添加到工件文件夹的根目录中。在下一阶段,当您从工件文件夹部署应用程序时,您的 npm 配置将为每个项目配置正确设置(请参阅 https://docs.npmjs.com/files/npmrc),并且 cf 节点构建包执行的 npm 安装将正常工作。