持续集成平台jenkins
1|0一. 什么是持续集成
1|11. 概念
持续集成(Continuous Integration),也就是我们经常说的CI
持续集成(CI)是一种实践,可以让团队在持续的基础上收到反馈并进行改进,不必等到开发周期后期才寻找和修复缺陷
1|22. 为什么要使用持续集成
-
bug总是在最后才发现
-
越到项目后期,问题越难解决
-
软件交付时机无法保障
-
程序经常需要变更
-
无效的等待变多
1|33. 多人开发流程图
多人协作开发,由于开发只会测试自己的代码,多人的代码集成在一起,难免会出现这样那样的bug。这时就需要jenkins对集成后的代码进行打包编译,如果有问题会进行反馈
持续集成并不是要等到项目稳定,而是在项目一开始就要进行,这样才能尽早发现问题,解决问题
2|0二. 持续集成的用途(标红色的都是)
3|0三. 持续集成的好处
1. 解放了重复性劳动
2. 更快地修复问题
3. 更快地交付成果
4. 减少了手工的错误
人和机器的一个最大的区别是,在重复性劳动上,人容易犯错,而机器犯错的几率几乎为零。所以,当我们搭建完成集成服务器后,以后的事就交给集成服务器来打理吧
5. 减少了等待时间
持续集成缩短了从开发、集成、测试、部署各个环节的时间,从而也就缩短了中间可以出现的等待时间
持续集成,意味着开发、集成、测试、部署也得以持续
6. 更高的产品质量
集成服务器往往提供 Code review、代码质量检测等功能
对代码不规范或者有错误的地方会进行标识,也可以设置邮件、短信等进行警告
而开发人员通过 Code review 也可以持续提高编程的能力
4|0四. jenkins 介绍
一款持续集成工具
4|11. 环境安装:
1). jdk 1.8
2). jenkins下载地址: https://jenkins.io/download/ 下载 Long-term Support(LTS) 下的版本
4|22. jenkins 概念
1). Job
在jenkins平台中,都是以Job(任务/工程)为单位去完成一件事情的
2). plugin(插件)
jenkins提供平台,集成各种插件来完成一个Job。想用jenkins平台来做什么,先找找有没有相应的插件。比如:windows命令、linux命令的支持、svn和git代码获取、邮件发送等
路径:系统管理 -> 管理插件 -> 可选插件
3). workspace(工作空间)
jenkins是通过文件形式来存储和管理数据的
workspace即给jenkins指定一个专门的目录来存储其所有的配置和数据
jenkins的workspace是根目录。每个Job都有属于自己的workspace(任务之间互不相干)
路径:系统管理 -> 系统设置
4). jenkins管理(Jenkins Manager)
整个jenkins的全局配置,包括权限管理、插件管理、节点管理等
4|3 3. jenkins Job详解
1). 基本信息配置(General)
Job名字、指定当前Job的工作空间、指定当前Job绑定到哪个执行机上执行等
2). 源码管理(Source Code Management)
svn/git等,需要相应的插件支撑
配置好源码管理后,在执行Job时会自动从相应的源码库里下载代码到当前Job的工作空间中
3). 构建触发器(Build Triggers)
触发器:执行当前任务的条件
常用定时构建:类似windows/linux的定时任务。指定当前Job执行的时间
定时构建1:要求每天9点,14点,20点运行这个任务(其中*代表所有的有效值)
注意:如果0-0用H代替,会出现不整点的情况
定时构建2:要求每天9点到14点之间,每整点运行这个任务(其中*代表所有的有效值)
定时构建3:要求周一到周六每天9点到14点之间,每整点运行这个任务(其中*代表所有的有效值)
Poll SCM
4). 构建环境(Build Environment)
5). 构建(Build)
6). 构建后操作(Post-build Actions)
详细配置邮件请参考 jenkins自动发送邮件配置
__EOF__

本文链接:https://www.cnblogs.com/my_captain/p/9217294.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?