Как указать установку пакета (для пряжи) в образе док-станции CircleCI? - PullRequest
0 голосов
/ 07 октября 2019

Я использую CircleCI для тестирования приложения на Rails. Мне нужно запустить, чтобы мои изображения использовали более позднюю версию Yarn (в настоящее время 1.19), чем доступно для образа, который мы используем для наших тестов CI (circleci/ruby:2.6-node-browsers).

Что такое шаг / запись конфигурации вconfig.yml сделать это? Я предполагаю, что мне нужно выполнить что-то на этапе сборки, которое обновляет версию Yarn (которая на изображении сейчас 1.17). Но я не могу понять, что это такое.

1 Ответ

0 голосов
/ 10 октября 2019

Начиная с Круговой документации на Yarn , я попытался установить Yarn с помощью команды curl, которая есть в их примере (по состоянию на октябрь 19 года), которая выглядит так:

run:
  name: install Yarn
  command: curl -o- -L https://yarnpkg.com/install.sh | bash

Это не работа - yarn -v все еще вернул 1.17.

Впоследствии я получил ответ от поддержки CircleCI и изменил его на:

      - run: |
          curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
          echo "deb https://dl.yarnpkg.com/debian/ rc main" | sudo tee /etc/apt/sources.list.d/yarn.list
          sudo apt-get update && sudo apt-get install yarn
          sudo rm /usr/local/bin/yarn && sudo ln -s /usr/bin/yarn /usr/local/bin/yarn

и этоработал. Я предполагаю, что это потому, что использование sudo правильно устанавливает программные ссылки глобального пути, а локальная установка - нет. Возможно, я мог бы получить это здесь путем сброса переменной PATH, но я вставляю это здесь, потому что использование маршрута apt кажется мне "лучшим" решением.

...