Jenkins搭配Github实现自动化打包部署

上一篇文章 "前端组长如何利用Docker+Nginx+Jenkins实现项目部署" 中已经把除了Github触发Jenkins自动化任务以外的功能都走通了,今天就把剩下的这部分打通,实现代码push时自动化触发部署任务。

Jenkins配置

设置Url

这个url相当于一个接口,到时候会设置到github的仓库中,每次github 仓库代码提交到相应分支后会调这个接口,jenkins监听到就会触发自动化任务

设置任务可以被github触发

勾选这个就表明可以被GithubwebHook触发

增加Github WebHooks

选择相应仓库,进入设置,选择webHooks,添加webHooks

到这个时候只需要push代码就可以去jenkins中看任务是否执行,但是上一篇中我们脚本命令需要改一下,因为每次触发都会进入www/html文件夹中,需要把上一次的清除掉,当然是如果有的情况下

bash 复制代码
npm install pnpm -g
pnpm install
pnpm build
# 打包 build 后的文件
tar -zcvf dist.tar.gz dist/
# 删除 build 后的文件
rm -rf dist/
# 判断 /var/www/html 目录下是否存在 dist 文件夹,若存在则删除
if [ -d "/var/www/html/dist" ]; then
    rm -rf /var/www/html/dist
fi
# 移动 build 后的压缩包到 nginx 托管目录下。
echo "Hello, World!"
mv dist.tar.gz /var/www/html
echo "dist"
# 进入托管目录下
cd /var/www/html
# 解压
tar -zxf dist.tar.gz
# 删除压缩包
rm -rf dist.tar.gz

总结

到这里,一个工程化的打包任务就算是结束了,当然里面还有很多可以完善,这里由于篇幅就不展开了,这个是 "前端组长如何利用Docker+Nginx+Jenkins实现项目部署" 的下篇,如果对概念不熟悉的,可以看看上一篇,里面是从零到一建立的。

最后,如果这篇文章对您有所帮助的话,那将不胜感激

相关推荐
逛逛GitHub13 小时前
慢慢吃掉你的 Claude Code,在终端里养一只黑洞。
github
jump_jump19 小时前
为了重玩金庸群侠传,我研究了一下 Ruffle 怎么复活 Flash
游戏·rust·github
LinXunFeng1 天前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github
DayDaydream1 天前
7 天涨了 8000+ Star,Agent Reach 想给 AI 装上互联网眼睛
github
天衍四九3 天前
Git从0到实战(四):冲突解决与版本回退 —— 别怕,出错了也能救
github
大刚测试开发实战3 天前
如何内网穿透访问本地私有化部署的TestHub
前端·后端·github
uhakadotcom4 天前
在python 的 工程化架构中 ,什么是 薄包装器层?
后端·面试·github
大家的林语冰4 天前
ES5 凉凉,Babel 8 正式发布,默认不再编译为 ES5 和 CJS......
前端·javascript·前端工程化
Avan_菜菜4 天前
AI 能写代码了,为什么我反而开始要求它先写文档?
前端·github·ai编程
jump_jump5 天前
流式 HTML:从 htmx 片段装配到浏览器原生增量渲染
javascript·性能优化·前端工程化