Используйте NVM для установки определенной версии nodejs в gitlab-ci

#gitlab-ci #nvm

#gitlab-ci #nvm

Вопрос:

Когда я пытаюсь установить NVM с помощью gitlab-ci, я получаю следующее сообщение об ошибке:

файл .gitlab-ci.yml

 
stages:
    - test

Testing:
    tags: 
    - docker 
    stage: test
    image: ubuntu:18.04
    before_script: 
    - apt-get update 
    - apt-get install curl  -y

    # Install Node Version Manager (NVM) so we can change the node version 
    - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.36.0/install.sh | bash
    - nvm --version 
  

Сообщение об ошибке:

 $ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.36.0/install.sh | bash
    % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                    Dload  Upload   Total   Spent    Left  Speed
100 13527  100 13527    0     0  99463      0 --:--:-- --:--:-- --:--:-- 99463
=> Downloading nvm as script to '/root/.nvm'
=> Appending nvm source string to /root/.bashrc
=> Appending bash_completion source string to /root/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] amp;amp; . "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] amp;amp; . "$NVM_DIR/bash_completion"  # This loads nvm bash_completion
$ nvm --version
/bin/bash: line 116: nvm: command not found
ERROR: Job failed: exit code 1
  

Когда я пытаюсь перезагрузить терминал в gitlab-ci с помощью exec bash задачи gitlab, она завершается преждевременно и не запускает остальную часть скрипта.

Как мне использовать install и использовать nvm с gitlab-ci?

Ответ №1:

Обновите скрипт для загрузки команд nvm в ваш терминал. ". ~/.nvm/nvm.sh"

     # Install Node Version Manager (NVM) so we can change the node version 
    - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.36.0/install.sh | bash
    - ". ~/.nvm/nvm.sh"
    - nvm --version