【Jenkins】持久化

文章目录

持续集成CI

持续集成(Continuous integration,简称CI)指的是频繁地(一天多次)将代码集成到主干。

持续集成的目的就是让产品可以快速迭代,同时还能保证高质量,它的核心措施是将代码集成到主干之间,

必须通过自动化测试,只要有一个测试用例失败,就不能集成。

通过持续集成,团队可以快速从一个功能到另一个功能,简而言之,敏捷开发很大一部分要归功于持续集成。

它的好处主要有两个。

1、快速发现错误。每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易。

2、防止分支大幅偏离主干。如果不是经常集成,主干又在不断更新,会导致以后集成的难度变大,甚至难以集成。

持续部署CD

对于一个完整、成熟的 CI/CD 管道来说,最后的阶段是持续部署。

持续部署的目标是,代码在任何时刻都是可部署的,可以自动将应用发布到生产环境。

实际上,持续部署意味着开发人员对应用的改动,在编写完成后的几分钟内就能及时生效(前提是它通过了自动化测试)。

这更加便于运营团队持续接收和整合用户反馈。

持续部署的前提是能自动化完成测试、构建、部署等步骤。

部署

部署到linux服务器

复制代码
target> scp xxx.jar root@192.168.1.191:/root/

nohup java -jar xxx.jar &

firewall-cmd --state # 查看防火墙状态
firewall-cmd --list-ports # 查看所有放行的端口
firewall-cmd --add-port=8081/tcp # 防火墙开启端口
firewall-cmd --remove-port=8081/tcp

Excute shell

复制代码
mvn package
cd target 
ps -ef | grep jenkinsdemo-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}' | xargs kill -9 | true
nohup java -jar jenkinsdemo-0.0.1-SNAPSHOT.jar &

持续集成好处:

降低风险,由于持续集成不断去构建、编译、测试,可以早期就发现问题,所以修复代价就小一点。

减少重复性工作。

持续交付可供使用的版本。

持续部署已经包含在持续集成里面,持续部署的前提就是持续集成。

相关推荐
rannn_1114 分钟前
【苍穹外卖|Day4】套餐页面开发(新增套餐、分页查询、删除套餐、修改套餐、起售停售)
java·spring boot·后端·学习
qq_12498707538 分钟前
基于JavaWeb的大学生房屋租赁系统(源码+论文+部署+安装)
java·数据库·人工智能·spring boot·计算机视觉·毕业设计·计算机毕业设计
消失的旧时光-194311 分钟前
Linux 入门核心命令清单(工程版)
linux·运维·服务器
短剑重铸之日14 分钟前
《设计模式》第十一篇:总结
java·后端·设计模式·总结
艾莉丝努力练剑18 分钟前
【Linux:文件】Ext系列文件系统(初阶)
大数据·linux·运维·服务器·c++·人工智能·算法
小天源22 分钟前
Cacti在Debian/Ubuntu中安装及其使用
运维·ubuntu·debian·cacti
若鱼191937 分钟前
SpringBoot4.0新特性-Observability让生产环境更易于观测
java·spring
Trouvaille ~44 分钟前
【Linux】TCP Socket编程实战(一):API详解与单连接Echo Server
linux·运维·服务器·网络·c++·tcp/ip·socket
觉醒大王1 小时前
强女思维:着急,是贪欲外显的相。
java·论文阅读·笔记·深度学习·学习·自然语言处理·学习方法
芷栀夏1 小时前
深度解析 CANN 异构计算架构:基于 ACL API 的算子调用实战
运维·人工智能·开源·cann