jenkins中使用git hook实现CI/CD自动化持续集成部署

构建触发器

既然要实现自动化持续集成和部署,那么“自动化”是至关重要的。如果还要手工去点击构建,着实是不符合我们的需求。所以我们就用到构建触发器。

触发器,顾名思义就是通过某些事件去触发项目的构建。jenkins的触发器有很多种,常见的有以下这些

  • 触发远程构建
  • 其他工程构建后触发(Build after other projects are build)
  • 定时构建(Build periodically)
  • 轮询SCM (Poll SCM)
  • git hook 自动触发

我们要着重讲的就是git hook 自动触发

git hook 自动触发器构建

  • 这个触发器的原理是,当远程仓库监测到代码变更后,会向jenkins发送构建请求,然后触发jenkisn的构建

image-20210803151254582

  • 需要安装两个插件: Gitlab Hook和GitLab

    image-20210803151326830

  • 在项目配置中选择【Build when a change is pushed to GitLab.】

    复制链接

image-20210802230225802

  • 用root登录gitlab,勾选【Allow requests to the local network from web hooks and services】,点击下方绿色保存按钮【Save changes】

image-20210802230848772

  • 把链接粘贴到gitlab中,然后点击绿色添加按钮【Add webhook】

    image-20210802230716116

  • 显示如下信息,能发送请求但是没有权限

image-20210803100738643

  • Manage Jenkins->Configure System,把该选项取消掉

    image-20210803113910521

  • 再次test,成功

image-20210803101528433

  • 返回jenkins,可见已完成构建

image-20210803101613721

  • 修改代码,push

    (此处使用JAVA web项目进行演示)

image-20210803102322460

  • 成功触发构建

image-20210803102503114

  • 刷新网页,成功显示修改内容

image-20210803104557907

  • 自此,我们实现了基本的CI/CD,不用再手动进行打包、停服、上传、重启服务器等此类集成部署的繁琐步骤,只要开发人员提交了代码的更改,项目就能自动更新部署了

by_白羊

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享