Есть ли способ/плагин для интеграции новой службы Xcode и/или нового Apple CI с Jenkins?
Почему?
Основная проблема с наличием сервера Jenkins + ведомого устройства OSX, подключенного через ssh
, заключается в том, что Тесты не работают, поскольку iOS Simulator нуждается в графической среде, которая отсутствует в этом конфигурации.
Надеюсь, что с помощью Jenkins можно интегрировать службу Xcode (которая поддерживает Unit Testing).
Возможно, использование Apple CI будет достаточно для моих нужд, но этот вопрос направлен на интеграцию службы Xcode с Jenkins.
Что я уже знаю
У меня есть опыт работы с существующим плагином Xcode Jenkins, но, похоже, он не поддерживает новую услугу Xcode или новый Apple CI. Я особенно заинтересован в модульном тестировании через CI (который не работал должным образом по сеансу ssh со старым способом).
Что я хочу знать
Мне бы хотелось получить информацию о следующих проблемах, которые в настоящее время не работают с Jenkins и подключенным ведомым устройством ssh
:
- Единичные тесты на безголовой системе
- Приемочные тесты с Frank или аналогичными
- Автоматическое обновление профиля Provisioning Profile (Apple CI делает это)
И информация о том, что в настоящее время отлично работает с Jenkins и подключенным ведомым устройством ssh
, и все равно должна работать с интеграцией сервисов Xcode:
- Создание различных конфигураций компоновки (Release, Debug, TestFlight)/схем
- Автоматическое увеличение числа сборки
- (С Jenkins я могу установить номер сборки в моем проекте на
${BUILD_NUMBER}
, а Jenkins задает эту переменную среды в соответствии со своим номером сборки. Когда Apple CI делает сборки, скорее всего, он установит номер сборки вместо этого.) - Обработка/синхронизация номера сборки между Jenkins и Apple CI
- (С Jenkins я могу установить номер сборки в моем проекте на
- Доступ к сборке продуктов Apple CI из разных Jenkins Jobs
- например. для задания для загрузки в TestFlight
- Резервное копирование сборок
- Автоматическое построение на git нажатие на конкретную ветку
- Уведомления по электронной почте
Некоторые дополнительные вопросы/подсказки
- Я не уверен, есть ли
Apple CI == Xcode service
или если Apple CI просто использует службу Xcode. В последнем случае служба Xcode просто будет похожа на интеллектуальную сборку slave, и Jenkins, возможно, может использовать ее для создания сборок и тестов, но сама по себе может управлять номерами и продуктами сборки. - Я знаю, что Apple CI - это отдельный CI, и интеграция нескольких CI друг с другом - не самый простой или полезный способ. Я просто боюсь, что Apple CI недостаточно гибко для моих потребностей (см. Выше), и что старый способ с Дженкинсом имеет некоторые проблемы (см. Выше).