我让Jenkins Master在Ubuntu的Aws实例上运行并创建了mac笔记本电脑作为奴隶,当我在mac中运行Xcode时,loptop构建成功但是当我从Jenkins触发它时它正在给予它。
error :
Check dependencies : No profiles for 'com.xyz.abc' were found: Xcode couldn't find a provisioning profile matching 'com.xyz.abc'. Code signing is required for product type 'Application' in SDK 'iOS 10.2'
* ARCHIVE FAILED * The following build commands failed: Check dependencies (1 failure) Build step 'Xcode' marked build as failure.
Ps:
我已经尝试阅读上一篇文章但其中大部分都是让Jenkins在MAC上运行,xcode也在同一台服务器上运行,这不是我的情况。
由于我能够在xcode中运行我的项目,我觉得我的代码签名&配置文件是正确的。此外,现在我可以使用创建IPA Xcode选项:
产品 - >在Mac笔记本电脑的Xcode中存档
那为什么jenkins无法创建ipa?
我还将login.keychain中的所有键移动到system.keychain
我使用java slave-agent.jnlp将jenkins master(ubuntu)连接到slave(mac)
Jenkins控制台输出:
=============================================== ============ ==可用的配置文件 [ios] $ / usr / bin / security find-identity -p codesigning -v
27)XXXXX“Mac开发者:Ashish Karpe(YYYYY)”
这与mac笔记本电脑中的xcode类似,所以我无法弄清楚她的错误!
答案 0 :(得分:4)
最后我得到了解决方案,现在我可以看到我们可以使用MAC笔记本电脑作为奴隶从Jenkins Master(Ubuntu AWS实例)构建IPA。
我的错误是创建了太多的配置文件。当我使用一个配置文件(10位数的开发团队ID)时,我在Mac笔记本电脑上使用Xcode这是正常工作所以我在Jenkins方面使用了相同的但是它失败了!
此外,Jenkins在Jenkins master上配置了配置文件时显示了所有检测到的配置文件,并尝试使用另一个10位数的开发团队ID。
现在我可以使用Jenkins构建创建IPA,但我不确定为什么我在Xcode中工作的配置文件有效但在Jenkins中没有工作。
因为,我的任务是在这里将其标记为答案,以防万一其他人面临类似问题,他可以尝试使用10位数的开发团队ID来使其正常工作!
希望这样可以帮助别人,因为我很沮丧并且开始讨厌IOS部署!