一切的一切都源自于“懒”,iOS开发过程当中固定时间版本Release发布,本身手动Xcode Archive一下也不以为什么,但临时的QA来要求测试,会令我这种“易烦躁”的开发者以为麻烦,甚至也可能打断我当前的手头工做,由于极有可能你代码撸了一半未测试及未提交,却须要打包一个版本库中小修小改的版本。因此只能遍寻方法来解决这种问题,解脱本身。html
其实不管哪一种你但愿开发不受打扰的打包方式,前提都是你须要另外一台专门的 Mac 打包设备。ios
大体亲测了三种打包方式: Jenkins + Xcode plugin, Mac OSX Server + Xcode Bot, Shell命令脚本,这里大体记录下其中的一些过程和坑。shell
安装 Jenkins , 两种方式: 官网下载pkg 或 brew, 这里我直接用 brew 安装的xcode
安装完成以后,直接终端里 jenkins 就能启动,默认端口 8080,你能够在 safari 中经过 http://localhost:8080/ 来进行访问app
若是须要中止 Jenkins 服务的话,能够直接经过访问 http://localhost:8080/exit 来完成工具
接下来讲到 Jenkins 的配置: 须要在 Manage Jenkins 中的 Manage Plugins 查找并安装 Git plugin, Keychains and Provisioning Profiles Management, Xcode integration</p>测试
以后仍是在 Manage Jenkins 下 会有Keychains and Provisioning Profiles Management 这是一个证书管理工具,你须要将一些打包所须要的证书信息(包括你钥匙圈中证书所属的keychain以及provision)添加到这里ui
随后开始建立项目,以前添加的 Git plugin 信息,如图:spa
Build Environment 中的 Keychains and Code Signing Identifies 对应选择以前在 Keychains and Provisioning Profiles Management 中 添加的对应信息,如图:
Mobile Provision Profile 中对应选择以前在 Keychains and Provisioning Profiles Management 中 添加的对应信息,如图:code
Xcode 部分按照本身的需求勾选填写本身的项目信息,值得注意的是,项目中有Cocoapods,必定要填写 workspace 的 xcworkspace 文件(个人项目Git中是带有Pods文件夹的,若是只带有Podfile文件,而忽略Pods文件夹的话,还须要 Add build step 中添加 Execute shell来执行对应的pod install 或 update 等操做),如图:
至此,Jenkins的配置部分基本就结束了,这里值得注意的有几点:
接下来说两个Xcode中会遇到的问题:>
这里我并无去作和蒲公英或Fir的集成,若是有须要能够看一下下面两篇参考: