Android jenkins 打包

Android jenkins 打包

大鱼 7,085 2019-04-20

一. 下载安装 参考 https://jenkins.io

都是中文, 过程就不说了

二. 启动

1. 启动

    ```
    brew services restart jenkins-lts
    ```

2. 初始密码登录

默认网址http://localhost:8080/
第一次登录需要安装插件,安装推荐的即可
(另外登录之后需要安装 Git Parameter)
974235219b1dd9cf9be879b.jpg

如图找到密码,登录即可

三. 配置基本开发环境

找到系统配置
9742352266d632f7332bd23.png

配置如下的环境变量
97423520663cae68dfb4440.png

四. 新建一个自由风格任务

974235225b585c520938cad.jpeg

五. 配置建好的任务

974235260727df2625fb67b.png

1. 配置打包策略

9742352c01b716688fd9813.png

2. 配置分支参数

9742352c4966f22fabe6975.png

3. 配置代码保存位置

9742352f9be1a8815a853ae.png

4. 配置源码

97423521334b991e0fb0406.png

5. 配置打包命令

./gradlew clean assemble$BUILD_TYPE --stacktrace -info

9742352aa9dd51e73b21e15.png

6. 添加打包结果文件复制 和重命名

# rename
buildType=$(echo $BUILD_TYPE | tr '[A-Z]' '[a-z]') 
cp $WORKSPACE/app/build/outputs/apk/${buildType}/app-${buildType}.apk $WORKSPACE/app/build/outputs/apk/$JOB_NAME-$BUILD_NUMBER-$buildType.apk
echo "move file success!"

974235281289d0112c4d102.png

7. 生成一个html 页,用于扫描之后显示apk地址

#create html
buildType=$(echo $BUILD_TYPE | tr '[A-Z]' '[a-z]') 
cd $WORKSPACE/app/build/outputs/apk/${buildType}
rm -rf $JOB_NAME.html
touch $JOB_NAME.html
 
cat << EOF > $JOB_NAME.html
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="width=device-width"/>
<title>$JOB_NAME</title>
</head>
<body>
 
<h3><a href="http://localhost:8080/jenkins/job/$JOB_NAME/$BUILD_NUMBER/artifact/build/outputs/apk/$JOB_NAME-$BUILD_NUMBER-$buildType.apk">$JOB_NAME-$BUILD_NUMBER-$buildType</a>
</h3>
 
</body>
</html>
EOF
#copy html to tomcat folder

97423528307d78c51b69db5.png

8.生成二维码

安装二维码生成工具
参见 https://github.com/sylnsfar/qrcode

pip install myqr

生成命令如下

# java -jar xxx/QRcode.jar url=xxx/test.apk image=qrcode.png save=xxx/xxx/
# java -jar /Users/richard/Documents/jenkins/QRCode.jar url=http://localhost:8080/jenkins/job/$JOB_NAME/$BUILD_NUMBER/artifact/build/outputs/apk/$JOB_NAME.html image=qrcode.png save=$WORKSPACE/app/build/outputs/apk/
# myqr https://github.com   -n github_qr.jpg   -d .../paths/
cd /Users/richard/Library/Python/2.7/bin/
./myqr http://localhost:8080/jenkins/job/$JOB_NAME/$BUILD_NUMBER/artifact/build/outputs/apk/$JOB_NAME.html -n qrcode.png -d $WORKSPACE/app/build/outputs/apk/

9.设置需要保存的文件

**/$JOB_NAME-$BUILD_NUMBER-*.apk,**/$JOB_NAME.html,**/qrcode.png

974235259056d0466363912.png

六.开始构建

9742352806b7d8046493aa1.png

over