jenkins类似于Hadson,是一款持续集成工具。使用jenkins完成自动化部署的表现为:当开发人员向版本库提交新的代码后,应用服务器上自动部署,用户或测试人员使用的马上就是最新的应用程序。搭建该持续集成环境可以把整个构建、部署过程自动化,很大程度上减轻了重复的工作量。

该持续集成环境工作流程如下:

安装及使用jenkins

1. jenkins主体程序安装配置

将jenkins.war放在tomcat解压目录/wabapps目录下(linux系统下),注意要修改配置文件server.xml 中的编码字符集

启动tomcat,按照提示输入管理员密码,自定义jenkins可以选择或者跳过,需要注意的是选择安装插件的话,linux服务器得能联网下载。

配置JDK和Maven并安装Deploy插件

插件安装

2. 创建svn资源库,新建一个项目上传测试

linux资源库目录

项目目录如下

3. 配置任务来集成该项目

配置具体内容

svn资源库用户信息

构建选项

构建后操作,发布到tomcat

配置tomcat信息

构建触发器名称配置

4. 配置完成可立即构建

构建成功可访问项目地址

可通过时间轴查看构建历史

当我们项目发生更改并提交时,再次构建即可看到变化

5. 触发器

当然,实际工作中我们肯定不能每次提交后都要手动构建,jenkins能够准确的检索到并自动构建发布,这需要我们构建触发器。

通过使用触发远程构建,设置构建触发器中的身份验证令牌名称作为一个标识,当访问包含该令牌的地址时会触发一次构建,地址拼接方法如图

浏览器访问:http://47.98.XXX.X51:8080/jenkins/job/testJenk/build?token=TESTJENK_TOKEN ,触发一次构建

可通过使用脚本来设置在代码提交后执行脚本访问特定地址,触发构建,通过curl命令可访问指定地址

Linux的curl命令用来发送HTTP请求

  • -X参数:指定请求方式
  • -v参数:显示响应结果
  • -u参数:携带用户名、密码
  • -H参数:携带请求消息头信息

语法:

执行该命令即触发一次构建:

curl -X post -v -u admin:706ba3718b9e4fXXb2c114013189d516 http://47.98.XXX.X51:8080/jenkins/job/testJenk/build?token=TESTJENK_TOKEN

通过编辑svn版本库中的钩子程序来捕捉每一次的提交,实现代码提交之后自动触发构建

编辑过程为将原有内容注释,加入curl命令

这样的当svn有提交时,会自动触发构建。

如果发生jenkins服务器从svn上下载的代码不是最新版的情况,则在svn服务器的URL地址后加上@HEAD来强制下载最新版代码。

6. 搭建Github持续集成环境

需要注意以下几点

在jenkins中指定git程序位置

git中的钩子程序的功能是通过Webhooks来实现的

全局安全配置关闭防止跨站点请求伪造

持续集成工具jenkins的使用的更多相关文章

  1. 持续集成工具Jenkins学习总结

    概述 持续集成(Continuous Integration,简称CI)是一种软件开发实践,团队开发人员每次都通过自动化的构建(编译.发布.自动化测试)来验证,从而尽早的发现集成错误.持续集成最大的优 ...

  2. 持续集成工具Jenkins安装、部署、使用

    本文介绍jenkins,利用其做项目发布与持续集成交付工具. 一.Jenkins是什么? Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1.持续的软件版本发布 ...

  3. 轻松搭建持续集成工具jenkins

    1.Jenkins介绍1)什么是持续集成随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软 ...

  4. 持续集成工具——Jenkins

    一.jenkins简介 1.持续集成工具 2.基于JAVA环境 二.环境搭建 1.安装JDK 2.安装配置git 3.安装配置tomcat Tomcat是针对Java的一个开源中间件服务器(容器),基 ...

  5. 持续集成工具-Jenkins 使用介绍

    Jenkins 是一个可扩展的持续集成引擎,可以为我们提供代码自动编译.打包和发布工作,减少部署成本. 一.安装与启动 Jenkins 提供了多种便捷的安装方式,比较推荐使用执行 war 包的方式. ...

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

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

  7. 【Gerrit】持续集成工具Jenkins的安装配置与使用过程中遇到的问题整理

    1.下载war包 https://jenkins.io/download/ 2.安装 java -jar jenkins.war Error: Feb 21, 2019 2:17:25 AM wins ...

  8. 持续集成工具之jenkins+sonarqube做代码扫描

    上一篇我们主要聊了下代码质量管理平台sonarqube的安装部署以及它的工作方式做了简单的描述和代码扫描演示:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13 ...

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

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

随机推荐

  1. 再看copy_on_write缩小临界区的例子

    本例子是模拟的读者写者问题,采用shared_ptr+写时拷贝实现,其中我觉得一个比较值得注意的地方是考虑到对象可能在临界区析构而将析构移除临界区,这对于多线程来说要多看多思. #include< ...

  2. [leetcode]Recover Binary Search Tree @ Python

    原题地址:https://oj.leetcode.com/problems/recover-binary-search-tree/ 题意: Two elements of a binary searc ...

  3. Android -- setWillNotDraw()

    干货 处理onDraw()方法不被执行的解决方法: setWillNotDraw(false); 官方文档的解释: If this view doesn't do any drawing on its ...

  4. 一文学会用 Tensorflow 搭建神经网络

    http://www.jianshu.com/p/e112012a4b2d 本文是学习这个视频课程系列的笔记,课程链接是 youtube 上的,讲的很好,浅显易懂,入门首选, 而且在github有代码 ...

  5. 什么是JSP (转)

    http://blog.csdn.net/javaloveiphone/article/details/7937170 一.什么是JSP(JavaServer Pages),原来是没有jsp的,只有s ...

  6. VS web.config/app.conifg配置文件自定义类型使用智能感知功能

    大家使用VS编辑web.config或app.config时可以使用智能感知功能的,像下面这样很是方便 当然如果是我们自定义的类型也是可以使用智能感知的,因为智能感知的内容是来自你或其他公司(MS)提 ...

  7. C#.NET常见问题(FAQ)-索引器indexer有什么用

    索引器就是名值对,你声明一个名值对的类,就可以给数组的指定元素赋值,也可以很方面的访问到指定元素值对应的下标(个人认为完全可以自己写一个类似的list来实现,没有必要多此一举学一个额外的方法)   复 ...

  8. 隐藏执行批处理bat文件

    当kali成功溢出目标以后, 如果我们需要目标主机执行批处理bat的话, 目标机器会出现黑色的弹窗, 用户看到一个黑色弹窗肯定会奇怪, 以下有两种方法让bat文件运行起来: 1:使用bat转化为exe ...

  9. 第九周(1) Word邮件合并2

    第九周(1) Word邮件合并2 教学时间 2013-4-22 教学课时 2 教案序号 15 教学目标 1.进一步掌握邮件合并的技巧和方法.2.利用邮件合并制作准考证.3.掌握在同一页生成多个记录的方 ...

  10. Windows上Boost的编译步骤

    一.FQ下载Boost最新版本 官网:http://www.boost.org/ 假设解压到:D:\Applicaton\DevTools\boost\boost_1_65_1 二.使用VS编译器 c ...