2016-04-13 2 views
0

Кто-нибудь использовал Jenkins в Xcode для управления кодом и автоматического развертывания? Если да, то как его можно интегрировать? Как автоматическое развертывание работает с Дженкинсом? Прошел через documentation, но понятия не имел.
Я прошел через Jenkins plugins for iOS, но не ясно, можем ли мы опубликовать сборку в AppStore с помощью любого плагина.Поддерживает ли Jenkins интеграцию Xcode

ответ

0

Термин «Jenkins in Xcode for code management» выглядит не совсем корректно. Поскольку сервер Jenkins для CI, в котором мы его конфигурируем (создаем задание), который будет извлекать исходный код из вашего репозитория (SVN, GIT), затем скомпилировать его и запустить, возможно, выполнить ваши модульные тесты, тесты автоматизации пользовательского интерфейса или покрытие кода инструмент.

Основываясь на вашем расписании, сервер Jenkins автоматически запускает свое задание или запускается всякий раз, когда происходит изменение вашего репо (кто-то совершает код, например).

Инструмент, который вы упомянули в Xcode, вероятно, XCode Bots, встроенный инструмент CI. Для настройки, во-первых, вам необходимо установить и настроить сервер XCode. После этого подключение вашего сервера к вашим репозиториям. Во-вторых, создайте бота с настройкой конфигурации и запустите его.

На мой взгляд, в терминах сравнения Jenkins и Xcode я бы сказал, что это зависит от того, какие инструменты или надстройки вы хотите настроить для своего CI-сервера. Дженкинс имеет много плагинов, которые могут быть полезны, например, стиль проверки, охват кода кода, в то время как у бота Xcode все еще есть некоторые ограничения. Этот документ https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/xcode_guide-continuous_integration/ для дополнительной информации.

Я надеюсь, что это было бы полезно для вас.

+0

Большая помощь. Благодарю. Можно ли использовать Jenkins/Xcode для автоматического развертывания в AppStore? Если да, то какой плагин? – Nitish

+0

Я еще не пробовал, однако, что я сделал, это развертывание сборки через бета-тестирование. Если вы используете Jenkins, вам нужно настроить свою работу с сертификатом распространения, плагином XCode, а затем распространять двоичный файл ipa и развернуть через TestFlight, однако вам нужно запустить некоторые пользовательские скрипты. если вы используете XCode-бот, было бы проще. – HDT

+0

Забыл об этом, вы можете обратиться к этой статье о Дженкинсе http://blog.zymr.com/jenkins-integration-with-ios – HDT

2

Мы используем сервер Jenkins для интеграции Continuos, получая исходный код с сервера SVN, когда Jenkins запускается Commits в эти репозитории.

Но, если серьезно, то я бы не рекомендовал Дженкинс ... я предпочел бы использовать Xcode сервер/боты, чтобы избавиться от всех хлопот с Дженкинс ...

+0

Непонятный о вашей второй точке. Вы рекомендуете Jenkins или Xcode-сервер? – Nitish

+0

Я НЕ рекомендую. Извините за опечатку! :-) –

1

Fastlane является инструментом для разработчиков iOS и Android для автоматизации утомительных задач, таких как создание скриншотов, управление профилированием и освобождение приложения. https://github.com/fastlane/fastlane

xctool является заменой для xcodebuild от Apple, что упрощает тестирование продуктов iOS и Mac. Это особенно полезно для непрерывной интеграции. https://github.com/facebook/xctool

+0

Спасибо. А как насчет Дженкинса? :) – Nitish

+0

Вы можете обратиться к https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Jenkins.md. Легко интегрироваться с Дженкинсом. – Jeff

0

Существует жемчужина под названием xcpretty, вы можете использовать его для вывода результата теста формата JUnit, а затем используйте Jenkins JUnit Plugin, чтобы показать результат.

  • Установите xcpretty
 
    gem install xcpretty 
  • Используйте xcpretty для создания формате JUnit XML-файл
 
    xcodebuild test ... | xcpretty --report junit --output [path_to_save]/unit_test_result.xml 
  • Тогда этот unit_test_result.xml может быть использован, чтобы сообщить Дженкинс JUnit подключи в
Смежные вопросы