Jenkins 自动化构建

当前博客项目已添加到 Jenkins 自动化构建平台 Jenkins
构建平台也是我在自己的服务器上搭建的
也挺费时间还有很多坑,而且还吃服务器内存的
8g内存的服务器,没搭Jenkins之前内存占用才 15% 左右,撘完了 Jenkins 内存飙升到了 48% 左右

尽管 Hexo 拥有 hexo deploy 的命令可以使用 xftp 直接上传到服务器的指定目录,并且经过尝试也已经成功了,但是我还拥有其他项目,比如 vue3,nodejs 等项目,我也找了一些方法可以像 hexo deploy 一样直接部署到服务器上,但是找了一圈都没成功。

而且 hexo deploy 在上传文件的时候会时不时抽风卡住。

所以我自己搭建了 Jenkins,将当前项目也加入了自动化构建,只需要点击按钮即可自动拉取远程分支代码然后开始自动构建和部署。

但又由于我修改了项目内 CDN 的主路径,因为我将所有用到的依赖文件都上传到了我自己的七牛云上( 可以打开F12然后查看所有的依赖文件请求的域名都是https://qiniuresources.huaum.com/npmcdn ),所以 jenkins 构建脚本不能使用 npm install,因为我修改的CDN的路径是直接在 node_modules 内修改的,执行 npm install 之后会导致修改被覆盖,所以我直接将整个 public 文件夹一同上传到了远程分支,然后 jenkins 脚本只需要执行移动目录即可。

以下为 jenkins 脚本:

1
2
3
4
5
6
7
8
9
10
echo "==== start build ==="

pwd
rm -rf /home/blog/public/
sleep 5
cp -R ./public/ /home/blog/public/
sleep 5
chmod -R 777 /home/blog/public/

echo "=== end build ==="