第一节 配置证书管理插件 Keychains and Provisioning Profiles Management
第 1 步
前往插件位置
第 2 步
点击"选择文件"
第 3 步
要找到你电脑当前用户的钥匙串文件,在弹出框按 Command + Shift + G, 然后输入下面的路径,选择钥匙串,然后确定
/Users/当前用户名/Library/Keychains/login.keychain
第 4 步
点击上传 但是 有坑! 有坑! 有坑!
第 5 步
在点击了 "Upload" 之后, 填写你电脑的密码和你开发证书的名字. 直接去你的钥匙串里面,找到你的开发证书, 拷贝一下名字就可以,然后保存.
第 6 步 (重点)
说了第4步有坑. 因为第4步那个上传 keychain貌似根本没有什么卵用.
把 Library 下面的 Keychains 文件夹和 MobileDevice 文件夹拷贝到 Jenkins 所在的目录, 一定要是整个文件夹拷贝,具体如下图所示:
/Users/当前用户名/Library/Keychains/login.keychain
/Users/当前用户名/Library/MobileDevice
/Users/Shared/Jenkins/Library
另外,如果你发现你的 Jenkins 目录下面没有 Library 这个文件夹,很可能是 Jenkins 没有正确安装. 我在拷贝的时候发现 Jenkins 下没有 Library 文件夹,就自己手动建了一个, 然而并不能最终不能正常打包.最后是把 Jenkins 删了重装.
第 7 步 (重点)
更改 keychain 的访问权限,去往 Jenkins 目录下面的 keychain 文件,点击打开,然后更改开发证书的访问权限. 如下图.(我并不知道这一步是不是必须要做的.没有去实验,但是看了网上很多教程,有的教程这么做了.)
/Users/Shared/Jenkins/Library/Keychains/login.keychain
第二节 创建打包工程
第 1 步
如下图创建一个新工程
第 2 步
配置代码仓库,我公司使用的是 Git 仓库, 在这里我填写的是 SSH 地址. 填完了之后是报错的
第 3 步
点击上图红色方框里的 "add" 按钮,会出现配置 Credentials框, 或者你可以直接去 Jenkins 的首页,找到 Credentials 进行配置都是可以的.
1."Kind" 选择 SSH
2."Username"取个名字
3.在终端打开本地 SSH 文件夹(如果你电脑没有 SSH, 参考这个: 如何生成SSH key
open ~/.ssh
4.用记事本打开 "id_rsa" 文件,把里面的内容全部复制放到 "Private Key" 里面
5.保存
这里我用的是 SSH 连接代码库, 如果使用用户名和密码也是可以的,参考文章 Jenkins+xcode+SVN+fir自动打包
第 4 步
回到配置 Git 的页面,选择你刚才添加的 key, 如果还报错!!! 那就是没有正确配置, 这时候你可以检查一下在代码仓库里面,你的账号下, SSH key 是否添加进来了. 这个 SSH 一定是要当前电脑生成的,不要从你旧电脑里面拷贝过来,不管用, 你可以把新电脑生成的 SSH Key 在你的代码仓库账号中添加进去,就可以继续使用了.
第 5 步
在 "Build" 中选择 "Xcode",如下图
第 6 步
选择了 "Xcode" 之后如下, 点开这些设置项
第 7 步 (重点)
配置 General build settings
第 8 步 (重点)
配置 Code signing & OS X keychain options
第 9 步 (重点)
配置 Advanced Xcode build options
第10步
你可以打包了
下一个: Jenkins+Xcode+Git - 搭建持续构建环境 - 第五章 错误合集
后续
和 Jenkins 一路走来,经历了各种坑, 或许我看到的 Jenkins 和大家看到的 Jenkins 不一样. 这里我记录了自己在公司配置 Jenkins 的经历.
以下附上爬坑之路各路 Jenkins 玩家的文章,还是挺有用的,感谢你们的指引:
Jenkins+xcode+SVN+fir自动打包
iOS使用Jenkins+Xcode+fir 搭建持续集成环境
IOS:使用jenkins实现xcode自动打包
使用Jenkins搭建iOS开发的CI服务器
Jenkins+git+fir搭建持续集成环境(超详细搭建教程)
Jenkins+GitHub+Xcode+fir搭了一个持续集成环境
IOS开发之最新最全的持续集成解决方案
IOS用Jenkins持续集成笔记
iOS使用Jenkins+Xcode+fir 搭建持续集成环境
iOS 通过Jenkins 自动构建ipa
基于 Xcode 8.3+,利用jenkins持续集成iOS项目