gitlab使用webhook触发jenkins自动部署

首先下载插件
Gitlab Hook Plugin
Build Authorization Token Root Plugin

新建任务进行配置
在这里插入图片描述

复制webhook_url和生成的secret key
登录gitlab
这是系统级的webhook
在这里插入图片描述
项目级的webhook,一般使用项目级的
在这里插入图片描述
将webhook_url和生成的secret key填入生成
再进行测试
在这里插入图片描述
说明通了

具体的业务规则实现了再写
想法:只检测release分支,一有代码提交就自动打包部署至测试环境。然后再进行自动化测试

更新一下,已经开始投入使用的配置
首先是gitlab这边的配置,因为开发人员再dev开发,开发完成后统一合并到test测试分支,所以触发选择merge requests events(dev分支合并到test分支自动进行打包部署)
在这里插入图片描述

jenkins配置
gitlab触发配置
在这里插入图片描述

具体打包和部署
在这里插入图片描述

部署的python脚本

# -*- coding: utf-8 -*-

import os
import time




route=r'/home/test_yy/back/'
target_route=r'/var/lib/jenkins/workspace/auto_publish_3.5.0_back/business-ice/ice-web/ice-web-publish/target/*.jar'


##清理bak,备份文件,shutdown服务
os.system('cd {} && ./shutdown.sh'.format(route))
os.system('rm -rf {}bak/*.jar'.format(route))
os.system('cd {} && mv *.jar ./bak'.format(route))


##移动jar包,重启
os.system('cp {} {}'.format(target_route,route))
time.sleep(2)
os.system('cd {} && ./startup.sh'.format(route))

版权声明:本文为qq1105273619原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。