New*_*ewJ 3 macos xcode unity-game-engine ios jenkins
我正在尝试使用 Jenkins 构建 Xcode 项目。由 Unity Engine 生成的 Xcode 项目。我可以直接从 Xcode GUI 构建这个项目,但是当尝试通过 Jenkins 构建项目时,我在构建结束时收到以下错误:
Signing Identity: "iPhone Developer: MyName MySurname (XXXXXXXXXX)"
Provisioning Profile: "iOS Team Provisioning Profile: *"
(XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX)
/usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
/Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app: errSecInternalComponent
Command CodeSign failed with a nonzero exit code
** BUILD FAILED **
The following build commands failed:
CodeSign /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
(1 failure)
Build step 'Xcode' marked build as failure
Finished: FAILURE
Run Code Online (Sandbox Code Playgroud)
我尝试在终端中重现以下命令,它正常唤醒,没有任何错误:
/usr/bin/codesign --force --sign 37DF6AF254E5A4856B1BA024D199DEE3CE596A58 --entitlements /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/myapplication.app.xcent --timestamp=none /Users/Shared/Jenkins/Home/workspace/Xcode_Input/build/Release-iphoneos/myapplication.app
Run Code Online (Sandbox Code Playgroud)
它两次询问我的密码(以及 Xcode 的 Jenkins 作业设置中指定的相同密码),并且完成时没有任何错误。
我用来签署项目的钥匙串已解锁:security unlock-keychain login.keychain
问题是 - 下列行为的原因可能是什么?我怎么解决这个问题?
提前致谢!
Jenkins 正在通过 SSH 连接到盒子,但无法访问您的钥匙串。Jenkins 在执行构建之前需要解锁钥匙串。看来您已经了解如何通过密码提示解锁钥匙串。您需要让 Jenkins 在没有提示的情况下执行解锁。
让 Jenkins 在构建命令之前运行以下命令:
security unlock-keychain -p <YourPassword> ~/Library/Keychains/login.keychain
如果您不想将密码存储在构建的明文脚本区域中,Jenkins 提供了各种方法来存储秘密并将其作为变量检索。这是关于这样做的不错的文章:https://support.cloudbees.com/hc/en-us/articles/203802500-Injecting-Secrets-into-Jenkins-Build-Jobs
或者:
security unlock-keychain -p `cat ~/.file_with_your_password` ~/Library/Keychains/login.keychain
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2314 次 |
| 最近记录: |