В процессе сборки Fastlane Scan отсутствует инфраструктура CocoaPod в Jenkins CI - PullRequest
0 голосов
/ 01 мая 2019

Мы используем Fastlane в нашем приложении для запуска тестов в среде Jenkins CI. Линия test работала хорошо до тех пор, пока несколько дней назад большинство наших тестовых прогонов неожиданно перестали работать из-за того, что процесс сборки пропускал модуль Firebase, что приводило к тому, что все классы в проекте, которые касались Firebase, не работали. компиляции. Насколько мы можем судить, за это время ничего не изменилось с файлом проекта, и полоса тестирования все еще работает безупречно в наших локальных средах.

Примечание: похоже, что очистка кэша Cocoapod на CI-сервере временно решает проблему, но она быстро возвращается. Я бы предпочел не включать это в процесс сборки, так как загрузка репо Cocoapods занимает очень много времени и потребовала бы огромную пропускную способность, если бы мы делали это при каждом запуске CI.

Кто-нибудь знает, что может привести к тому, что вызов Fastlane xcodebuild будет вести себя на сервере Jenkins иначе, чем локально?

1 Ответ

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

Итак, мы нашли решение в двух частях:

  1. Мы ограничили блок сборки только обработкой только одного запроса CI за раз.Он работал до 2 одновременно, что, как мы подозреваем, может вызвать проблемы с cocoapods, а также привести к более частым ошибкам тайм-аута в нашем тестовом наборе.
  2. Мы удалили папки рабочего пространства Jenkins для всех новых, сбой сборок и перезапуск сборок.Похоже, это повсеместно устранило проблему.В настоящее время мы экспериментируем с тем, чтобы каждый запуск Jenkins удалял папку рабочей области в качестве первого действия, поскольку нам не нужны старые артефакты как часть нашего процесса CI, а только продукты последнего тестового действия.
...