持续集成实施(十二)——Xcode Server配置
持续集成测试工具在mac中有使用较为频繁的Xcode Server服务器,它号称集成了git版本管理和持续集成服务,而且还有文档管理的功能。如下图所示:
下面简单描述一下配置过程,当然很多细节还在具体摸索过程中,当前只是跑通了mac客户端和mac Xcode Server服务端。
一、配置Xcode Server服务器
1、apple给开发者可以凭开发者账号免费兑换os x server。免费兑换地址
https://developer.apple.com/osx/download/
2、下载os x server后点击安装。
3、打开 Server 应用,以查看 OS X Server 中提供的服务列表。选择“Xcode”。
点按“选取 Xcode”按钮,然后在“应用程序”文件夹中选择“Xcode”。Xcode 服务将自动启动。
二、配置Xcode客户端
1、打开客户端上的xcode然后,选择 XCode 的Preferences,然后选择“Accounts”,在底端点击加号按钮,选择“Add Server”。效果如图所示:
2、打开xcode>product>create bot
3、填写bot名称,选择Xcode Server服务器
4、Actions:选择执行的动作
a、对代码进行静态分析
b、对代码进行单元测试
c、生成archive包(可以选择是否生成用户安装包)
5、cleaning:选择在何时清理项目,有几个选项(总是、每天、每周、从不)
6、configuration:选择编译配置(Debug、release)
7、选择在何时Xcode Server服务器开始持续集成,有几个选项(定时、在有新代码提交时、手动)
8、Before Integration 在开始持续集成前执行的脚本
9、 After Integration在持续集成后执行的脚本
三、Xcode Server服务器证书配置
需要注意的是iOS最变态的就是证书管理了,这里也同样如此需要注意证书的配置。
1、配置Certificates
打开钥匙串,将iPhone Developer: xxx和iPhone Distribution:xxx导出为.p12文件
导入装OS X Server的MAC的钥匙串中,这次需导入到钥匙串系统中,而不是登录中,持续集成生成包时证书由/usr/bin/codesign管理,所以需将codesign添加为允许访问证书的程序,在显示简介中选择 访问控制 >始终通过这些应用程序访问 中点击加号,开始选择/usr/bin/codesign程序。选择完成后点击确认。由于usr是隐藏文件,在选择时使用快捷键 CMD+SHIFT+. 显示隐藏文件
2、将Provisioning Profiles拷贝到Xcode Server
Xcode客户端描述文件保存在以下文件夹中User/Library/MobileDevice/ProvisioningProfiles
Xcode Server服务器描述文件保存在以下文件夹中 /Library/Developer/XcodeServer/ProvisioningProfiles,将Xcode客户端路径下的证书保存至Xcode Server服务器对应路径下
四、开始构建
可以选择在客户端mac xcode内进行构建,或者mac xcode server内构建,若在xcode server内构建,并可以看到结果如图所示: