首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在AWS CI-CD管道中找不到NVM

在AWS CI-CD管道中找不到NVM
EN

Stack Overflow用户
提问于 2021-06-21 06:04:46
回答 2查看 294关注 0票数 1

我是在aws中创建管道的新手。我想为我的nuxt项目创建一个ci-cd管道。我创建了一个yml文件,希望在其中安装nvm,然后安装节点版本12.18.3

问题是我得到了nvm not found错误。

如果我的yml文件中有任何错误,请检查并让我知道:

代码语言:javascript
复制
version: 0.2
phases:
  install:
   commands:
     - echo Installing nvm...
     - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
     - export NVM_DIR="$HOME/.nvm"
     - '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"'
     - '[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"'
  pre_build:
    commands:
      #install dependencies
      - echo Installing node...
      - nvm install 12.18.3
      - echo Installing npm...
      - npm install
  build:
    commands:
      #build
      - echo building...
      - npm run generate
artifacts:
  files:
    - '**/*'
 base-directory: dist
cache:
  paths:
    - node_modules/**/*

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-06-22 10:47:13

工作解决方案

由于某些原因,它无法识别下一行中的nvm。我没有机会进一步调查它。以下配置有效。其思路是在同一行中设置nvm配置和安装节点。

代码语言:javascript
复制
version: 0.2
phases:
  install:
    commands:
      - echo Installing nvm...
      - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
      - export NVM_DIR="$HOME/.nvm"
      - '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"'
      - '[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"'
  pre_build:
    commands:
      #install dependencies
      - . "$NVM_DIR/nvm.sh" && nvm install 12.18.3 && echo "node installed by arun"
      - echo Installing node...
      #- nvm install 12.18.3
      - echo Installing npm...
      - npm install
  build:
    commands:
      #build
      - echo building...
      - npm run generate
cache:
  paths:
    - node_modules/**/*

在本地环境中进行故障排除。

为了对buildspec.yaml进行故障排除,您可以在本地运行构建。下面是如何使用run the buildspec locally

票数 1
EN

Stack Overflow用户

发布于 2021-12-02 09:15:38

您实际上不需要使用nvm在亚马逊CodeBuild上安装特定的node.js版本。

你可以使用don versions选项来安装一些版本,但是你对此没有太多的控制。

代码语言:javascript
复制
phases:
  install:
    runtime-versions:
      nodejs: 12.x

但是亚马逊网络服务标准5镜像预装了n (还没有检查4,但它也应该在那里),所以你可以像这样使用它:

代码语言:javascript
复制
phases:
  install:
    commands:
      - n 12.18.3

它将安装与nvm相同的版本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68060393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档