Установка конкретной версии узла в контейнере R на travis

Поскольку я использую инструменты Netlify CLI на travis, мне нужно иметь версию узла выше 8, но у контейнера R, который я использую, только 6.12, согласно сообщению об ошибке. Я видел, что можно указать версию узла для проектов сценариев Java, и здесь есть ответ для проектов PHP на Stackru, но я попробовал оба варианта, и они не работали для моего случая. Как правильно установить конкретную версию узла в произвольный контейнер travis, чтобы другие приложения могли получить к нему доступ? Или, может быть, даже лучше (как) сделать так, чтобы npm удовлетворял минимальной зависимости версии от узла при установке инструментов Netlify CLI? У меня нет опыта работы с npm. Вы можете найти историю версий моего .travis файл здесь.

2 ответа

Решение

Основываясь на решении, предоставленном @talves, я понял, что могу изменить before_script шаг для установки конкретной версии узла, например 8.14:

before_script:
- nvm install 8.14
- npm install -g netlify-cli
- Rscript -e 'blogdown::install_hugo()'

Как nvm и npm уже были установлены. Для установки последней стабильной версии замените 8.14 с node выше. Таким образом, мне не нужно .nvmrc файл.

Чтобы установить Netlify CLI, убедитесь, что у вас Node.js версии 8 или выше

На основе документов для Netlify здесь

Самое быстрое решение для Travis

При желании ваш репозиторий может содержать файл.nvmrc в корне репозитория, чтобы указать, с какой версией Node.js нужно запускать ваши тесты.

Цитата из документов говорят, чтобы добавить .nvmrc файл к вашему проекту в корне с версией

.nvmrc

8.14.0

Примечание: замените версию на ту, которая совместима с вашим проектом и соответствует всем требованиям. Так же .nvmrc файл читается только когда node_js введите ваш .travis.yml В файлах не указана версия nodejs.

Другие вопросы по тегам