快速搭建Android CI/CD自动化构建系统

本文采用Docker部署Jenkins服务来实现自动化打包,宿主机环境是Ubuntu18.04,宿主机使用root身份

屏幕截图 2021-09-07 150806.png

0. 安装Docker

如无特殊说明,所有的命令默认在宿主机上执行

curl -sSL https://get.daocloud.io/docker | sh
复制代码

1. 安装Jenkins-master

1. 下载并运行Jenkins master镜像

docker run -d -p 18080:8080 -p 50000:50000 jenkins/jenkins:lts-jdk11
复制代码

打开启动日志查看,

docker logs 638cd
复制代码

找到如下这串密码并复制,例如下面

微信截图_20210903140744.png

参考文档

2. Jenkins master配置

此时,打开浏览器,输入your_host:18080, 我的是http://10.1.20.191:18080/ ,根据自己的情况输入,以下使用jenkins:18080代替,如不知道使用ifconfig查看

微信截图_20210902212429.png
将密码粘贴到管理员密码框中, 下一步,

微信截图_20210902212528.png

在自定义Jenkins这一步,选择安装推荐的插件,等待安装完成,紧接着设置管理员账号,至此,Jenkins master就设置完成了。

2. 安装Android SDK并设置数据卷

1. 拉取并启动thyrlian/android-sdk

docker run -d --name sdkc -v /home/android-sdk:/opt/android-sdk:rw -v /home/gradle_caches:/root/.gradle/caches thyrlian/android-sdk
复制代码

2. 修改sdk目录为可读写

docker exec -it sdkc bash # 进入sdkc容器
chmod -cR 777 /opt/android-sdk/ # 修改权限
exit # 退出容器
复制代码

参考文档

3. 安装Jenkins-agent

浏览器打开http://jenkins:18080/computer/new 节点名称输入android_agent_01, 勾选固定节点,点确定

屏幕截图 2021-09-07 154302.png

按图中填写,保存

image.png

复制其中-secret后的字符串

docker run -d --volumes-from sdkc:rw -e ANDROID_SDK_ROOT=/opt/android-sdk --init jenkins/inbound-agent -url http://hostip:18080 secret-string android_agent_01 # 将secret-string替换为你刚才复制的字符串, 还有hostip替换为你的主机ip
复制代码

参考文档

3. 配置Jenkins任务

image.png

  • 在源码管理这,根据需要选择你的工程地址,这里举例Git,输入仓库URL,若需要密码才能访问的仓库在Credentials处添加账号密码并选中,不再展开讲。

image.png

  • 勾选Add timestamps to the Console Output

image.png

  • 最后保存

4. 构建项目

  • 找到你刚刚创建的任务,点击立即构建

image.png

  • 可以点击下方构建序列号,查看控制台输出查看日志, 最后构建完查看安装包

image.png

5. 进阶

受限于篇幅与时间,下篇再讲

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享