热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Devops基础篇之Jenkins的常用的构建触发器和钩子服务(五)

文章目录一、Jenkins内置4种构建触发器:1.触发远程构建2.其他工程构建后触发3.定时构建4.轮询SCM二、Gitlab配置webhook1.开启webhook

文章目录

  • 一、Jenkins内置4种构建触发器:
      • 1.触发远程构建
      • 2.其他工程构建后触发
      • 3.定时构建
      • 4.轮询SCM
  • 二、Gitlab配置webhook
      • 1. 开启webhook功能
      • 2. 在项目添加webhook,添加webhook和Gitlab插件
  • 三、Jenkins的参数化构建
      • 1. 构建配置
      • 2. 项目创建分支,并推送到Gitlab上
      • 3.查看Gitlab上的分支


一、Jenkins内置4种构建触发器:
  • 触发远程构建
  • 其他工程构建后触发(Build after other projects are build)
  • 定时构建(Build periodically)
  • 轮询SCM(Poll SCM)

1.触发远程构建

在这里插入图片描述
在这里插入图片描述
触发构建的网站路径为url:http://192.168.74.8:8888/job/web_demo_pipeline/build?token=8888
格式:

jenkins网址+复制的路径(把TOKEN_NAME改为你输入的验证令牌)

在这里插入图片描述

2.其他工程构建后触发

先创建一个自由构建的项目
在这里插入图片描述
在这里插入图片描述
在回到之前那个项目中配置
在这里插入图片描述

保存后构建配的前置项目
在这里插入图片描述
前置项目构建后,配置的项目也开始构建了

在这里插入图片描述

在这里插入图片描述

3.定时构建

进入项目的配置中点击Build periodically
在这里插入图片描述
一些定时表达式的例子:

每30分钟构建一次:H代表形参 H/30 * * * * 10:02 10:32
每2个小时构建一次: H H/2 * * *
每天的8点,12点,22点,一天构建3次: (多个时间点中间用逗号隔开) 0 8,12,22 * * *
每天中午12点定时构建一次 H 12 * * *
每天下午18点定时构建一次 H 18 * * *
在每个小时的前半个小时内的每10分钟 H(0-29)/10 * * * *
每两小时一次,每个工作日上午9点到下午5点(也许是上午10:38,下午12:38,下午2:38,下午
4:38) H H(9-16)/2 * * 1-5

每2分钟开始自动构建
在这里插入图片描述

4.轮询SCM


轮询SCM,是指定时扫描本地代码仓库的代码是否有变更,如果代码有变更就触发项目构建。
他与定时构建唯一不同的在于,只有当代码仓库变动了,才会触发构建,如果不变动,则不会触发,

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在等2分钟发现如果代码不发生变化,则不会构建。
在这里插入图片描述

小结:
定时构建和轮询SCM的区别在于,定时构建不会去查看项目中代码的变化,到时间就自动构建,而轮询SCM会根据指定的时间扫描本地代码仓库的代码是否有变更,如果代码有变更就触发项目构建


二、Gitlab配置webhook

1. 开启webhook功能

Gitlab 服务器上使用 root 账户登录到后台,点击Admin Area -> Settings -> Network 勾选"Allow requests to the local network from web hooks and services"

先用root管理员登录Gitlab

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

切换到当前项目下进行设置

在这里插入图片描述
在这里插入图片描述

2. 在项目添加webhook,添加webhook和Gitlab插件

点击项目->Settings->Integrations

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
进行测试
在这里插入图片描述

会报错
在这里插入图片描述
回到Jenkins
Manage Jenkins->Configure System
在这里插入图片描述
在这里插入图片描述
回到gitlab上再次test
在这里插入图片描述

idea中更改开发环境代码并进行代码提交
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、Jenkins的参数化构建
  • 有时在项目构建的过程中,我们需要根据用户的输入动态传入一些参数,从而影响整个构建结果,这时我们可以使用参数化构建

  • Jenkins支持非常丰富的参数类型


1. 构建配置

回到web_demo_pipeline项目中取消所有构建触发器选项

在这里插入图片描述
保存成功后会看到下面的效果

在这里插入图片描述
接下来演示通过输入gitlab项目的分支名称来部署不同分支项目。

2. 项目创建分支,并推送到Gitlab上

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

3.查看Gitlab上的分支

在这里插入图片描述


推荐阅读
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • 如何查询zone下的表的信息
    本文介绍了如何通过TcaplusDB知识库查询zone下的表的信息。包括请求地址、GET请求参数说明、返回参数说明等内容。通过curl方法发起请求,并提供了请求示例。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • 基于Axis、XFire、CXF的webservice客户端调用示例
    本文介绍了如何使用Axis、XFire、CXF等工具来实现webservice客户端的调用,以及提供了使用Java代码进行调用的示例。示例代码中设置了服务接口类、地址,并调用了sayHello方法。 ... [详细]
  • 基于Socket的多个客户端之间的聊天功能实现方法
    本文介绍了基于Socket的多个客户端之间实现聊天功能的方法,包括服务器端的实现和客户端的实现。服务器端通过每个用户的输出流向特定用户发送消息,而客户端通过输入流接收消息。同时,还介绍了相关的实体类和Socket的基本概念。 ... [详细]
  • jenkins 搭建配置
    jenkins部署安装方法一: 下载jenkinswar包  wgethttp:mirrors.jenkins.iowar-stablelatestjenkins.war运行jen ... [详细]
  • Objective C接入Sonar代码扫描
    目录技术方案环境准备扫描器配置项目配置SonarQube配置jenkins接入一些坑技术方案Sonar本身有对OC的代码扫描插件——SonarCFamily,但是是收费的。出于成本 ... [详细]
author-avatar
mobiledu2502911403
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有