• 对于注定会优秀的人来说,他所需要的,只是时间!
  • 手懒得,必受贫穷,手勤的,必得富足----《圣经》
  • 帮助别人,成就自己。愿君在本站能真正有所收获!
  • 如果你在本站中发现任何问题,欢迎留言指正!
  • 宝剑锋从磨砺出,梅花香自苦寒来!

<四十>Jenkins实战应用–最近配置安卓iOS打包本地化流程中一些值得记录的内容

Jenkins eryajf 12个月前 (12-14) 1020°C 已收录 0个评论
本文预计阅读时间 6 分钟

公司这次的打包平台是测试同学搞的,Jenkins部署在Mac电脑,看到他把包搞到了三方,因此打算一起拉回到本地。

1,NGINX的准备工作

Mac电脑很方便,因此使用docker先来跑两个NGINX虚拟主机:

$ docker run -itd --name erya -v /Users/liqilong/eryajf/docker/nginx/test1:/apk -v /Users/liqilong/eryajf/docker/nginx/test2:/er -v /Users/liqilong/eryajf/docker/nginx/test1/default.conf:/etc/nginx/conf.d/default.conf  -p 801:800 -p 802:801  daocloud.io/library/nginx:1.15.9-alpine-perl

其中test1作为apk包的目录,test2作为二维码的目录,用到的default.conf文件如下:

$ cat default.conf
server {
        listen       800;
        server_name localhost;
        charset utf-8;
        location / {
                root  /apk;
                autoindex       on;
                autoindex_exact_size    off;
                autoindex_localtime     on;
        }
}

server {
        listen       801;
        server_name  localhost;
        charset utf-8;
        location / {
                root /er;
                autoindex       on;
                autoindex_exact_size    off;
                autoindex_localtime     on;
        }
}

启动之后,访问localhost:800即可看到每次的包,访问localhost:801即可看到对应二维码。当然在Jenkins中需要用IP进行访问。

2,安卓项目的配置

安卓的打包,依然需要下载制作二维码的开源程序,基本上这个思路都还比较清晰简单:

脚本内容:

mv /Users/zxmren/.jenkins/workspace/test_android/app/build/outputs/apk/release/app-release.apk /Users/zxmren/nginx/apk/wpt-$BUILD_ID.apk

java -jar /Users/zxmren/nginx/jar/qr.jar url=http://192.168.3.3:800/wpt-$BUILD_ID.apk image=wpt-$BUILD_ID.jpg save=/Users/zxmren/nginx/er/

就OK了。

3,iOS的曲折配置之路

现在比较尴尬的是iOS的情况,一开始不了解,依旧按照安卓的思路进行配置,后来发现iOS打出来的ipa包,手机扫了之后并不能直接安装,非常尴尬,因为这个坑,耽误了几个小时,直到后来在GitHub看到了一个开源程序:ios-ipa-server

寻找解决方案的过程中了解到了ipa的包想要安装顺利,需要一个plist的文件进行配置,而开源程序,正是做了这个事情。

这个程序能够让打好的包直接转化成可安装,然后提供二维码用于下载,先在主机安装软件:

npm i -g ios-ipa-server

命令使用方式如下:

ios-ipa-server -i 192.168.3.4 -p 666 /media/ipa/

/media/ipa/下放的是每次打好的ipa包,这个软件优秀的是,后续再放进来的ipa包,也会自动转化成可用的,所以只需要守护进程(这里用的tmux)运行这个程序,然后每次构建的包放到这个目录下就可以了。

这个时候会返回两个二维码,以及两个链接,第一个是ca证书,可以忽略,第二个才是重点:

接下来的操作基本上就差不多了,因为这个二维码URL是固定的,所以可以在Jenkins里边也固定一下,把这个URL打成二维码。

同时也可以在项目的说明信息当中添加一下说明,从而易于使用:

其中用到的保留五个版本的脚本,这里也记录一下:

cat keep-five.sh

#!/bin/bash

file_path="/media/ipa/"
file_name="*.ipa"

while true
do
A=`ls $file_path/$file_name | wc -l`
B=`ls -lt $file_path/$file_namt | tail -n 1 | awk '{print $9}'`
if [ $A -gt 5 ];then
   rm -f $file_path/$B
else
   break
fi
done

weinxin
扫码订阅本站,第一时间获得更新
微信扫描二维码,订阅我们网站的动态,另外不定时发送WordPress小技巧,你可以随时退订,欢迎订阅哦~

二丫讲梵 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明<四十>Jenkins实战应用–最近配置安卓iOS打包本地化流程中一些值得记录的内容
喜欢 (0)
[如果想支持本站,可支付宝赞助]
分享 (0)
eryajf
关于作者:
学无止境,我愿意无止境学。书山有路,我愿意举身投火,淬炼成金!永远不要忘记,激情的奋进,就是美好的未来!

您必须 登录 才能发表评论!