Простое удаление избыточного сертификата не сработало для меня.Кажется, что каждый раз, когда вызывается xcodebuild, он "заново создает" сертификат в цепочке для ключей из кеша где-то ... та же проблема, что и avi Я создал для него хак / исправление, попытался найтигде файл кэшируется и очищается, но не повезло.В конце концов, то, что сработало для меня (немного хак, но, эй, что еще вы можете сделать), это выяснить, что такое номер сертификата, и вручную удалить его из цепочки для ключей вскоре после вызова xcodebuild.Сначала перейдите в каталог / usr / bin / (или в любой каталог, где находится ваш файл xcodebuild, попробуйте which xcodebuild
) и выполните следующую команду:
sudo mv xcodebuild xcodebuild_actual
Затем создайте файл, используя ваш любимый редактор (donне забудьте sudo) со следующим кодом:
xcodebuild_actual $* &
echo "xcodebuild started, waiting to wipe certificate, 10 seconds"
sleep 2
echo "Wiping Certificate..."
sudo security -v delete-certificate -t -Z 407629F811D52C0BB7AD31BBB18DCB496354B05E
Примечание: вам придется изменить файл sudoers, чтобы иметь доступ для запуска этой конкретной команды без ввода пароля.
Заменить шестнадцатеричный идентификатор после -Z выше на шестнадцатеричный идентификатор оскорбительного сертификата зомби.Наконец, убедитесь, что файл xcodebuild является исполняемым:
sudo chmod 755 xcodebuild
Теперь вы можете открыть цепочку для ключей и выполнить команду сборки, а также посмотреть, как воскрешающий сертификат зомби воскресил, а затем, в общем, выстрелил до того, как он сталпроблема для кодирования.Надеюсь, Apple найдет реальное решение для этого.