2

我想在 bluemix 上部署一个 Angular 2 应用程序。该代码位于 github,我想在推送某些内容时部署我的应用程序。所以我创建了一个管道。首先是构建管道:构建 Angular 应用程序我需要 angularCLI,所以我想安装它。不幸的是,默认节点版本是 4.2,但 cli 至少需要 6.9。这是我的构建外壳命令:

#!/bin/bash
# The default Node.js version is 0.10.40
# To use Node.js 0.12.7, uncomment the following line:
#export PATH=/opt/IBM/node-v0.12/bin:$PATH
# To use Node.js 4.2.2, uncomment the following line:
export PATH=/opt/IBM/node-v6.9/bin:$PATH
npm install -g @angular/cli
npm run build

我试图用 6.9 替换 4.2,但它不起作用,它使用默认节点版本 0.10.40。有人知道如何设置节点版本吗?此外,npm 版本已过时......我该如何解决这个问题?

4

2 回答 2

6

上面的答案为我指明了正确的方向,但新版本的 NVM 不起作用。NVMinstall.sh现在检查是否NVM_DIR已设置但目录不存在。

我更改了NVM_DIR路径并在install.sh完成后声明了它。

bash
#!/bin/bash

export NODE_VERSION=8
export NVM_VERSION=0.33.11

npm config delete prefix \
  && curl -o- https://raw.githubusercontent.com/creationix/nvm/v${NVM_VERSION}/install.sh | bash \
  && export NVM_DIR="$HOME/.nvm" \
  && . $NVM_DIR/nvm.sh \
  && nvm install $NODE_VERSION \
  && nvm alias default $NODE_VERSION \
  && nvm use default \
  && node -v \
  && npm -v
于 2018-06-06T20:11:18.777 回答
5

好的,bluemix 只提供了几个版本的 node 和 npm... 在http://gh-blog.mybluemix.net/blogs/cokeSchlumpf/rethink-it/posts/bluemix/node-buildpipeline.md?cm_mc_uid找到了解决方案=01575932457714863658655&cm_mc_sid_50200000=1487233177

#!/bin/bash
export NVM_DIR=/home/pipeline/nvm
export NODE_VERSION=5.10.1
export NVM_VERSION=0.29.0

npm config delete prefix \
  && curl https://raw.githubusercontent.com/creationix/nvm/v${NVM_VERSION}/install.sh | sh \
  && . $NVM_DIR/nvm.sh \
  && nvm install $NODE_VERSION \
  && nvm alias default $NODE_VERSION \
  && nvm use default \
  && node -v \
  && npm -v

npm install
# Further steps ...
于 2017-02-16T09:41:46.130 回答