赞
踩
目录
来到公司一两个月就被安排到了增量编译的研究与实现,还顺手从零开始配置了一台打包的服务器。奈何水平有限,花了很久的时间才把部门的自动化打包脚本稍微捋顺了一点,最终也实现了编译时间统计以及凑合用的增量编译,其中很多地方网上的资料并不多,就把自己踩过的坑与遇到的困难整理下来,一起学习。
由于公司是内网开发(吐槽一下这设计真的操蛋。。),作为ios开发经常需要将开发的代码编译打包并传至外网,自动化打包、上传、测试发布的一整套流程就成为了我们公司的刚需。
公司最原始的打包是用Jenkins进行的,需要使用的可以在网上找安装的资料,因为已经废弃了,所以我也没有自己操作体验过。后来建成了Pack平台用于持续CI/CD,由开发自己定义脚本与yaml配置文件生成step,由多个step生成pipeline(macOS由于特殊原因并不能保证pipeline相互隔离,step不被插队),而其中的脚本中就可以自定义编译的预处理、切换xcode版本、编译警告的检查、静态代码检测、.dSYM文件的导出等操作,或者自定义一些业务的操作,比如利用补丁进行代码更改等等,这些在后面会详细的说明。
新建的pipeline可以指定ip作为服务器进行打包,而对应的服务器在使用之前需要增加对应的配置文件以及执行进程用以支持,这部分由于不是我做的具体的代码也不是很清楚。。后续有时间会去请教一下平台开发,另外做业务真的太忙了!!!,其中的step可以用yaml语言配置文本框、勾选框、复选框等多种样式(图片等上班之后再放),操作性对于开发、产品、测试来说都比较友好,此外也负责执行对应的脚本以及对填写的内容进行业务层面的处理。
由于服务器配在机房,所以可以通过ssh或者屏幕共享进行操作。
第一需要配置git的ssh,公司的git账号必须有员工邮箱进行申请,所以相关的员工离职都会提示账号冻结。。。我来了没几个月已经碰到两次了(因为我还没转正,所以连个账号都没有),所以最好在一个公用的账号下进行配置,具体ssh的生成与配置的方法可以百度,比较简单就不废话了。
第二需要配置证书与描述文件,公司的描述文件与证书的配置都是通过plist与脚本实现的,其实也比较简单,后面会根据脚本进行细说,不然每次过期都配置一次岂不是太麻烦。手动配置的话,.p12的证书双击输入密码就能进行安装,描述文件需要拖进 ~/Library/MobileDevice/Provisioning Profiles目录下即可。如果报证书的错可以尝试把过期的描述文件进行删除,或者在钥匙串中把证书由用户栏拖至系统栏(注意证书和钥匙串要一起拖)
第三就是安装一些乱七八糟的包,用于检查代码编译警告的xcpretty、检查文件等等,内外网的情况可以在gem官网上下载gem包,在内网执行 gem install --local *.gem即可
第四是由于发现打包过程中code sign过程太慢了,但是连上代理之后就快很多,所以配到这种情况可以尝试下连上代理(我们公司的代理只能访问apple.com)
完成这些服务器用于打包的环境就基本完成了
待更新。。。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。