随着最近发布的Apple软件,我找不到任何使用新的Xcode 6.1,OS X Server 4和TestFlight(Apple的alpha/beta分发平台)进行持续集成和部署的最新解决方案.经过几个小时的挫折,我能够让一切顺利进行.我分享这一点,希望我可以挽救你们中的一些人不必这样做.
这篇文章是Matt Vlasach在这里找到的博客文章的更新版本.
无论如何,这是步骤......
1.创建和分享新计划
在Xcode中打开项目
导航到顶部栏并选择"产品">"方案">"管理方案"
创建新方案,然后单击"共享"复选标记
2.配置Scheme Archive Post-action
导航到顶部栏并选择"产品">"方案">"管理方案"
选择新方案,然后单击"编辑"
展开"存档"下拉列表,然后选择"后期操作"
单击底部的"+"以创建"New Run Shell Script"操作
复制此脚本并编辑"<>"标记中包含的5个值以匹配您的环境
3.将分发标识和配置文件安装到OS X Server上
注意:这些步骤应在运行OS X Server的Mac上完成
如果您没有安装有效的分发证书,请为您的钥匙串创建(或导出)分发证书
证书将默认为钥匙串中的"登录"类别,只需将证书拖到"系统"类别(位于钥匙串访问应用程序的侧栏)
将所需的配置文件复制到/ Library/Developer/XcodeServer/ProvisioningProfiles /
注意:您需要更改文件夹权限才能访问它
提醒:确保已使用计算机上安装的分发证书对提供配置文件进行了签名
4.更改代码签名资源规则路径
注意:此步骤是Xcode问题的解决方法,似乎已在Xcode 6.1中重新引入
在Xcode中打开项目
导航到"构建设置"
在"代码签名"部分中,添加$(SDKROOT)/ResourceRules.plist
"代码签名资源规则路径"
5.提交对远程存储库的更改
提交并推送对远程存储库的更改
6.创建和配置Xcode Bot
注意:这些步骤应在运行OS X Server的Mac上完成.此外,如果您使用SSH访问项目的git存储库,则有大量资源可指导您完成其他步骤,以便允许您的Xcode机器人访问您的存储库.
从远程存储库克隆项目(如果需要)并在Xcode中打开
导航到顶部栏并选择"产品">"创建机器人..."
选择您创建的方案
输入用于访问项目存储库的凭据(如果需要)
选择所需的计划频率,操作等,并创建机器人
完成这些步骤后,您应该看到bot运行集成,它应该从远程存储库克隆您的项目,构建它,并将其上传到TestFlight!
注意:如果您正在使用CocoaPods,则在创建新方案时,请确保将目标设置为工作区.此外,由于Xcode机器人和CocoaPods仍然无法很好地协同工作,因此您的.gitignore中没有与CocoaPods相关的任何文件.有解决方案可以防止必须跟踪存储库中的所有这些文件,但我还没有找到可靠的解决方案.