zoukankan      html  css  js  c++  java
  • 轻松搭建持续集成工具jenkins

    1.Jenkins介绍
    1)什么是持续集成
    随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题。尤其是近些年来,敏捷(Agile) 在软件工程领域越来越红火,如何能再不断变化的需求中快速适应和保证软件的质量也显得尤其的重要。
    持续集成正是针对这一类问题的一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础。它倡导团队开发成员必须经常集成他们的工作,甚至每天都可能发生多次集成。而每次的集成都是通过自动化的构建来验证,包括自动编译、发布和测试,从而尽快地发现集成错误,让团队能够更快的开发内聚的软件。

    核心价值体现在:
    a、持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,有利于减少重复过程以节省时间、费用和工作量;
    b、持续集成保障了每个时间点上团队成员提交的代码是能成功集成的。换言之,任何时间点都能第一时间发现软件的集成问题,使任意时间发布可部署的软件成为了可能;
    c、持续集成还能利于软件本身的发展趋势,这点在需求不明确或是频繁性变更的情景中尤其重要,持续集成的质量能帮助团队进行有效决策,同时建立团队对开发产品的信心。

    业界普遍认同的持续集成的原则包括:
    1)需要版本控制软件保障团队成员提交的代码不会导致集成失败。常用的版本控制软件有 IBM Rational ClearCase、CVS、Subversion 等;
    2)开发人员必须及时向版本控制库中提交代码,也必须经常性地从版本控制库中更新代码到本地;
    3)需要有专门的集成服务器来执行集成构建。根据项目的具体实际,集成构建可以被软件的修改来直接触发,也可以定时启动,如每半个小时构建一次;
    4)必须保证构建的成功。如果构建失败,修复构建过程中的错误是优先级最高的工作。一旦修复,需要手动启动一次构建。

    2)持续集成系统的组成
    由此可见,一个完整的构建系统必须包括:
    A、一个自动构建过程,包括自动编译、分发、部署和测试等。
    B、 一个代码存储库,即需要版本控制软件来保障代码的可维护性,同时作为构建过程的素材库。 
    C、一个持续集成服务器。本文中介绍的 Jenkins/Jenkins 就是一个配置简单和使用方便的持续集成服务器。

    3)Jenkins介绍

    Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

    Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:
    1、持续的软件版本发布/测试项目。
    2、监控外部调用执行的工作

    使用Jenkins人员需要对持续集成的概念有所了解,更多的要求对代码的编译过程很了解,Jenkins对于maven工程完整的编译和发布流程如下:
    1、Jenkins从SVN上拉取代码到指定的编译机器上。 
    2、在编译机器上触发编译命令或脚本。 
    3、编译得到的结果文件。
    4、把结果文件传到指定的服务器上。

    2.Jenkins安装与配置
    1)本次测试环境介绍
    部署系统 Ubuntu14.04
    Tomcat Tomcat8
    JDK Jdk1.8
    Maven Maven3.3.9
    Jenkins Jenkins.war(1.565)
    管理工具 Svn

    2)安装jdk、tomcat、maven环境
    1、安装jdk与tomcat
    参照地址:http://jingyan.baidu.com/article/ff42efa9162ea5c19e22021c.html

    a、解压下载的jdk的jar.gz文件到/usr/local/java下。
    b、为java配置本地环境变量,并测试java环境是否配置成功。
    ~vim /etc/profile
    JAVA_HOME=/usr/local/java
    CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
    PATH=$JAVA_HOME/bin:$PATH
    export PATH CLASSPATH JAVA_HOME
    ~source /etc/profile
    ~java -version


    图片1.png

    注意::每次重启系统进入root权限都要source /etc/profile才能看到java的version

    c、解压tomcat软件包apache-tomcat-8.tar.gz,并将解压文件移动到/usr/local下
    启动tomcat服务器

    cd /usr/local/tomcat/bin/

    ./startup.sh

    访问http://localhost:8080

    2、安装maven
    参考地址:http://www.linuxidc.com/Linux/2012-03/56476.htm
    A、解压maven到/usr/local/maven
    然后修改环境变量:

    vi /etc/profile

    添加下面内容:

    maven

    M2_HOME=/usr/maven
    PATH=$PATH:$M2_HOME/bin
    export M2_HOME PATH

    保存退出vi编辑器
    然后使环境变量生效:

    source /etc/profile 或注销重新登录

    若成功,输入#mvn -v后显示:


    图片2.png

    3)部署jenkins到tomcat
    Jenkins的部署过程很简单,只需要把下载的war包复制到tomcat的webapps目录下即可。


    图片3.png

    4)访问jenkins
    启动tomcat,访问http://localhost:8080/jenkins


    图片4.png

    3.部署项目

    1、系统设置,配置jdk与maven的环境


    图片5.png

    2、插件管理


    图片6.png

    图片7.png

    3、源码管理


    图片8_meitu_1.jpg

    4、构建触发器


    图片9.png

    5、构建后操作,这需要tomcat-user.xml中设置tomcat账号密码才能正确部署项目并运行。


    图片10.png

    6、建立maven项目,并设置好参数后立即构建。如果正常构建则显示蓝色,错误为红色。可查看从构建日志中查看控制台输出的信息。


    图片11.png

    图片12.png


    作者:java思维导图
    链接:http://www.jianshu.com/p/8a7495d1b8e2
    來源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 相关阅读:
    Asynchronous AOF fsync is taking too long (disk is busy?). Writing the AOF buffer without waiting for fsync to complete, this may slow down Redis.
    DHCP "No subnet declaration for xxx (no IPv4 addresses)" 报错
    Centos安装前端开发常用软件
    kubernetes学习笔记之十:RBAC(二)
    k8s学习笔记之StorageClass+NFS
    k8s学习笔记之ConfigMap和Secret
    k8s笔记之chartmuseum搭建
    K8S集群集成harbor(1.9.3)服务并配置HTTPS
    Docker镜像仓库Harbor1.7.0搭建及配置
    Nginx自建SSL证书部署HTTPS网站
  • 原文地址:https://www.cnblogs.com/wlsblog/p/7354855.html
Copyright © 2011-2022 走看看