我試圖運行詹金斯自動化xcodebuild聯編,但我遇到了錯誤不允許Xcode中,從詹金斯/ SSH協同設計錯誤 - 「用戶交互不允許」
用戶交互。退出碼1
我已經提到"User interaction is not allowed" trying to sign an OSX app using codesign和其他類似的線程 命令/ usr/bin中/協同設計失敗了,但沒有解決方案似乎正確地糾正錯誤。
以下是我已經嘗試過:
我已經允許所有項目訪問鑰匙串,我還特意加入協同設計的「總是允許」列表(如在這裏完成https://stackoverflow.com/a/22637896)
我已設置鑰匙串不會自動鎖定超時,無論是通過Keychain Access的設置還是通過命令
security set-keychain-settings -t 3600 -l <KEYCHAIN>
我已經打過電話
codesign --sign <CODE SIGN IDENTITY> --force ...
項目編譯之前(更具體地說,該解決方案https://stackoverflow.com/a/20208104), 雖然這成功地構建了項目,我不認爲在編譯之前代碼簽名是正確的或可靠。 (編輯:從詹金斯運行時,這也失敗了)
這裏是命令我執行:
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)運行完全相同的命令會導致錯誤。
預先感謝您的幫助!
jenkins是否可以訪問'/ usr/bin/codesign'? – Opal 2014-10-21 05:23:10
是的,它有訪問權限 – reyes20 2014-10-21 16:27:58
沒有其他的想法:/前一段時間是開發iOS項目的CI工具和codesigning是一個噩夢。 – Opal 2014-10-21 16:30:56