Linux下Jenkins+git+gradle持续集成环境搭建

来源:IT165收集  发布日期:2014-08-22 21:45:50
 
  • 一、项目介绍 和 linux 环境搭建

    本教程讲解 Linux下Jenkins+git+gradle 持续集成环境搭建,后续会加入 gerrit代码审核 和 robotium自动化测试

    1、基本流程如下:

    androidstudio-- gerrit --- git(github) ----jenkins ---gradle ---- robotium 结果 使用AndroidStudio 开发,提交到gerrit进行代码审核,审核后提交给git(可以自己搭建git服务也可以使用github),jenkins 监听git的提交情况 来触发build操作,使用gradle构建后,使用robotium自动化测试。

    2、环境准备

    pc :AndroidStudio 开发环境、SecureCRT
    linux:jdk、tomcat、git、AndroidSDK、gradle、jenkins

    3、使用netstat -tl或service ssh status查看ssh服务是否开启,如果没有开启,用service ssh
    restart开启,如果没有安装,使用sudo apt-get install openssh-server安装ssh,就可以用
    SecureCRT 在pc端 操作linux了。

    备注:常用命令

    ifconfig
    ping 192.168.5.1

    cat /proc/version
    uname -a #可以看到是系统是32位还是64位
    cat /etc/issue
    sz 下载 rz 上传


    二、JDK、tomcat、git 的安装

    (一)、JDK安装

    1、下载jdk-6u45-linux-i586.bin
    2、./jdk-6u45-linux-i586.bin 安装
    3、把 编译后的jdk文件夹 移动到 /usr/share
    4、设置环境变量

    备注:常用命令
    sudo apt-get install vim

    i 进入编辑模式

    esc 返回命令模式

    :wq 保存退出
    :q!,回车。放弃更改退出

    sudo vim /etc/profile

    JAVA_HOME=/usr/share/jdk1.5.0_05

    PATH=$JAVA_HOME/bin:$PATH

    CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    export JAVA_HOME

    export PATH

    export CLASSPATH

    source /etc/profile

    rm -rf

    mv -f

    ================================

    (二)、tomcat 安装

    1)下载apache-tomcat-6.0.41.tar.gz

    2)#tar -zxvf apache-tomcat-6.0.41.tar.gz ;//解压

    3)#cp -R apache-tomcat-6.0.41 /usr/share/tomcat ;//拷贝apache-tomcat-6.0.41到/usr/share/下并重命名为tomcat

    4) /usr/local/tomcat/bin/startup.sh; //启动tomcat

    显示 Using CATALINA_BASE: /usr/local/tomcat

    Using CATALINA_HOME: /usr/local/tomcat

    Using CATALINA_TEMDIR: /usr/local/tomcat/temp

    Using JAVA_HOME: /usr/java/jdk1.6.0_01

    到此tomcat已经安装完成,现在使用浏览器访问 http://localhost:8080,出现tomcat默认页面,说明已经安装成功。

    sudo chmod -R 777 tomcat #-R 递归

    当然也可以不用Tomcat直接启动Jenkins,因为他已经内嵌了Jetty (类似于tomcat)
    ==================

    (三)、安装git

    sudo apt-get install git

    SCM 工具(SVN、Git、CVS、Mercurial等)


    三、gradle 和 android sdk 的安装

    (一)、安装gradle

    1. 1、解压gradle
    1. unzip gradle-1.12-all.zip
    1. 2、配置gradle 的环境变量
    1. sudo vim /etc/profile
    1. GRADLE_HOME=/opt/gradle-1.9
    1. PATH=$GRADLE_HOME/bin:$PATH
    1. export GRADLE_HOME
    2. export PATH
    1. source /etc/profile

    (二)、安装AndroidSDK

    1. 1、解包 android-studio-bundle-135.1339820-linux.tar

    .tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ——————————————— .gz 解压1:gunzip FileName.gz 解压2:gzip -d FileName.gz 压缩:gzip FileName .tar.gz 和 .tgz 解压:tar zxvf FileName.tar.gz 压缩:tar zcvf FileName.tar.gz DirName ——————————————— .bz2 解压1:bzip2 -d FileName.bz2 解压2:bunzip2 FileName.bz2 压缩: bzip2 -z FileName .tar.bz2 解压:tar jxvf FileName.tar.bz2 压缩:tar jcvf FileName.tar.bz2 DirName ——————————————— .bz 解压1:bzip2 -d FileName.bz 解压2:bunzip2 FileName.bz 压缩:未知 .tar.bz 解压:tar jxvf FileName.tar.bz 压缩:未知 ——————————————— .Z 解压:uncompress FileName.Z 压缩:compress FileName .tar.Z 解压:tar Zxvf FileName.tar.Z 压缩:tar Zcvf FileName.tar.Z DirName ——————————————— .zip 解压:unzip FileName.zip 压缩:zip FileName.zip DirName ——————————————— .rar 解压:rar x FileName.rar 压缩:rar a FileName.rar DirName ——————————————— .lha 解压:lha -e FileName.lha 压缩:lha -a FileName.lha FileName ——————————————— .rpm 解包:rpm2cpio FileName.rpm | cpio -div ——————————————— .deb 解包:ar p FileName.deb data.tar.gz | tar zxf -

    解包后把里边的sdk 复制到 /usr/share/android-sdk-linux

    2、配置环境变量

    1. sudo vim /etc/profile
    1. GRADLE_HOME=/opt/gradle-1.9
    1. PATH=$GRADLE_HOME/bin:$PATH
    1. export GRADLE_HOME
    2. export PATH
    1. source /etc/profile
    1. 3、启动模拟器
    1. linux 图形界面下,进入android-sdk-linux 下载模拟器镜像、创建模拟器并启动(执行monitor即可)


    四、jenkins的安装

    在pc端使用AndroidStudio 开发并提交到github 这个过程就不讲了。

    将 jenkins.war 放到tomcat/webapps下 重启tomcat
    sudo cp jenkins.war /usr/share/tomcat/webapps/

    1、安装插件:

    Sometimes when you install, you will notice that the list of available plugins is empty. If that is the case, from Advanced tab on the Manage Plugins page, click on Check now (button available in
    the bottom right of the page) to forcefully check for new updates. Once that is done, you should see the list of plugins.

    进入ManagePlugins


    安装 Git Plugin 和 GitHub Plugin

    2、配置环境

    1. 进入"Manage jenkins->Configure System"设置Jenkins的相关参数。主要是设置GitGitHub插件的参数,
    1. Git下的Path to executable一栏添加本机的git.exe的路径,
    1. Git plugin下的添加本地Gituser.nameuser.email的信息,
    1. GitHub Web Hook下添加GitHub账户的相关信息。
    1. 如果想要使用邮件的功能,需要在邮件通知的一栏添加SMTP服务器和邮箱的相关信息,添加后点击Test的按钮测试一下能否正常发送邮件,这一功能可以在后面的项目中使Email Notification功能得以正常使用。

    1. githubgenerate 一个 token

    3、创建Job

    1. 点击"新Job",输入"任务名称",选择"构建一个自由风格的软件项目",点击"OK"。系统自动进入"任务配置"界面。5.配置构建方法
    2. GitHub project中输入git地址。

    1. "源码管理->Git"下的Repository URL输入RepositoryGit地址(PS:可以选择分支)。

    1. 如果是私有项目 还需要添加 账号密码

    1. "构建触发器"中选择"Build when a change is pushed to GitHub ""Poll SCM ",这两项的作用分别是当GitHub有版本库更新时触发Jenkins进行构建和定期检查版本库是否有更新,如果有更新则触发Jenkins进行构建。这里要注意Schedule语法,例如"*/2 * * * *"表示每隔2分钟检查一次。
    1. 使用gradle 构建 后装到模拟器上

    1. 最终结果:
    1. 当我们在pc端有代码pushgithub时,jenkins 会自动获取后使用gradle构建并且安装到模拟器上测试

Linux下Jenkins+git+gradle持续集成环境搭建的更多相关文章

  1. 环境部署(七):linux下Jenkins+Git+JDK持续集成

    前面几篇博客介绍了linux下安装Jenkins.Git.JDK以及Git基础教程和Git关联github等内容,这篇博客,介绍下如何在linux服务器中利用它们构建持续集成环境... 一.准备工作 ...

  2. Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)

    一.安装说明 系统环境:CentOS release 6.4 JDK版本:jdk1.8.0_181 Jmeter版本:apache-jmeter-3.0 Ant版本:apache-ant-1.9.13 ...

  3. jenkins+maven+svn 持续集成环境搭建

    说明:部署传统的web应用(.war) 准备工作: (1) 系统环境:CentOS7 (2) 安装JDK:https://www.cnblogs.com/myitnews/p/11493847.htm ...

  4. Jenkins Robot framework 持续集成环境搭建

    为什么我们要引入RF?其实最初我们引入RF是为了能够快速的开展自动化验收测试,为敏捷保驾护航.这其中有个重要的工具Jenkins,同时也是应群里朋友们的要求,这次就来介绍一下RF如何快速便捷的结合Je ...

  5. jenkins+donet core持续集成环境搭建

    一.Jenins+GitHub 参考 另外需要配置Global Tool Configuration 如果没有安装git,需下载安装,下载地址 二.jenkins发布donet core应用 1.配置 ...

  6. Jenkins Jenkins结合GIT Maven持续集成环境配置

    Jenkins结合GIT Maven持续集成环境配置   by:授客 QQ:1033553122 安装Git插件 1 安装Git客户端 1 安装JAVA JDK及MAVEN 2 Jenkins JDK ...

  7. 构建基于Jenkins + Github的持续集成环境

    搭建持续集成首先要了解什么是持续集成,带着明确的目标去搭建持续集成环境才能让我们少走很多弯路.持续集成(Continuous integration)简称CI,是一种软件开发的实践,可以让团队在持续集 ...

  8. 用Jenkins构建Django持续集成环境

    用Jenkins构建Django持续集成环境 - V2EX https://www.v2ex.com/t/32054

  9. Redhat上为java Maven项目构建基于Jenkins + Github的持续集成环境

    在Redhat enterprise 6.5 的服务器上,为在gutub 上的 java mvaen项目构建一个持续集成环境,用到了Jenkins.因公司的服务器在内网,访问外网时要通过代理,所以为m ...

随机推荐

  1. [BZOJ1176][Balkan2007]Mokia cdq+树状数组

    1176: [Balkan2007]Mokia Time Limit: 30 Sec  Memory Limit: 162 MBSubmit: 3134  Solved: 1395[Submit][S ...

  2. Square Number & Cube Number

    Square Number: Description In mathematics, a square number is an integer that is the square of an in ...

  3. PHP abstract与interface之间的区别

    1.php 接口类:interface 其实他们的作用很简单,当有很多人一起开发一个项目时,可能都会去调用别人写的一些类,那你就会问,我怎么知道他的某个功能的实现方法是怎么命名的呢,这个时候php接口 ...

  4. CF 1003B Binary String Constructing 【构造/找规律/分类讨论】

    You are given three integers a, b and x. Your task is to construct a binary string s of length n=a+b ...

  5. python3爬虫爬取猫眼电影TOP100(含详细爬取思路)

    待爬取的网页地址为https://maoyan.com/board/4,本次以requests.BeautifulSoup css selector为路线进行爬取,最终目的是把影片排名.图片.名称.演 ...

  6. hihocoder1067 最近公共祖先·二(tarjin算法)(并查集)

    #1067 : 最近公共祖先·二 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 上上回说到,小Hi和小Ho用非常拙劣——或者说粗糙的手段山寨出了一个神奇的网站,这个网站 ...

  7. ASP.NET Core 2.2 基础知识(十二) 发送 HTTP 请求

    可以注册 IHttpClientFactory 并将其用于配置和创建应用中的 HttpClient 实例. 这能带来以下好处: 提供一个中心位置,用于命名和配置逻辑 HttpClient 实例. 例如 ...

  8. 【二分答案】【分块答案】【字符串哈希】【set】bzoj2946 [Poi2000]公共串

    我们二分/分块枚举答案x,暴力把除了最短的字符串以外的其他字符串的x长度子串哈希搞出来,分别扔到set里. 然后暴力枚举最短的字符串的x长度字串,查看是否在全部的set里出现过. #include&l ...

  9. 1.4(Mybatis学习笔记)关联映射

    一.一对一 mybatis处理一对一主要通过<resultMap>中的<association>元素来处理. <association>元素主要使用方方式有两种: ...

  10. 检测密码 Exercise06_18

    import java.util.Scanner; /** * @author 冰樱梦 * 时间:2018年下半年 * 题目:检测密码 * */ public class Exercise06_18 ...