(十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用

前言

本节内容我们主要介绍在Jenkins流水线中,其构建过程中的一些构建策略的配置,例如通过远程http构建、定时任务构建、轮询SCM构建、参数化构建、Git hook钩子触发构建等,可根据不同的需求完成不同构建策略的配置。

正文

Throttle builds:限制构建的频率

  • 构建策略说明:
  • 测试验证

不允许并发构建

  • 构建说明
  • 测试验证

丢弃旧的构建

  • 配置策略说明
  • 测试验证

参数化构建过程

  • 配置策略
  • 在构建参数中使用${}方式引用变量值
  • 构建时根据变量选项切换构建项目的参数,示例这里是根据选项切换源码分支

流水线效率、持久保存设置覆盖

  • 策略配置
  • 最短持久性模式(Minimize Durability):在这个模式下,Pipeline 的执行日志仅保存在内存中,并且在 Jenkins 重启后无法恢复。这种模式对 Jenkins 性能具有最小的影响,但在 Jenkins 失败或重启后无法继续执行。
  • 中等持久性模式(Limited Durability):在这个模式下,Pipeline 的执行日志会保存到磁盘上,但并不保证在 Jenkins 重启后能够继续执行。这种模式提供了一定程度的持久性,并且对 Jenkins 性能的影响较小。
  • 最长持久性模式(Maximize Durability):在这个模式下,Pipeline 的执行日志将保存在 Jenkins Master 上,并且可以在 Jenkins 重启后继续执行。这种模式提供了最高的持久性,即使在 Jenkins 失败或重启后,流水线也可以从中断的地方继续执行。但是,这可能对 Jenkins 性能产生一些影响。

其他工程构建后触发

  • 策略配置
  • 验证测试

定时构建

  • 策略配置
  • 总共五位,MINUTE HOUR DOM MONTH DOW,代表分钟、小时、天、月、星期
  • 一些规则配置说明
复制代码
# Every fifteen minutes (perhaps at :07, :22, :37, :52):
H/15 * * * *     每隔十五分钟执行一次
# Every ten minutes in the first half of every hour (three times, perhaps at :04, :14, :24):
H(0-29)/10 * * * *  每隔小时的前半小时内,每隔10分钟执行一次
# Once every two hours at 45 minutes past the hour starting at 9:45 AM and finishing at 3:45 PM every weekday:
45 9-16/2 * * 1-5  每个工作日从上午 9:45 开始,每隔两个小时执行一次,直到下午 3:45 结束
# Once in every two hour slot between 8 AM and 4 PM every weekday (perhaps at 9:38 AM, 11:38 AM, 1:38 PM, 3:38 PM):
H H(8-15)/2 * * 1-5 每个工作日的上午 8 点到下午 4 点之间的每个两小时时间段内执行一次

轮询SCM

  • 配置策略
  • 测试验证,修改master分支代码,查看是否会自动构建

关闭构建

  • 关闭构建:这个选项是用来禁止一个项目在Jenkins 中执行新的构建任务的。当您勾选这个选项时,Jenkins 将不会自动触发该项目的构建,即使满足了触发条件也不会执行构建任务。
  • 构建会被禁用

静默期

  • 策略说明:如果设置此选项,一个计划中的构建在开始之前需要等待选项中设置的秒数。

触发远程构建 (例如,使用脚本)

  • 策略说明:可以通过http请求发起任务构建

结语

相关推荐
心灵彼岸-诗和远方7 小时前
Devops业务价值流:软件研发最佳实践
运维·产品经理·devops
大卡尔1 天前
Reviewbot 开源 | 为什么我们要打造自己的代码审查服务?
devops·code review·静态检查·工程效率
极小狐1 天前
驭码上新,AI Code Review、基于代码库的知识问答,让研发起飞
gitlab·devsecops·devops·极狐gitlab·安全合规
蚊子不吸吸2 天前
DevOps开发运维简述
linux·运维·ci/cd·oracle·kubernetes·gitlab·devops
思码逸研发效能2 天前
度量数据是人工凭感觉录入的,产生的偏差如何解决?
研发效能·devops·研发效能度量·研发管理
Databuff4 天前
JVM性能优化实战手册:从监控到调优策略
linux·运维·jvm·性能优化·自动化·devops
AshCode5 天前
Docker远程管理和应用容器远程部署
docker·springboot·devops·开发效率·容器部署
晓北斗NorSnow7 天前
瀑布式开发、快速原型开发、迭代式开发、螺旋式开发、敏捷式开发、DevOps开发的简介与对比
运维·devops
winkee7 天前
全面解析!用户证书的使用,用 Nginx 容器搭建 HTTPS 服务器。
https·devops
极小狐7 天前
如何打开/关闭 GitLab 的版本检查功能?
gitlab·devsecops·devops·极狐gitlab·安全合规