Есть ли способ заставить бота Xcode выполнить чистую проверку?

Я ошибочно полагал, что выбор «Очистка: всегда» на вкладке «Расписание» конфигурации бота Xcode заставит бота rm -rf использовать каталог checkouts в начале каждой интеграции, но, похоже, это не так.

(В частности, неотслеживаемые файлы, которые были скопированы в каталог проверки на этапе выполнения сценария, сохраняются между интеграциями.)

Есть ли способ заставить бота всегда уничтожать свой каталог проверки и каждый раз выполнять чистую проверку из системы управления версиями?

Можно ли вообще заставить Xcode (сервер?) показать мне где каталог проверки? (Я знаю, что он где-то спрятан в недрах /Library/Developer/XcodeServer/Integrations/, но я не могу заглянуть в эти каталоги как обычный пользователь из-за их разрешений. Я думаю о пункте меню «Показать в Finder» или о чем-то подобном.)


person Robert Atkins    schedule 05.11.2015    source источник
comment
На будущее, встроенные продукты (.xcarchive и др.) находятся в /Library/Developer/XcodeServer/IntegrationAssets/.   -  person Robert Atkins    schedule 11.12.2015


Ответы (1)


Для этого вы можете добавить триггер к боту в настройках бота.

В вашем локальном XCode выберите своего бота, щелкните правой кнопкой мыши «Редактировать бота ...», триггеры, а затем + «Добавить триггер» в разделе «Перед интеграцией».

person Adriano    schedule 05.01.2016
comment
И что должен делать триггер? rm -rf $XCS_SOURCE_DIR? Это кажется мне немного храбрым. Ты это пробовал? - person Robert Atkins; 05.01.2016
comment
Я только что попробовал, это не совсем то, что я хочу. Когда я впервые запустил его, казалось, что он уничтожил каталог касс, но сразу после этого интеграция не удалась. Последующее удаление триггера и повторная интеграция, по-видимому, означает повторную попытку сборки с новой проверкой. - person Robert Atkins; 13.01.2016