Можно ли запустить jenkins с двумя разными sysks iOS

Мы используем Jenkins для запуска наших xcodebuilds на сервере Mac Mini. В последние недели мы начали разработку приложений iOS 7, и мы установили версии Xcode 5 DP на Mac Mini.

При установке новой версии Xcode и настройке xcodebuild нового Xcode, который выбирает xcode, эта новая версия также используется для создания наших старых приложений iOS 6, что нарушает их пользовательский интерфейс.

Есть ли способ рассказать Дженкинсу, какую xcodebuild он должен использовать для создания проекта?

Ответ 1

Посмотрите решение, отправленное Andy Molloy на http://andymolloy.net/specifying-xcode-version-for-jenkins-projects.

Вам необходимо установить EnvInject-плагин для Jenkins и добавить в проект сборки DEVELOPER_DIR =/Applications/Xcode5-DP6.app/Contents/Developer среды.

Ответ 2

Не похоже, что можно указать версию xcode для задания jenkins. Кроме того, для переключения версии xcode в командной строке требуются права root.

Вам удастся решить вашу проблему, убедившись, что ваши приложения IOS 6, когда они построены с новым xcode, работают правильно. Попробуйте выбрать правильный базовый SDK и цель развертывания http://www.clarkcox.com/blog/2009/06/23/sdks-and-deployment-targets/

Если это не сработает, вы можете попробовать заставить коммутатор версии xcode использовать во время сборки, использовать pre xcode plugin. Вам придется играть с правами sudo. Учитывая, что это системный параметр, вам может потребоваться предотвратить одновременное выполнение нескольких сборок.

Я бы сделал все возможное, чтобы несколько сборок работали с одной версией xcode.

Ответ 3

Выберите версию xcode во время выполнения

  • Использовать плагин EnvInject
  • для заданий, требующих не умолчанию, сделать что-то вроде

DEVELOPER_DIR =/Применения/Xcode6.0.1.app/Содержание/Разработчик

под переменными среды Inject для процесса сборки

https://wiki.jenkins-ci.org/display/JENKINS/Xcode+Plugin