jenkins+git+gradle配置自动打apk包
1.配置全局
1.点击系统管理,然后点击系统配置,全局属性,勾选环境变量
1.新增GRADLE_HOME
键:GRADLE_HOME
值: /opt/frank/gradle/gradle-3.5-rc-1
1.新增ANDROID_HOME
键:ANDROID_HOME
值: /opt/frank/android/android-sdk-linux
下载android sdk
2.点击系统管理,然后点击全局工具配置
1.配置jdk
1.新增jdk
别名:jdk1.8
JAVA_HOME:/usr/java/jdk1.8.0_144
2.配置gradle
1.下载自己需要的gradle包
下载地址:http://services.gradle.org/distributions/
比如:下载gradle-3.5-rc-1-all.zip
[root@iZj6c7eeosj2t5vjw8rf4xZ gradle]# wget http://downloads.gradle.org/distributions/gradle-3.5-rc-1-all.zip
[root@iZj6c7eeosj2t5vjw8rf4xZ gradle]# unzip gradle-3.5-rc-1-all.zip
2.新增gradle
name:gradle-3.5-rc-1
GRADLE_HOME:/opt/frank/gradle/gradle-3.5-rc-1
1.添加相关插件
1.所需插件列表
- Git
- Gitlab
- Git Parameter
- Gradle Plugin
- Email Extension Plugin
- description setter plugin
- user build vars plugin
- build-name-setter
- Branch API Plugin
- SSH plugin
- Dingding[钉钉]
- Build With Parameters
- *
2.创建一个任务
1.新建一个任务;
2.输入任务名称,然后选择构建一个自由风格的软件项目,然后点击确认;
如:输入任务名称:WeShell
3.点击General tab然后填写项目配置的相关信息:
1.填写描述
如:描述为包壳项目自定义应用包名,应用名称,应用logo,应用包壳地址,服务器地址
2.勾选参数化构建过程然后填写相关配置信息和配置参数:
1,点击添加参数,选择Git Parameter:
输入
Name:BRANCH,
Description:打包分支;注意:需要分支支持jenkins自动打包
Parameter Type: 有Branch,Tag,BranchOrTag等可以供选择,这里针对的是你git项目需要展示哪些分支或者tag出来,这里笔者选择Branch,只展示分支供选择
2,点击添加参数,选择选项参数
输入
名称:BUILD_TYPE,
选项:
debug
release
描述: 打包类型 debug:调试包,release:发布包
3,点击添加参数,选择选项参数
输入
名称:FLAVORS,
选项:
dlM3
描述: 打包渠道,注意一定要选对打包分支,否则打包失败,如果为空打全部渠道
dlM3(聚房宝移动销售)
3,点击添加参数,选择选项参数
输入
名称:BUILD_TITLE,
默认值:WebShell(包壳)
描述: 本次打包名,最好起一个能记得的名字,方便后续查找
勾选清除空字符串
2.配置源码管理模块
1.选择git
Repository URL 输入:https://github.com/fuxingkai/WeShell.git
配置Git项目的URL,笔者测试用的是Github项目,并且传输协议选择的是HTTP,需要选择 Credentials 选项,选择通行证,第一次需要点击 Add 添加通行证;
Kind种类选择默认的 Username with password ,然后在Username和Pasword处分别输入Git账户的用户名和密码,其他的都默认,然后滚动到下方点击 Add ,然后在 Credentials 中选择我们刚才添加的通行证。
- Branches to build
Branch Specifier (blank for ‘any’) 输入$BRANCH
$BRANCH对应上面配置的打包参数
3.构建环境
勾选:Add timestamps to the Console Output
勾选:Set Build Name
Build Name 输入 #{BUILD_NUMBER}_{BUILD_NUMBER}_{BUILD_NUMBER}_{BUILD_TITLE}_分支BRANCH渠道BRANCH渠道{BRANCH}_渠道{FLAVORS}
Build Name 对应的构建列表每一次构建的标题
4.构建
增加构建步骤,选择Invoke Gradle Gradle
勾选:Invoke Gradle
Gradle Version :选择你默认配置的如:gradle-3.5-rc-1
Use Gradle Wrapper
Tasks:输入clean assembleFLAVORSFLAVORS{FLAVORS}{BUILD_TYPE} –stacktrace –debug
点击高级:然后勾选Pass all job parameters as Project properties这样配置的构建参数才能覆盖项目里面的gradle配置
5.构建后操作
1.增加构建后操作步骤:选择归档成品:
用于存档的文件 输入:/build/outputs/apk/.apk,/build/outputs/mapping/*/*.txt
2.钉钉通知配置:
jenkins URL :http://47.52.41.245:8080/jenkins/
钉钉access token: 输入钉钉机器人token 如356eb2294d8c92bf214b9f2633e9699043b25086ba9326c8ce82667c52d912d3
勾选在启动构建时通知
勾选构建成功时通知
勾选构建失败时通知
jenkins+git+gradle配置自动打apk包相关推荐
- appium自动化脚本之自动安装apk包到手机
Appium基础篇3-第一个appium自动化脚本之自动安装apk包到手机 这篇,我们开始来一个实战练习,如何通过appium自动把电脑上一个安卓程序包给安装到一台安卓手机中.在写脚本之前,我们需要统 ...
- 基于Jenkins+git+gradle+pgyer的android持续集成
前段时间搞了下CI持续集成工具,这里总结一下:供需要的朋友参考,错误之处还请指出,与君共勉. 主要步骤如下: 1. jenkins 安装配置 2.打包环境配置 3.系统配置及插件管理 4.新建项目.b ...
- Appium基础篇3-第一个appium自动化脚本之自动安装apk包到手机
这篇,我们开始来一个实战练习,如何通过appium自动把电脑上一个安卓程序包给安装到一台安卓手机中.在写脚本之前,我们需要统一下方法和工具.我们知道Appium和selenium一样都支持Java和P ...
- Jenkins+Gradle+Git自动打apk包,并上传到ftp
软件安装: 1.安装Jenkins.git.AndroidSDK 2.配置AndroidSDK环境变量 ANDROID_HOME:D:\Androidsdk PATH:%ANDROID_HOME%\p ...
- Jenkins Android gradle只能打包app-release-unsigned.apk
最近在通过jenkins自动打包安卓apk,但是测试打包的时候发现只能生成app-release-unsigned.apk,这个发到安卓手机因为缺少证书不能安装.解决办法是 1.在app/build. ...
- jenkins安装与配置---window,mis包直接安装
https://my.oschina.net/aibinxiao/blog/1457218 Jenkins在Windows下的安装与配置 已经在https://jenkins.io/下载好了Windo ...
- Android实现文件下载并自动安装apk包
安装: String str = "/CanavaCancel.apk"; String fileName = Environment.getExternalStorageDire ...
- android apk自动安装包下载,Android实现应用下载并自动安装apk包
安装: String str = "/CanavaCancel.apk"; String fileName = Environment.getExternalStorageDire ...
- Java script生成apk_lua脚本实现自动生成APK包
可以根据需要自行扩展了. 使用前tool path 还有 target path的前两个还是需要自己设置下. 一些小的函数 jit_file copy_file 我就不贴了 比较简单,用来luajit ...
最新文章
- python先序、中序、后序排序
- BZOJ1393 [Ceoi2008]knights
- SHT30温湿度传感器驱动设计分析及代码实现
- Servlet程序入门
- Python自省(反射)指南
- VS2015如何使自己的exe文件在别人的电脑上运行(找不到MSVCP140D.dll)
- python 不定参数_人生苦短,我学不会Python。——函数中不定长参数的写法
- Redis 优势以及性能问题
- [Android Studio] Android Studio如何快速生成get,set,tostring,构造函数
- 贺利坚老师汇编课程39笔记:用于内存寻址的寄存器同时引入BP
- C++ primer: C++标准库中vector类模板
- 推荐几个非常有用的工具
- 在小程序中如何使用svg图标
- 分布式系统故障容灾治理总结
- python中format格式化输出总结
- vue滑动窗口_vue-floating 浮窗组件、封装基于better-scroll的滑动组件、vue自定义手势指令...
- 移动通信核心网络技术总结(三)EPC网络的结构及原理
- 数字逻辑——卡诺图化简练习题
- 利用阿里云公共配音接口快速配音
- 150条经典装逼语录,都是经典