相信很多同行的程序猿都遇到这种情况,自己正在自己的分支上快乐地敲着代码,忽然测试妹妹跑过来对你说:“我需要个X.X.X版本的包,帮忙给打个呗”,可能因为是个美眉,你会乐意此事,如果是个粗老爷们,可能你就该骂街了。当然,以上都是乐子。
远程打包的意义不止于此,尤其对于Android项目来说。当你的项目需要打上百个渠道包时,当不停的完善bug并测试时,当你已经下班却又走不掉时,and so on,使用jenkins打包也就有了那么点意思。
好了,不废话了。我就对我参与的jenkins打包过程与大家相互学习下。
首先,当然是去jenkins官网下载相应的文件,jenkins.io,有具体的官方安装教程及文档,此处不再多说。
此处贴上相关学习资料:www.cnblogs.com/itech/archive/2011/11/23/2260009.html
当完成安装后就这吊样:
接着,就需要下载项目所需要的各种插件,点击系统管理,下载需要的插件并配置。比如java的jdk,android的sdk等等。由于自己参与的工作还需要IOS打包,也下载了IOS编译需要的插件。当然,这些插件中有些是需要不定时更新的。截取部分图如下:
接着进入Android项目打包步骤:
我司的Android项目是采用Android Studio及Git来做开发,故而打包是gradle工具。当然也可以使用Ant来打包,这需要在选择插件的时候选择下载Ant。
新建一个项目以Android_Test为名的自由风格的项目,点ok结束。
点击Git选项,输入代码仓库的git地址及相应的版本分支信息
接着添加执行脚本(单包示例):
1.导入相应的编译大包环境
2.执行打包
3.更改apk名字
4.将新包(apk)上传到服务器
5.将新包的服务器下载地址传递到下载页面
执行完打包完后需要配置apk下载界面,不过这需要你对服务器操作稍微熟悉点。当然也可以不用配置,直接去jenkins的工作区间相应的目录(app/build/output/apk)下面去下载,不过不太方便。
下面配置apk下载页面:
1.将上面步骤5传递的地址传递到该下载界面
2.初步配置页面信息
3.配置页面,新建一个自由风格的项目,命名上图的页明
4.登入服务器,并html下载页面及显示的信息(1.登录需要的key2.登录的服务器地址)
5.创建页面
6.编辑页面信息,我编辑有apk名称,打包日期,版本号,下载链接四个信息(命令vi index.html)
7.添加脚本
(此处注意的是行号必须要与步骤6 的信息对应一致,不然会出问题)
好了,到此处,基本简单的完成了Android项目的配置,点击项目的立即构建就可以自动打包了,然后对应的html页面下载apk文件
再来说一说使用jenkins打包的优化方案
1. 构建打包前删除上次构建生成的工作空间
2.设置
3.由于jenkins会保留编译信息,定期(如果迭代不是很快的话半年或者更长)登录服务器清理一下日志信息。
最后厚颜贴上同事(大王)关于使用jenkins对IOS项目打包的文章链接(172.17.0.18/iOS/Jenkins),希望对所有的初步接触jenkins的同行有所帮助。
下次说一说使用jenkins打N多渠道的相关配置。谢谢🙏