一、使用Xcode Cloud 的要求
(1)开发者账户要求
- 已加入Apple Developer Program
- 向xcode加入Apple ID
- App Store Connect上有app 记录或者可以创建一个app记录
(2)Project和workspace要求
- Project或者workspace使用Xcode
- 项目使用shared schemes
- 为scheme设置archive action
- 使用New Build System(Xcode 14默认使用新的构建系统)
- 项目的依赖和额外的第三方工具是否支持xcode cloud(待确定),如果不支持可以Making dependencies available to Xcode Cloud.
- 使用自动代码签名
- 在Signing&Capabilities中设置bundle ID,如果使用.xcconig,看Review Xcode Cloud workflows
(3)Source control要求
- 使用git作为代码控制工具
二、使用Xcode Cloud进行持续集成和交付
1、概览
Xcode Cloud的CI/CD系统使用Git来提供源代码控制、代码集成,使用xcode等来build、test工程,结合TestFlight和App Store Connect来提审和发布app,Xcode Cloud提供给开发者的便利有以下几点
- 自动build 和 test代码
- 自动、频繁的在苹果设备的模拟器上测试app
- CI/CD流程中的错误,Xcode Cloud会发出通知来提醒
- 使用TestFlight给测试和成员发新的版本
- 在app store上提供新的可供审核的app 版本
- 使用Xcode和Apple的云基础设施协作开发自己的软件。
2、自动构建和测试
通过Xcode Cloud可以用很少的时间在多种类型设备上build、run、test工程,并且发现问题之后通过邮件发送结果,也可以在xcode和app store connect上查看
For more information about automatically building your project with Xcode Cloud, see Configuring your first Xcode Cloud workflow.
For more information about testing your code, see Testing your apps in Xcode and Adding unit tests to your existing project.
3、持续交付
代码经过CI之后就进入CD阶段,通过Xcode Cloud可以完成使用TestFlight将新版本自动交付(CD)到测试人员,当然也可以提交审核,也可以导出archive到自己的server中
####4、使用Xcode Cloud进行协作软件开发
Xcode可以创建pull requests、review代码,合并代码到代码仓库,可以配置Xcode Cloud再检测到新的PR或对现有PR的更改时,在临时生成环境中合并相关分支,并自动生成项目并运行测试以验证合并的代码。验证更改后,Xcode Cloud会向PR添加一条状态消息,通知您结果。
目前:Xcode Cloud暂不支持公司内网、需要VPN环境的git仓库的