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"