Настройка TeamCity для интеграции с OSX Build Agent

Следуя моему вопросу о Настройка Teamcity для сборки Android , теперь у меня есть забавная задача сделать то же самое для проекта iOS!

Что я хотел бы сделать, так это иметь задание TeamCity (наряду со всеми другими нашими заданиями Teamcity) для создания кодовой базы iOS + запуск модульных тестов.

Я знаю, что для сборки iOS нам нужен агент сборки OSX с установленным XCode. Это не будет работать в Windows.

Что я хотел бы знать, так это... кто-нибудь успешно сделал это, интегрировал экземпляр Windows TeamCity с агентом сборки OSX, работающим на другом компьютере?

Есть ли какие-либо облачные провайдеры, у которых есть виртуальные машины OSX, которые мы можем арендовать для установки агента сборки?


person Dr. Andrew Burnett-Thompson    schedule 04.02.2016    source источник
comment
Я только что отказался от попытки выполнить принудительную установку ... насколько болезненно?   -  person Jammer    schedule 25.02.2016


Ответы (1)


Процедура установки агентов для MacOS не отличается от таковой для Windows или Linux. Просмотрите соответствующий раздел в документация.

В основном, что вам нужно сделать, это:

  1. распаковать zip-файл
  2. отредактируйте файл buildAgent.properties, чтобы агент знал, где находится сервер
  3. беги agent.sh start
  4. авторизовать агента на сервере
person Oleg Rybak    schedule 04.02.2016
comment
ОК, здорово, так что возможно ли иметь агент сборки, расположенный на коробке OSX, и сам TeamCity на коробке Windows? - person Dr. Andrew Burnett-Thompson; 04.02.2016
comment
да. Поскольку и сервер, и агент написаны на java, ОС не имеет значения. Однако некоторые функции будут отключены в агенте в зависимости от ОС (например, сборка xcode недоступна в Windows и Linux, функции .net недоступны в Linux и MacOs (пока)) - person Oleg Rybak; 04.02.2016
comment
Небольшой нюанс, на который следует обратить внимание: после загрузки ZIP-файла агента и извлечения его в OSX я обнаружил, что файл buildAgent.properties не существует, а есть только buildAgent.dist.properties. Это предотвратит запуск агента. Я просто скопировал существующий файл и переименовал его в buildAgent.properties, и установка продолжилась нормально. - person starmandeluxe; 20.04.2017
comment
Чего мне не хватает в этом ответе, так это того, как обслуживать эту машину в течение длительного времени. Кто вы входите в систему в агенте сборки Mac? Можете ли вы оставить кого-либо выходящим из системы, и при этом служба все еще будет работать? - person C Johnson; 07.08.2017