• Gitlab自动触发Jenkins构建打包


    一、目的

    在部门的测试环境中,开发人员一旦向gitlab仓库提交成功代码,gitlab就会自动触发jenkins构建项目。当然在构建后还可以添加项目部署或者自动化测试的脚本。这里只针对测试环境。

    二、Jenkins配置

    2.1 安装Gitlab Hook Plugin插件:

    系统管理->管理插件->可选插件->选择安装 Gitlab Hook Plugin和Build Authorization Token Root Plugin插件。 如果没有安装Build Authorization Token,后面gitlab在Test hook时会报403错误。

    2.2 创建测试Project

    在gitlab上已建好了bd-ci-test的项目,且Jenkins用户拥有该项目的相关读写权限。
    在jenkins新建bd-ci-test项目:

    源码管理选择git,添加jenkins用户在gitlab上的凭据(即用户名密码),这里选择打包的分支为release分支,这里根据需求自己填写(默认为master分支)

    构建触发器,勾选gitlab-ci,记住后面的GitLab CI Service URL后面要填在gitlab的webhooks中:

    2.3 根据branch分支触发打包条件

    现在有develop分支和release分支,如果不做这一步,开发只要向gitlab中提交代码(develop分支或者release分支),那么jenkins就会进行构建打包,下面我们设置判断过滤只有向release分支push代码时,才会触发构建打包。

    点开高级,填写根据正则过滤branch,写法如下,并generate一个token,不然后面webhooks会报403:

    三、Gitlab配置

    在git项目配置界面设置链接和token。这里要注意路径,根据部署jenkins的路径填写,不然会报404错误,并填写刚刚对应的token信息,保存:

    点击测试,返回200的话就表示成功了。其他错误可以根据gitlab日志来排除原因gitlab/gitlab-rails/production.log:

    四、验证测试

    4.1 向gitlab提交代码:

    #vim a.txt 修改a.txt文件并提交
    #git add a.txt 
    #git commit -m 'alter a.txt'
    [release 094f663] alter a.txt
     1 files changed, 0 insertions(+), 2 deletions(-)
    #git push origin release
    Password: 
    Counting objects: 5, done.
    Delta compression using up to 4 threads.
    Compressing objects: 100% (2/2), done.
    Writing objects: 100% (3/3), 283 bytes, done.
    Total 3 (delta 0), reused 0 (delta 0)
       b32472e..094f663  release -> release
    

    4.2 jenkins控制台输出信息:

    可以观察到jekins已经自动构建项目了:

  • 相关阅读:
    Dubbo教程:入门到实战
    阿里面试Java程序员都问些什么?
    Canon MF113W激光打印机双面打印方法
    MacBook Pro App Store无法下载和更新软件解决方案
    收不到Win10正式版预订通知?一个批处理搞定
    创业公司失败的20大原因:没市场需求排第一
    最新版本sublime text3注册码
    Spring MVC 知识点整理
    Nginx子域名配置
    Install Local SQL In Mac OS
  • 原文地址:https://www.cnblogs.com/bugsbunny/p/7919993.html
Copyright © 2020-2023  润新知