美文网首页
svn之webhook

svn之webhook

作者: 天夭夭 | 来源:发表于2018-08-24 16:10 被阅读0次

        近期由于某些项目比较老旧的原因还在继续使用svn进行版本管理,在配置自动化部署时发现其webhook的配置与GtiLab有所区别,在此记录一下。

        以下配置实现的效果为:在SVN版本库上提交代码后,自动去出发Jenkins上的某个Job。


    一、每个SVN版本库都会有一个hooks目录。里面存储了各种钩子脚本(shell)。


    二、hooks触发介绍

    目录下将有多个脚本

                1)、每一个都对应了一个事件。

                2)、如果要使用,需要cp一份,去掉后缀,保持和事件名一样。 hook可以用Shell,Python或其它语言写。

                3)、另外hook需要加可执行权限,否则svn commit时会报错:

                        cp post-commit.tmpl post-commit

                        chmod +x post-commit


    三、事件说明

      以上表格信息参考(侵删):https://www.cnblogs.com/harrymore/p/8574134.html  

    四、post-commit脚本内容参考

    post-commit本事就是一个Shell脚本,我们只需要将期望的操作编写进该脚本内。SVN检测到代码有变更后,就会来执行该脚本。

    #!/bin/bash

    #

    #SVN版本库路径

    REPOS="$1"

    #SVN版本号

    REV="$2"

    #获取当前日期

    DATE_TIME=`date +%y-%m-%d`

    echo "$REPOS $DATE_TIME $REV" >> /tmp/text.txt

    curl "http://192.168.199.248:8080/buildByToken/build?job=weimei_dev_test_pipeline&token=a4c2159409bc5b1409cc3c2c"

    #脚本内容完结,备注最后的curl就是去发起GET请求,前提是Jenkins-Job的触发器配置好这个URL。


    五、Jenkins-Job触发器配置

    访问链接为:curl "l "http://192.168.199.248:8080/buildByToken/build?job=weimei_dev_test_pipeline&token=a4c2159409bc5b1409cc3c2c""


    其他参考资料:https://blog.csdn.net/dahuzix/article/details/49053947

    相关文章

      网友评论

          本文标题:svn之webhook

          本文链接:https://www.haomeiwen.com/subject/tmtiiftx.html