Jenkins的回滚

  • jenkins 基于上次构建结果回滚方式
    思路:设置构建参数,脚本根据参数执行,拉取代码后压缩为项目名称+构建号的tar包,然后将最新的压缩包发送到应用主机,回滚则是将要回滚的压缩包,改为最新的构建号压缩包,然后发送到应用主机

    《Jenkins的回滚》 image.png
    《Jenkins的回滚》 image.png
    《Jenkins的回滚》 image.png

case $Status  in
  Deploy)
    echo "Status:$Status"
    path="${WORKSPACE}/bak"
    if [ -d $path ];
    then
        echo "The files is already  exists "
    else
        mkdir -p  $path
    fi
    cd ${WORKSPACE}
    tar czf bak/${JOB_NAME}-${BUILD_NUMBER}.tar.gz * --exclude=bak
    find $path  -mtime 2 -name "*.tar.gz"  -exec rm -rf {} \;
    echo "Completin!"
    ;;
  Rollback)
      echo "Status:$Status"
      echo "Version:$Version"
      cd ${WORKSPACE}/bak
      cp -R `ls /root/.jenkins/workspace/warbak/bak  |  grep $Version`   ${JOB_NAME}-${BUILD_NUMBER}.tar.gz   ##复制为最新版本构建号
      ;;
  *)
  exit
      ;;
esac
  • WORKSPACE : /root/.jenkins/workspace/warbak/ 工作目录变量
  • JOB_NAME:项目名称
  • BUILD_NUMBER:构建号
    将最新版本压缩包发送到其他主机

    《Jenkins的回滚》 image.png

《Jenkins的回滚》 image.png

    原文作者:前行I
    原文地址: https://www.jianshu.com/p/00bdc87cd3ee
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞