В xCode есть один вошедший в систему пользователь, но мне нужно создать его от имени другого пользователя.От этого пользователя есть свежий сертификат разработчика iPhone и соответствующий профиль обеспечения.- Сертификат установлен в связку ключей.- Профиль обеспечения установлен в правильном каталоге Xcode.
xcodebuild передает идентификатор команды этого пользователя:
xcodebuild archive \
-workspace XXXXXXXXXXXXXXXX.xcworkspace \
-scheme XXXXXXXXXXXXXXXX \
-archivePath ./XXXXXXXXXXXXXXXX.xcarchive \
-destination generic/platform=iOS \
IPHONEOS_DEPLOYMENT_TARGET=10.0 \
TARGETED_DEVICE_FAMILY="1" \
CODE_SIGN_ENTITLEMENTS=XXXXXXXXXXXXXXXX.entitlements \
DEVELOPMENT_TEAM=$teamId \
-parallelizeTargets \
-jobs 4 \
-verbose \
ENABLE_BITCODE=NO \
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS=NO \
GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS=NO \
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS=NO \
-allowProvisioningUpdates
Подписание не работает:
Check dependencies
[08:44:01][Step 8/14] Code Signing Error: No account for team "XXXXXXXXXX". Add a new account in the Accounts preference pane or verify that your accounts have valid credentials.
[08:44:01][Step 8/14] Code Signing Error: No profiles for 'com.xxxxxxxxxxxx.xxxxxxxxxxxx' were found: Xcode couldn't find any iOS App Development provisioning profiles matching 'com.xxxxxxxxxxxx.xxxxxxxxxxxx'.
[08:44:01][Step 8/14] Code Signing Error: Code signing is required for product type 'Application' in SDK 'iOS 11.4'
Что не помогло:
Очистить кэш xCode (просто удалив папку ~ / Library / Developer / Xcode / DerivedData)
Очистка цепочки для ключей от сертификатов с истекшим сроком действия
Проверено, что TeamId и appId точно совпадают с developer.apple.com
Оказалось, что у Mac есть 2 копии xcode.Обе копии удалены.Один переустанавливается.
после удаления параметра -allowProvisioningUpdates осталось 2 ошибки:
[09:16:31][Step 8/14] Check dependencies
[09:16:31][Step 8/14] Code Signing Error: No profiles for 'com.xxxxxxxxxxxx.xxxxxxxxxxxx' were found: Xcode couldn't find any iOS App Development provisioning profiles matching 'com.xxxxxxxxxxxx.xxxxxxxxxxxx'. Automatic signing is disabled and unable to generate a profile. To enable automatic signing, pass -allowProvisioningUpdates to xcodebuild.
[09:16:31][Step 8/14] Code Signing Error: Code signing is required for product type 'Application' in SDK 'iOS 11.4'
Если я открою проект из xCode,отключить автоподписание, выбрать профили инициализации, запустить сборку архива, он успешно завершен.Но мне нужно собрать проект из командной строки (TeamCity)