我在jenkins上设置了一个mac mini slave。构建过程成功,我的.app文件和.dysm文件等都已成功创建。
我已Pack application and build .ipa?
检查并定义了ipa文件名模式和输出目录。
当我运行构建过程时,它实际上创建了输出目录的完整路径,但是在路径的末尾,最终文件夹中没有任何内容。没有IPA。同样,.app和其他文件在工作区构建文件夹中成功创建。
如果我将输出目录留空或将其更改为其他位置,也无法正常工作。
Jenkins成功传达了这条消息:
** BUILD SUCCEEDED **
Cleaning up previously generated .ipa files
Cleaning up previously generated .dSYM.zip files
Packaging IPA
Finished: SUCCESS
但是,唉,没有IPA。有什么想法吗?
答案 0 :(得分:1)
我无法直接解决问题,所以我仍然对那些可能有更直接的解决方案的人的答案感兴趣,他们使用Xcode插件包和构建ipa选项。
相反,我删除了此选项(取消选中它)并为执行shell脚本添加了另一个构建阶段。
然后我添加了脚本from this SO answer(修改后供我使用),并且能够成功导出ipa。
/usr/bin/xcrun -sdk iphoneos PackageApplication -v "${RELEASE_BUILDDIR}/${APPLICATION_NAME}.app" -o "${BUILD_HISTORY_DIR}/${APPLICATION_NAME}.ipa" --sign "${DEVELOPER_NAME}" --embed "${PROVISONING_PROFILE}"
RELEASE_BUILDDIR
和BUILD_HISTORY_DIR
已更改为我自己的路径,并且不需要-sign和-embed,因为我使用与创建原始.app文件的配置文件相同的配置文件
我确实必须使用mkdir -p
来制作路径,否则它就不会成功
答案 1 :(得分:0)
所以我遇到了同样的问题,这就是我解决它的方法:
在Jenkins作业中,在configure接口的Advanced Xcode构建选项下,我指定了一个Build输出目录:$ {WORKSPACE} / builds。
我还添加了一个shell脚本,在Xcode构建阶段之前执行:
mkdir -p "${WORKSPACE}/builds"
现在,当我单击“打包应用程序并构建.ipa?”复选框时,指定.ipa文件名模式并使用输出目录:ipa,作业运行,成功,并给我一个.ipa我能看到在/ builds / ipa / {name} .ipa
的工作区中我希望这会有所帮助。
答案 2 :(得分:0)
和你有完全相同的问题。
除了"打包应用程序并构建.ipa",您还必须检查"解锁钥匙串?"可以在" Code sign& OS X钥匙串选项"。
此外,将钥匙串路径设置为: $ {HOME} /Library/Keychains/login.keychain
我的钥匙串密码与我的用户密码相同。如果您将该字段留空,您将看到您的构建在某个时刻冻结。在您启动jenkins的终端内,您将看到它等待您输入密码。
希望它有所帮助。