Почему варианты CircleCI не работают при комбинировании?Не удается заставить Firefox Geckodriver работать - PullRequest
0 голосов
/ 06 мая 2019

Используя Ruby 2.4.0 и 2.4.1, я не могу заставить CircleCI распознать варианты изображений языка, кроме -browsers, например, указанные варианты -browsers-legacy и т. Д. Говорят, что manifest ... not found.

https://circleci.com/docs/2.0/circleci-images/#ruby

Из-за этого я не могу решить проблему с тестами Firefox, не запускающими Firefox в CircleCI.Это работает, если я создаю свой образ конфигурации Circle ruby-2.6.2-browsers, но локально я не смог установить версию Ruby 2.6.2, так как мой rbenv говорит, что определение не найдено для 2.6.2

Однако при использовании 2.4.1 вCircleCI Я получаю Net::ReadTimeout, поскольку Firefox не отвечает (но Chrome реагирует).

Когда я переключаю CircleCI на изображение 2.6.2-browsers, Firefox и Chrome работают нормально.

В настоящее время мой локальный Ruby должен быть 2.4.0 (в моем Gemnfile), так как при попытке rbenv install 2.6.2 (для версии, которая работает в CircleCI) он говорит, что определение изображения не найдено

Есть лиспособ получить мою локальную среду и среду CircleCI, используя одну и ту же версию Ruby?

На данный момент мне нужно иметь

  • local be 2.4.1 (в файле .ruby-version)
  • .circleci/config файл с image: circleci/ruby:2.6.2-browsers

Пытаясь получить это право, я также столкнулся с

  • новым драгоценным камнем webdrivers были проблемы, и яна данный момент пришлось вернуться к старым камням
  • Firefox не может запуститься
  • другие проблемы
  • невозможно указать версию Ruby в моем Gemfile, поскольку разные среды имеют разные версии (сейчас я избегаю любых переменных)

Я не являюсьперечислять их здесь подробно, чтобы разрешить, но указать, что эти среды сейчас немного хрупки, поскольку несколько издателей влияют на то, что работает, в зависимости от

  • версия ОС
  • версия Ruby
  • версии изображений
  • версии Firefox

1 Ответ

0 голосов
/ 06 мая 2019

Старые выпуски патчей не публикуются в Docker Hub после определенного момента. Если вы хотите, чтобы последняя версия программного обеспечения была доступна в вариантах изображений, таких как -browser, вам необходимо использовать более позднюю версию Ruby 2.4, такую ​​как 2.4.6. Например, это изображение circleci/ruby:2.4.6-browsers.

Если по какой-либо причине вы не можете этого сделать, возьмите образ CircleCI Ruby 2.4.1, стандартную версию, а не вариант, а затем создайте свой собственный образ Docker для того, в котором есть необходимое вам программное обеспечение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...