Android持续集成之Jenkins 部署

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载请表明出处:http://www.cnblogs.com/cavalier-/p/7482878.html

0x00安装

准备工作如下:

Tomcat8.5下载地址

Jenkins下载链接

  • 1 将下载的jenkins.war包放至tomcat下的webapps目录

  • 2 浏览器直接访问如下链接即可

    ip:tomcatPort/jenkins/

  • 3 看到如下页面后,按照上面的提示,需要输入默认生成的管理员密码,在终端中输入如下命令

    cat /var/root/.jenkins/secrets/initialAdminPassword
  • 将终端中输出的密码填入输入框,随后点击Continue按钮

![屏幕快照 2017-08-17 上午9.51.23](http://oupvrckn2.bkt.clouddn.com/屏幕快照 2017-08-17 上午9.51.23.png)

  • 重点来了,Jenkins最强大的特点就是插件,点击上图的Continue后,会进入下面的页面

    ![屏幕快照 2017-08-17 上午9.57.25](http://oupvrckn2.bkt.clouddn.com/屏幕快照 2017-08-17 上午9.57.25.png)

  • 这里默认选择第一项即可(有的插件不一定能安装成功,但并不影响Jenkins使用),点击后进入如下自动安装界面

    ![屏幕快照 2017-08-17 上午10.02.49](http://oupvrckn2.bkt.clouddn.com/屏幕快照 2017-08-17 上午10.02.49.png)

  • 这里有可能出现下面这种情况,解决方法要么就retry一下,要么就Continue继续下一步(建议下一步,少装一个不影响使用)

    ![屏幕快照 2017-08-17 上午10.08.19](http://oupvrckn2.bkt.clouddn.com/屏幕快照 2017-08-17 上午10.08.19.png)

  • 来到下一步是创建admin用户,可以跳过点击

    Continue as admin,也可以创建一个Admin用户(这里推荐创建一个用户,因为后期创建很麻烦)随后点击

    Save and Finish,结束安装

    ![屏幕快照 2017-08-17 上午10.25.27](http://oupvrckn2.bkt.clouddn.com/屏幕快照 2017-08-17 上午10.25.27.png)

0x01配置Jenkins

Global Tool Configuration

  • 点击左侧菜单中的系统管理,再点击列表中的

    Global Tool Configuration选项,进入Global Tool Configuration配置页面

  • JDK模块:

    需要将自动安装选项去掉,随后填入:别名<随意填>、JAVA_HOME<填写本地的JAVA绝对路径>

  • Git模块:

    别名<随意填>、Path to Git executable<填入本地Git的绝对路径>

  • Gradle模块:

    点击新增Gradle,随后去掉自动安装选项,然后填入:别名<随意填>、GRADLE_HOME<填入本地Gradle的绝对路径>,这里建议配置多个,因为或许你所部署的工程需要不同的Gradle进行编译。

  • 最后点击最下边的Save按钮即可

系统属性

*点击左侧

```按钮,在列表中选择
```系统设置
```如下图所示:
![WechatIMG25](http://oupvrckn2.bkt.clouddn.com/WechatIMG25.jpeg)
*把环境变量选项勾上
![WechatIMG26](http://oupvrckn2.bkt.clouddn.com/WechatIMG26.jpeg) * 在里面的
```键```中填入```ANDROID_HOME```,```值``` 中填入你的Android Sdk路径 *最后点击最下边的Save按钮进行保存配置,此举是为了避免在打包时发生
```ANDROID_HOME not found```的情况 ##0x02新建一个任务
*在主页中找到创建一个新任务的按钮,如下图所示 ![WechatIMG27](http://oupvrckn2.bkt.clouddn.com/WechatIMG27.jpeg) * 输入任务名字后,选择
```构建一个自由风格的软件项目``` ,点击底部的 OK 按钮 * 打开的页面中,点击源码管理模块中的 Git 选项,由于我使用oschina的Git库且使用https协议,所以我这里填入仓库的克隆地址
* 点击 ad 按钮,使用默认配置,填入用户名密码即可,如下图所示: ![屏幕快照 2017-08-17 上午11.29.24](http://oupvrckn2.bkt.clouddn.com/屏幕快照 2017-08-17 上午11.29.24.png) * 点击 add 按钮后,下面的分支也可以填入其他分支名 * 随后点击构建 Tab滚动到最底部,选择
```增加构建步骤```,选择```Invoke Gradle script```,然后在 ```Gradle Version```这里选择你需要使用的版本 * 最后点击保存按钮,进入项目界面 ##0x03构建项目
* 在项目界面最左侧菜单中,点击
```立即构建```按钮
* 此时在左侧的历史菜单可以看到正在编译的任务,点击进去可以看到详情
* 左侧的菜单中 ```Console Output```点击后可以看到控制台的输出 ##0x04按时打包
* 在项目界面最左侧菜单中,点击配置,滑动到```构建出发器```,这里对里面的几个选项说明如下: 类型 | 描述
--------- | -------------
Build periodically | 定期进行构建
Build when a change is pushed to GitHub | 根据提交进行构建
Poll SCM|定期检测代码更新,如有更新则进行构建 * 定时器(Schedule)的格式,简述如下: ```MINUTE HOUR DOM MONTH DOW``` Type | Description | Range
--------- | :--------- | :---------:
MINUTE | Minutes within the hour | 0-59
HOUR | The hour of the day | 0-23
DOM | The day of the month | 1-31
MONTH | The month | 1-12
DOW | The day of the week,where 0 and 7 are Sunday | 0-7 通常情况下需要指定多个值,这时可以采用如下operator(优先级从上到下):
`*`适配所有有效的值,若不指定某一项,则以`*`占位;
```M-N```适配值域范围,例如7-9代表7/8/9均满足;
`M-N/X`或`*/X`:以X作为间隔; * 为了避免在多任务在同一个时刻触发构建时,最好配合`H`字符进行描述。
* 关于上面的定时器这里举个例子:
1. H 23 * * 1-5:工作日每晚23:00至23:59之间的某一时刻; ## 0x05 总结
以上是利用Jenkins持续集成的部署方式之一,欢迎支持。

Android持续集成之Jenkins 部署的更多相关文章

  1. linux-centos下持续集成工具jenkins部署使用教程

    centos下准备工作: 1.安装jdk环境 2.安装maven环境(用于构建项目) 3.git客户端(用于拉取源码) 此外码云还要准备一份java源码(springboot项目) 一.安装jenki ...

  2. 使用 Jenkins 搭建 iOS/Android 持续集成打包平台【转】

    背景描述 根据项目需求,现要在团队内部搭建一个统一的打包平台,实现对iOS和Android项目的打包.而且为了方便团队内部的测试包分发,希望在打包完成后能生成一个二维码,体验用户(产品.运营.测试等人 ...

  3. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(三):搭建jenkins集群环境

    写在前面 大家可以看到本文的配图,左边是jenkins单机环境,右边是jenkins集群.个中区别,不言而喻,形象生动. 前面我分别介绍了.net core 程序的多种部署方式(无绝对孰优孰劣): 1 ...

  4. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(二):部署

    前面又是废话 我之前写过: Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署 Asp.Net Core 程序部署到Linux(centos)生产环境(二):doc ...

  5. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

    2019/1/31更新,经过我一段时间的使用 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用d ...

  6. 持续集成之⑤:jenkins结合脚本实现代码自动化部署及一键回滚至上一版本

    持续集成之⑤:jenkins结合脚本实现代码自动化部署及一键回滚至上一版本 一:本文通过jenkins调用shell脚本的的方式完成从Git服务器获取代码.打包.部署到web服务器.将web服务器从负 ...

  7. .NET持续集成与自动化部署之路第一篇——半天搭建你的Jenkins持续集成与自动化部署系统

    .NET持续集成与自动化部署之路第一篇(半天搭建你的Jenkins持续集成与自动化部署系统) 前言     相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛 ...

  8. 【持续集成】jenkins安装部署从git获取代码

    一:持续集成的概念: 1.1:总体的概括 持续集成Continuous Integration 持续交付Continuous Delivery 持续部署Continuous Deployment 1. ...

  9. .NET 半天搭建Jenkins持续集成与自动化部署系统

    前言 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛.由于我们所做的系统业务复杂,系统庞大,设计到多个系统之间的合作,而核心系统更是采用分布式系统架构,由 ...

随机推荐

  1. (转)log4j(五)——如何控制不同目的地的日志输出?

    一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 1 老规矩,先来个栗子,然后再聊聊感受 package test.log4j.test5; /** * @author l ...

  2. linux下使用scp远程传输自动输入密码

    由于需要将A服务器的文件 远程传输到B服务器 但是scp命令每次都要手动输入密码 这样脚本执行太繁琐,所以讲A服务器和B服务器互信即可,具体操作如下: 首先在A服务器配置: mkdir -p ~/.s ...

  3. ORACLE - 管理控制文件

    在oracle中,控制文件极其重要,如果该文件损坏并在没有备份的情况下,数据库将无法启动,里面的数据也将无法读取恢复,一般情况下,对数据库配置好了以后备份控制文件: 1. 查看控制文件 SQL> ...

  4. null == undefined ?

    最近在看<JavaScript高级程序设计>一书,书中讲到相等操作符(==)时说,要比较相等性之前,不能将 null 和 undefined 转换成其他任何值,但要记住 null == u ...

  5. 1.配置vsftp服务器

    1.安装 vsftp yum -y install ftp vsftpd 2.查看配置文件所在路径 rpm -qc vsftpd 3.备份vsftpd文件 cp vsftpd.conf vsftpd. ...

  6. Appium环境搭建(Windows版)

    Appium介绍 Appium是一个开源.跨平台的测试框架,可以用来测试原生及混合的移动端应用.Appium支持iOS.Android及FirefoxOS平台.Appium使用WebDriver的js ...

  7. 20. Valid Parentheses【leetcode】

    20. Valid Parentheses Given a string containing just the characters '(', ')', '{', '}', '[' and ']', ...

  8. 【NO.3-1】Jmeter - 在Windows配置HOSTS的方法

    在Windows配置HOSTS 那么还记得Windows如何修改HOSTS文件吗? (1) 进入到C:\Windows\System32\drivers\etc (2) 通过”记事本”来打开hosts ...

  9. Kettle安装和配置

    0x01 Kettle软件概览 Spoon:集成开发环境 Kitchen:作业的命令行运行程序,可以通过Schell脚本来调用 Pan:转换的命令行程序 Carte:轻量级的HTTP服务,后台运行,监 ...

  10. iostat磁盘IO命令详解

    Linux IO 实时监控iostat命令详解 简介: 对于I/O-bond类型的进程,我们经常用iostat工具查看进程IO请求下发的数量.系统处理IO请求的耗时,进而分析进程与操作系统的交互过程中 ...