(四) Jenkins从0-1搭建--基于pipeline构建发布进阶项目(分支列表,回滚项目)

目录

一、获取项目分支列表

1. 1 构建参数--git参数, Flag

1.2.构建参数--Active Choices Reactive , DisFlag

二、回滚项目

 2.1 构建参数--选项参数 

2.2构建参数--字符参数

三、项目备份

3.1   项目发布时备份



一、获取项目分支列表

1. 1 构建参数--git参数, Flag

 按照图示填写内容即可

1.2.构建参数--Active Choices Reactive , DisFlag

groovy script脚本:


if(Flag.equals('')) {
	inputBox="<input name='value' type='text' style='width: 30%;height:32px;' value='Select Branch or Tag as listed above '>"
} else {
	inputBox="<input name='value' type='text' style='width: 30%;height:32px;' value=\"${Flag}\" disabled>"
	}
						

 最终效果:

Flag: 获取项目的所有分支,右侧Filter查询自己想要的分支

DisFlag: 点击Flag处的分支会在此处显示具体分支名,可以复制该分支名到上面发布分支用于发布项目

二、回滚项目

 2.1 构建参数--选项参数 

2.2构建参数--字符参数

最终效果图: 默认deploy是正常发布;下拉框选择rollback是回滚,需要填写回滚的版本号

 回滚版本号为左侧发布历史的数字,如下的290,输入版本号发布就可以回滚到制定的版本号

三、项目备份

3.1   项目发布时备份

项目备份脚本,在构建环境处实现: 

stage('构建环境') {
      steps {
          
      sh '''case $status in
    deploy)
       path="${WORKSPACE}/springboot-helloworld/bak/${BUILD_NUMBER}" 
      if [ -d $path ];
  then
     echo "The files is already  exists "
  else
     mkdir -p  $path
 fi
 cp -r ${WORKSPACE}/springboot-helloworld/target/*.jar $path 
 cd ${WORKSPACE}/springboot-helloworld/bak/
 pwd
 # 保留历史5个版本
 ls -t |awk 'NR>5'|xargs rm -rf 
        ;;
    rollback)
    
    pwd
  
        ;;
    *)
    exit
        ;;
esac '''

      }
}

jenkins项目默认路径: /var/lib/jenkins/workspace

项目名: springboot-helloworld

${WORKSPACE}: jenkins项目默认路径

${BUILD_NUMBER}: 发布的版本号

全路径为jenkins所在服务器: /var/lib/jenkins/workspace/流水线任务名称/springboot-helloworld/

1.备份路径:  path="${WORKSPACE}/springboot-helloworld/bak/${BUILD_NUMBER}" 

2. 保留历史5个版本,可以根据需求自己修改保留个数

 最终效果图:

 包含: 

   1.服务器选择

   2. 发布分支填充和获取项目分支列表

  3. 发布环境填写

   4. 发布&回滚

总结:

  1.jenkins发布时能自动获取项目所有分支列表,填入对应分支发布,比较适合开发测试环境

 2. 项目新增备份&回滚功能,在项目发布时自动备份当前项目至jenkins服务器。项目发布时可选择正常发布项目或者回滚项目。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值