Jekyll自动检测代码更新
jekyll是一个静态博客生成软件, 我们把代码放在一个仓库里, 只要远程代码更新, 我们就从把它拉到自己的服务器, 然后重新启动jekyll.
cd /root/blog
git clone outproject
设置定时器
自动拉取代码重新部署jekyll:
crontab -e
*/1 * * * * /root/blogpull.sh >> /root/cronblogpull.log
/root/blogpull.sh
如下:
脚本文件内容
#! /bin/bash
result=$(cd /root/blog && git pull | grep "Already up-to-date")
if [[ "$result" != "" ]]
then
exit 0
#echo "`date '+%Y%m%d %H:%M'`:不需要更新代码"
else
echo "`date '+%Y%m%d %H:%M'`:代码已经更新,开始"
ps -ef|grep jekyll | awk '{print $2}'| sed -n '1,1p' | xargs -i kill {}
rm -rf /root/_site
jekyll serve -H '0.0.0.0' -s '/root/blog' >/dev/null 2>&1 &
fi
/root/blog
为我们jekyll
静态文件所在的仓库路径.
原文地址:https://www.cnblogs.com/nima/p/11751469.html
时间: 2024-10-12 07:16:42