第一、使用的组件
第二、jenkins配置
系统管理-插件管理gitee系统管理-系统配置私人令牌
增加构建步骤-执行shell
#使环境变量生效,这个必须要写
source /etc/profile
#进入工作目录
cd ${WORKSPACE}
#go mod 依赖
go mod tidy
#删除之前的可执行文件
rm -rf main
#编译打包
go build main.go
#执行部署shell脚本,这个在golang项目中
sh build.sh
5. golang项目根目录下增加一个build.sh文件,代码如下:
#局部变量(执行文件名称), 根据自己项目随便写
project_name="gotest"
#杀掉之前正在运行的程序
go_id=`ps -ef|grep "./${project_name}" |grep -v "grep" | awk '{print $2}'`
if [ -z "$go_id" ];
then
echo "[go pid not found]"
else
#杀掉进程
kill -9 $go_id
echo "killed $go_id"
fi
#清除旧的编译文件
echo "clean old file"
rm -rf ${project_name}
#执行日志,根据自己项目情况可选
rm -rf ${project_name}.log
if [ -f main ]; then
echo "strat new process"
mv main ${project_name}
chmod -R 777 ${project_name}
#这里要防止nohup不执行,添加了一个BUILD_ID
BUILD_ID=DONTKILLME nohup ./${project_name} >${project_name}.log 2>&1 &
else
echo "executable file not found,quit"
fi
- 保存以上jenkins配置,然后回到自己电脑上,提交golang项目代码,就可以看到jenkins自动部署了。