Jenkins+Gitlab手动构建一个小项目
原理:开发提交代码→Gitlab→Jenkins(通过Shell脚本推送到nginx站点目录)→nginx实时查看
Jenkins上Shell脚本详情:
vim deploy.sh
#!/bin/bash
CODE_DIR=/var/lib/jenkins/workspace/freestyle-job
WEB_DIR=/usr/share/nginx
IP=192.168.10.105
TIME=`date +%F-%H-%M-%S`
cd $CODE_DIR && tar zcf /tmp/web-${TIME}.tar.gz ./*
scp /tmp/web-${TIME}.tar.gz $IP:$WEB_DIR
ssh root@$IP "cd $WEB_DIR && mkdir web-${TIME}"
ssh root@$IP "cd $WEB_DIR && tar xf web-${TIME}.tar.gz -C web-${TIME} && rm -fr web-${TIME}.tar.gz"
ssh root@$IP "cd $WEB_DIR && rm -fr html && ln -s web-${TIME} html"