Я пытаюсь запустить автоматическую xcodebuild на Jenkins, но я столкнулся с ошибкой
Взаимодействие с пользователем запрещено. Ошибка команды /usr/bin/codesign с кодом выхода 1
Я уже ссылался на "Пользовательское взаимодействие не разрешено" пытаясь подписать приложение OSX с использованием codeign и других подобных потоков, но ни одно из решений, похоже, не исправляет ошибку.
Вот что я уже пробовал:
-
Я разрешил всем элементам доступ к цепочке ключей, и я специально добавил код в список "всегда разрешать" (как это делается здесь qaru.site/info/47406/...)
-
Я установил, что брелок не будет автоматически блокироваться с тайм-аутом, как с помощью настроек доступа Keychain, так и с помощью команды
security set-keychain-settings -t 3600 -l <KEYCHAIN>
-
Я попытался позвонить
codesign --sign <CODE SIGN IDENTITY> --force ...
перед компиляцией проекта (точнее, это решение qaru.site/info/47406/...), и хотя это успешно строит проект, я не думаю, что кодовое кодирование перед компиляцией является правильным или надежным. (edit: это также не удалось при запуске из jenkins)
Вот команды, которые я выполняю:
security unlock-keychain -p <PASSWORD> <KEYCHAIN>
xcodebuild -scheme <SCHEME> -workspace <WORKSPACE> -derivedDataPath <BUILD DIRECTORY> -configuration <CONFIGURATION> "CONFIGURATION_BUILD_DIR=<BUILD DIRECTORY>" "CODE_SIGN_IDENTITY=<CODE SIGN ID>" "PROVISIONING_PROFILE=<PROVISIONING PROFILE>" clean build
Что-то интересное, чтобы отметить, что построение проекта на машине работает с приведенными выше командами, но попытка выполнить одни и те же команды над ssh (и jenkins) вызывает ошибку.
Заранее благодарим за помощь!