一、jenkins配置git

  1、安装源码管理器  git:http://updates.jenkins-ci.org/download/plugins/git/

  去上面的网址中把离线插件下载下来,然后去jenkins的插件管理功能中导入git插件。

    1)git-client.hpi、git-server.hpi、git.hpi(按照顺序来,因为没有前两个,git.hpi是安装不了的)(这三个建议安装离线包,效率高一些;下面两个就可以直接在jenkins中在线安装了)

    2)github.hpi(安装这个,会把相应的依赖包直接安装好的)、git parameter(这个是可以拉取远程仓库指定文件夹的,还可以拉取到本地的指定目录)

    3)重启jenkins。

  2、配置jenkins的全局工具

  

  3、给slave节点配置工具 - git

  

  4、给具体的job配置git,让job可以每次构建都能拉取远程仓库的代码

    1)general

    

    2)源码管理

    

    上图中第二步

    

    一定不要选 SSH、一定不要选 SSH、一定不要选 SSH。(你要是固执的选SSH,绝对连不上,永远提示你秘钥错误,无权限拉取)

    

    

    3)构建

    

  到这里就可以了。基本就完成了自动化持续集成的效果了。当你每次点击构建,jenkins中的git会去拉取远程仓库中最新的代码。

二、流水线式持续全自动化部署

  最终效果就是:开发人员合并最新代码  -->  无异常的完成服务器部署。

  这里不讲,我也还不会,这些应当是专业运维的事情,需要相当完备的工作流程、工作体系、工作内容、运维知识。

  除以上,还另外需要的东西:

    1)gitlab(企业级的git,github也就个人用用)(要配置每个项目的 secret_key)

    2)完备的单元测试用例

    3)jenkins中的papieline插件,用grovy脚本语言,编写持续自动部署流程

  工作流程:

    开发人员申请合并gitlab  -->  开发组长gitlab同意合并,同意完了之后  -->  jenkins会触发构建

      构建过程:先拉取gitlab最新的代码  -->  之后运行单元测试用例  -->  用例通过,继续打包war或者jar;用例失败,构建失败,服务器不受任何影响  -->  打包完成后,把包部署到服务器

    以上过程,基本就是流水线式持续全自动化部署。这一整套过程,有些东西是不可控的,中间还需要设置一些人为干预的步骤。作为一个测试,我暂时不想去深入了解了。以后再慢慢学。

    另外:

    服务器基本分四个:开发、测试、预生产、正式

    四个服务器都有各自的构建流程,各自的单元测试用例

jenkins集群(四) -- 持续集成的更多相关文章

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

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

  2. Jenkins 集群搭建

    一.前言 Jenkins是当下比较流行的一款功能强大的持续集成工具,它支持搭建集群,来提高多项目的构建速度,模式为主从模式,master会将任务分配到各个从节点进行并发构建,从而提高速度,下面介绍一下 ...

  3. jenkins~集群分发功能的具体实现

    前一讲主要说了jenkins分发的好处<jenkins~集群分发功能和职责处理>,它可以让具体的节点干自己具体的事,比如windows环境下的节点,它只负责编译,发布windows的生态环 ...

  4. 快速搭建Jenkins集群

    关于Jenkins集群 在Jenkins上同时执行多个任务时,单机性能可能达到瓶颈,使用Jenkins集群可以有效的解决此问题,让多台机器同时处理这些任务可以将压力分散,对单机版Jenkins的单点故 ...

  5. jenkins集群(二)(master --> slave) -- allure自动化测试报告部署

    一.前提 1.环境 1)已经部署好了jenkins环境,包括jenkins的“全局工具配置”也配好了. 2.master与slave的简单的概念 1)master:jenkins部署所在的机器 2)s ...

  6. Net 项目构建基于Jenkins + Github + Mono 的持续集成环境

    Net 项目构建基于Jenkins + Github + Mono 的持续集成环境 阅读目录 1 安装 2 配置 3 测试 在Redhat enterprise 6.5 的服务器上,为在gutub 上 ...

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

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

  8. jenkins~集群分发功能和职责处理

    jenkins的多节点集群 在进行自动化部署时,你可以按着它们的项目类型去进行分别部署,这样即可以达到负载均衡,又可以达到一种职责的明确,比如像java的项目你可以使用linux服务来进行部署(拉代码 ...

  9. Jenkins构建Android项目持续集成之findbugs的使用

    Findbugs简介 关于findbugs的介绍,可以自行百度下,这里贴下百度百科的介绍.findbugs是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题 ...

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

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

随机推荐

  1. Spark HA搭建

    正文 下载Spark版本,这版本又要求必须和jdk与hadoop版本对应. http://spark.apache.org/downloads.html tar -zxvf 解压到指定目录,进入con ...

  2. JavaScript基础Literal 与 Constructor(008)

    JavaScript支持以字面声名法(Literal)的方式来声名对象和数组,相对于构造函数(constructor)的方式,Literal的声 名方式更简洁,更易读,也更少导致Bug.事实上,JSO ...

  3. mackdown基础语法

    目录 前言 二.Markdown基本语法 前言 由于有些语法无法在博客园展示,推荐使用Typora解锁全套,下载地址:https://www.typora.io/ Markdown是一种可以使用普通文 ...

  4. Spring Security(五) —— 动手实现一个 IP_Login

    摘要: 原创出处 https://www.cnkirito.moe/spring-security-5/ 「老徐」欢迎转载,保留摘要,谢谢! 5 动手实现一个IP_Login 在开始这篇文章之前,我们 ...

  5. BZOJ 2200 道路与航线(图论)

    BZOJ 2200 道路与航线 题目大意 有两种路,一种没负数,一种没环,求单源最短路. solution 存在负边权Dij一定不能用嘛,显然不是 根据题意能看出来是tarjan,将双向边缩点,得到的 ...

  6. java NIO 原理解析之学习笔记

    关键抽象 1.Buffer缓冲区 NIO数据传递模型,是一个连续的内存区域.所有数据传递均通过buffer类处理:NIO提供了字符串.整形.字节.堆等多种缓冲区. 2.Channel(通道) NIO把 ...

  7. Window - 安装 ant

    官方下载地址 https://ant.apache.org/bindownload.cgi 旧版下载地址 https://archive.apache.org/dist/ant/binaries/ 挑 ...

  8. 数据可视化之powerBI技巧(十七)在Power BI中对数据进行分组

    根据某一个维度的数据,进行分组统计,是很常见的做法,比如按年龄对客户进行分组,按考试成绩进行分组统计等,这篇文章介绍一下,在PowerBI中如何对数据进行分组. 在PowerQuery编辑器中分组 在 ...

  9. python 面向对象专题(二):类的空间问题、类与对象之间的关系、类与类之间的关系

    https://www.cnblogs.com/liubing8/p/11308127.html 目录 Python面向对象02/类的空间问题.类与对象之间的关系.类与类之间的关系 1. 类的空间问题 ...

  10. C语言笔记、文件io的操作

    一个自己定义的头文件: 文件名为 xxx.h 内容: #ifndef _MYHEAD_H   #define _MYHEAD_H #include<stdio.h>#include< ...