【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 &

持续集成好处:

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

减少重复性工作。

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

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

相关推荐
李慕婉学姐6 小时前
【开题答辩过程】以《基于JAVA的校园即时配送系统的设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·开发语言·数据库
TH_17 小时前
35、AI自动化技术与职业变革探讨
运维·人工智能·自动化
奋进的芋圆8 小时前
Java 延时任务实现方案详解(适用于 Spring Boot 3)
java·spring boot·redis·rabbitmq
sxlishaobin8 小时前
设计模式之桥接模式
java·设计模式·桥接模式
model20058 小时前
alibaba linux3 系统盘网站迁移数据盘
java·服务器·前端
yuhaiqun19898 小时前
学服务器训练AI模型:5步路径助力高效入门
运维·服务器·人工智能·笔记·机器学习·ai
huaweichenai8 小时前
docker部署kkFileView实现文件预览功能
运维·docker·容器
荒诞硬汉8 小时前
JavaBean相关补充
java·开发语言
以太浮标8 小时前
华为eNSP模拟器综合实验之-BFD联动配置解析
运维·网络·华为·信息与通信
提笔忘字的帝国8 小时前
【教程】macOS 如何完全卸载 Java 开发环境
java·开发语言·macos