码迷,mamicode.com
首页 > 其他好文 > 详细

Jenkins+Gitlab自动打TAG

时间:2020-07-24 19:12:18      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:echo   检出   tla   本地   实现   ima   jenkins配置   build   track   

  • 需求背景
    项目源码在Gitlab代码仓库中有多个gitlab子项目的代码,项目上线完成后,一般会对上线分支的代码进行分支合并到受保护的分支上,一般为Master分支,然后打TAG。这里结合Jenkins+Gitlab进行自动分支合并打TAG。
  • Jenkins配置
    进入Jenkins,新建Job,进入Job的Configure配置,配置参数化构建。
    技术图片
    Build选择添加Execute Shell。
    技术图片
  • 打TAG
    分支合并,打Tag这里由shell脚本实现,如下脚本内容:
    #!/bin/bash
    pro=`ls -l /data/git-release/web | awk ‘{print $9}‘ | sed ‘/^$/d‘`
    dir=/data/git-release/web
    tag=$1
    for i in $pro
    do
    cd $dir/$i
    echo "更新索引..."
    git pull
    echo "删除本地release分支..."
    git branch -D release
    echo "检出远程release分支..."
    git checkout --track origin/release
    echo "删除本地master分支..."
    git branch -D master
    echo "从release检出最新的master分支代码..."
    git checkout -b master --track origin/release
    echo "重置master分支代码..."
    git push origin master
    echo "重置完成,主干代码已更新.开始标注tag.."
    git tag -a $tag -m "$tag"
    echo -e "tag标注结束,开始推送tag $tag..."
    git push origin $tag
    echo -e "$tag 推送成功,本次发版结束."
    done
  • Jenkins+Gitlab自动打TAG

    标签:echo   检出   tla   本地   实现   ima   jenkins配置   build   track   

    原文地址:https://blog.51cto.com/10874766/2513147

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!