Сборка выпуска сервера/бота Xcode 9 не подписывается с профилем распространения/производства (с использованием автоматической подписи кода)

Проблема:

Корпоративное приложение не подписывается с профилем распространения (/производства) при запуске интеграции бота на сервере Xcode 9, но с профилем разработки.

Сценарий(/вопрос):

Я обновился до Xcode 9. Используемый Apple ID зарегистрирован в программе Enterprise. Цель проекта и настройки бота установлены для создания цели выпуска.

При локальном создании архива и его экспорте приложение подписывается с правильным профилем распространения. (с использованием того же Apple ID)

Раньше мне приходилось отключать автоматическую подпись и выбирать конкретный профиль. (а затем зафиксируйте этот код... чтобы работала интеграция/подписание бота) Я бы хотел больше не делать этого и просто иметь возможность использовать автоматическую подпись кода.

Кто-нибудь тоже сталкивался с таким поведением и / или знает, что я могу сделать, чтобы заставить интеграционного бота подписать правильный профиль (распространение / производство)?


person Leentje    schedule 04.10.2017    source источник
comment
Вы уже поняли это? Мне интересно то же самое.   -  person Matt Long    schedule 05.12.2017
comment
@MattLong нет: я еще не смог это исправить   -  person Leentje    schedule 11.01.2018
comment
@MattLong нашел решение. Отредактируйте своего бота, на вкладке конфигурации в разделе «Архив» скажите ему «Использовать пользовательский список параметров экспорта». В этом plist задайте конкретные параметры сборки, какую команду использовать, истончение приложений и другие параметры.   -  person Leentje    schedule 21.03.2018


Ответы (1)


Чтобы автоматическое подписание работало, измените настройки бота. В разделе «Конфигурация» -> «Архив» скажите «Использовать пользовательские параметры экспорта plist».

Этот список экспорта должен содержать настройки для архивирования, идентификатор команды и т. д. Профили должны быть доступны на машине (оффкурс).

Мой плист выглядит так:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>compileBitcode</key>
    <false/>
    <key>method</key>
    <string>enterprise</string>
    <key>signingStyle</key>
    <string>automatic</string>
    <key>stripSwiftSymbols</key>
    <true/>
    <key>teamID</key>
    <string>*TEAMID*</string>
    <key>thinning</key>
    <string>&lt;none&gt;</string>
</dict>

person Leentje    schedule 21.03.2018
comment
Прохладно. Рад, что у тебя получилось. Что вы используете на вкладке «Подписание»? Вы устанавливаете флажок Разрешить серверу Xcode управлять моими сертификатами и профилями? Вы выбираете «Добавить на сервер» для каких-либо сертификатов и профилей на вкладке «Сертификаты и профили» в разделе «Подписание»? - person Matt Long; 22.03.2018
comment
@MattLong да на оба вопроса :) Флажок установлен, и на сервер действительно добавлены правильные сертификаты и профили. - person Leentje; 23.03.2018