Xcode Server Bot Проблема: предупреждение. Ошибка службы сборки. Проблема: архив по пути 'some/path' искажен
Я использую Cocoapods и KIF для запуска непрерывной интеграции на сервере XCode. Я успешно настроил это для одного проекта, чтобы сообщить о каждом коммите. Я сейчас использую второй проект и получаю ошибку:
Bot Issue: warning. Build Service Error.
Issue: archive at path '/Library/Developer/XcodeServer/Integrations/Integration-81d42936b22a04037fd4aebed1074e5e/Archive.xcarchive' is malformed.
Integration Number: 1.
Description: archive at path '/Library/Developer/XcodeServer/Integrations/Integration-81d42936b22a04037fd4aebed1074e5e/Archive.xcarchive' is malformed.
Тесты проходили при запуске на компьютере сервера Xcode с использованием Xcode. Я пытался загрузить профили обеспечения и т. Д. Через XCode, но это не помогло. Я удалил бота и создал новый, но это тоже не помогло.
Любая помощь приветствуется
1 ответ
По крайней мере, в моем случае (и может быть несколько причин), это было вызвано тем, что для каждой цели было установлено "Пропустить установку", что приводит к тому, что вы получаете пустой архив (но только на Xcode Server).
По сути, xcodebuild (инструмент командной строки) имеет много критических отличий от Xcode в способе архивирования. Он строит цели, которые не перечислены в схеме, и подчиняется флагу Skip Archive даже для целей, перечисленных в схеме. Напротив, при локальном построении Xcode игнорирует флаг Skip Archive и архивирует любые цели в схеме (и только цели, перечисленные в схеме).
Я бы посоветовал вам сообщать об ошибке каждый раз, когда вы сталкиваетесь с ситуациями, когда проект строится локально, но не работает на сервере. Если бы все сделали это, возможно, эти различия в конечном итоге были бы исправлены....