持续集成工具jenkins的使用
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的使用的更多相关文章
- 持续集成工具Jenkins学习总结
概述 持续集成(Continuous Integration,简称CI)是一种软件开发实践,团队开发人员每次都通过自动化的构建(编译.发布.自动化测试)来验证,从而尽早的发现集成错误.持续集成最大的优 ...
- 持续集成工具Jenkins安装、部署、使用
本文介绍jenkins,利用其做项目发布与持续集成交付工具. 一.Jenkins是什么? Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1.持续的软件版本发布 ...
- 轻松搭建持续集成工具jenkins
1.Jenkins介绍1)什么是持续集成随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软 ...
- 持续集成工具——Jenkins
一.jenkins简介 1.持续集成工具 2.基于JAVA环境 二.环境搭建 1.安装JDK 2.安装配置git 3.安装配置tomcat Tomcat是针对Java的一个开源中间件服务器(容器),基 ...
- 持续集成工具-Jenkins 使用介绍
Jenkins 是一个可扩展的持续集成引擎,可以为我们提供代码自动编译.打包和发布工作,减少部署成本. 一.安装与启动 Jenkins 提供了多种便捷的安装方式,比较推荐使用执行 war 包的方式. ...
- linux-centos下持续集成工具jenkins部署使用教程
centos下准备工作: 1.安装jdk环境 2.安装maven环境(用于构建项目) 3.git客户端(用于拉取源码) 此外码云还要准备一份java源码(springboot项目) 一.安装jenki ...
- 【Gerrit】持续集成工具Jenkins的安装配置与使用过程中遇到的问题整理
1.下载war包 https://jenkins.io/download/ 2.安装 java -jar jenkins.war Error: Feb 21, 2019 2:17:25 AM wins ...
- 持续集成工具之jenkins+sonarqube做代码扫描
上一篇我们主要聊了下代码质量管理平台sonarqube的安装部署以及它的工作方式做了简单的描述和代码扫描演示:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13 ...
- 【持续集成】jenkins安装部署从git获取代码
一:持续集成的概念: 1.1:总体的概括 持续集成Continuous Integration 持续交付Continuous Delivery 持续部署Continuous Deployment 1. ...
随机推荐
- leetcode Roman Integer
class Solution { public: int romanToInt(string s) { if (s.length() < 1) return 0; map<char,int ...
- Three.js中如何显示帧速【转】
https://blog.csdn.net/hannahlwh1988/article/details/36876295 Step1:src中添加: <script src="js/s ...
- java正则校验,密码必须由字母和数字组成
一个匹配数字和字母密码的正则表达式 2011 年 12 月 14 日 | Filed under: 正则表达式 and tagged with: 密码 , 正则表达式 , 零宽断言 一个用户注册功能的 ...
- 解决使用Properties读取中文乱码问题
web服务返回的是多行以key和value对应的键值对,且编码为utf-8.我的项目使用的编码也是utf-8,但是我用Properties读取中文的时候,打印出来的总是乱码. 后来网上查了一下,得到如 ...
- Redis:按照正则批量删除key
Redis按照正则批量删除key redis目前还不支持批量删除key的命令,但是我们有时需要删除符合某个规则的keys,有两种方式: 1.使用redis-cli keys "test*&q ...
- JPA(五):映射关联关系------映射单向多对一的关联关系
映射单向多对一的关联关系 新建Customer.java: package com.dx.jpa.singlemanytoone; import java.util.Date; import java ...
- Java:双向链表反转实现
有个小需求要求实现一个双向链表的反转于是就有了下边代码: 链表元素结构定义: package com.util; public class LinkedNode<T>{ private T ...
- PHP跨页面传递时session失效
一直都是使用wamp作为本地的PHP集成开发环境 今天遇到一个很奇怪的问题,就是在跨页面传递时session竟然失效了,而之前从来没有出现过这种问题 因为使用的是开源的php框架为了测试方便就新建了两 ...
- 持续集成之代码质量管理-Sonar [三]
转载:https://www.abcdocker.com/abcdocker/2053 摘要 Sonar 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工 ...
- ESXI 6.5 从载到安装
下载ESXI 访问官网 https://www.vmware.com 到download,选择vsphere 下载esxi https://my.vmware.com/en/group/vmware/ ...