Linux:Jenkins:参数化版本回滚(6)

news2024/11/16 3:37:50

上几章我讲到了自动集成和部署

Linux:Jenkins全自动持续集成持续部署(4)-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/w14768855/article/details/136977106


当我们觉得这个页面不行的时候,需要进行版本回滚,回滚方法我这里准备了两种

两者都是使用shell语句进行回滚

第一种是脚本调用git命令进行回滚

第二种是脚本调用

我现在环境是根据前几章的ci&cd搭建起来的,gitlab项目直接就部署好了


方法1

 

这里的参数你可以跟着我填上等会你就知道是做什么的了

#!/bin/bash
case $status  in
  huigun) #注意大小写
    echo "-----本次操作为回滚,版本号为$version-----"
    git reset --hard $version
echo "-----回滚完成,打包中-----"  
    ;;
  *)
  exit
esac
scp /var/lib/jenkins/workspace/${JOB_NAME}/* root@192.168.6.5:/var/www/html
scp /var/lib/jenkins/workspace/${JOB_NAME}/* root@192.168.6.6:/var/www/html

 

 

 

在构建的时候直接填写gitlab上的历史数值就可以进行回滚


方法2

和方法1一样只不过就是脚本变了

#!/bin/bash
jenkins_workspace="/var/lib/jenkins/workspace"
jenkins_workspace_bak="$jenkins_workspace/bak"
if [ -d "$jenkins_workspace_bak" ]; then
	echo "备份目录已经创建"
else
	
    mkdir -p "$jenkins_workspace_bak"
	echo "创建备份目录"
fi
#!/bin/bash
# ${JOB_NAME}    拉取下来的项目名称
# ${BUILD_NUMBER}    构建按次数
jenkins_workspace="/var/lib/jenkins/workspace"
jenkins_workspace_bak="$jenkins_workspace/bak"
case $status in
fabu)
cd ${jenkins_workspace}/${JOB_NAME}
tar cfz ${JOB_NAME}-${BUILD_NUMBER}.tar.gz ./*
mv ${JOB_NAME}-${BUILD_NUMBER}.tar.gz ${jenkins_workspace_bak}
;;
huigun)
rm -rf /var/lib/jenkins/workspace/${JOB_NAME}/*
cd $jenkins_workspace_bak
tar xf ${JOB_NAME}-${version}.tar.gz -C /var/lib/jenkins/workspace/${JOB_NAME}/
;;
esac
#!/bin/bash
scp /var/lib/jenkins/workspace/${JOB_NAME}/* root@192.168.6.5:/var/www/html
scp /var/lib/jenkins/workspace/${JOB_NAME}/* root@192.168.6.6:/var/www/html
rm -rf /var/lib/jenkins/workspace/${JOB_NAME}

构建的时候和刚刚的一样

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1552367.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

康耐视visionpro-CogAcqFifoTool工具详细说明

CogAcqFifoTool操作说明: ① 打开工具栏,双击或点击鼠标拖拽 添加CogAcqFifoTool ②.从图片采集设备/图像采集卡列表里选择对应的相机,视频格式选择图像格式。 Mono表示黑白图像,RGB表示彩色相机。点击初始化取相初始化相机。 ③…

提升K8S故障排除效率:详解Pod内抓包的高效策略!

在Kubernetes环境中,故障排除是管理者日常工作中不可或缺的一部分。随着容器化应用的广泛采用,需要一种高效的方法来诊断和解决Pod内部的问题。本文将重点介绍如何利用抓包技术提升Kubernetes环境中Pod内部故障排除的效率。 为什么需要Pod内抓包 在Kube…

Hadoop面试重点

文章目录 1. Hadoop 常用端口号2.Hadoop特点3.Hadoop1.x、2.x、3.x区别 1. Hadoop 常用端口号 hadoop2.xhadoop3.x访问HDFS 端口500709870访问 MR 执行情况端口80888088历史服务器1988819888客户端访问集群端口90008020 2.Hadoop特点 高可靠:Hadoop底层维护多个数…

软件概要设计说明书word原件(实际项目)

一、 引言 (一) 编写目的 (二) 范围 (三) 文档约定 (四) 术语 二、 项目概要 (一) 建设背景 (二) 建设目标 (三&a…

c语言数据结构(9)——插入排序、希尔排序

欢迎来到博主的专栏——C语言数据结构 博主ID:代码小豪 文章目录 排序插入排序希尔排序 排序 现在有N个数据的序列,其对应的序列号为[r1 ,r2 ……rn];将该序列对应的数据[k1 ,k2 ……kn]排成满足递减或递减的序列的操作称为排序 插入排序 玩过斗地主…

誉天华为认证云计算课程如何

HCIA-Cloud Computing 5.0 课程介绍:掌握华为企业级虚拟化、桌面云部署,具备企业一线部署实施及运维能力 掌握虚拟化技术、网络基础、存储基础等内容,拥有项目实施综合能力 满足企业虚拟化方案转型需求,应对企业日益多样的业务诉求…

京东云0基础搭建帕鲁服务器_4核16G和8核32G幻兽帕鲁专用服务器

使用京东云服务器搭建幻兽帕鲁Palworld游戏联机服务器教程,非常简单,京东云推出幻兽帕鲁镜像系统,镜像直接选择幻兽帕鲁镜像即可一键自动部署,不需要手动操作,真正的新手0基础部署幻兽帕鲁,阿腾云atengyun.…

项目模块—实现抑郁测评(小程序)

script <script setup> import { ref } from "vue";//控制轮播图页码 let current ref(0);//答题逻辑 const add (value) > {if (current.value < 9) {current.value current.value 1;} else {uni.switchTab({url: "/pages/my/my",});} }…

51单片机学习笔记11 使用DS18B20温度传感器

51单片机学习笔记11 使用DS18B20温度传感器 一、DS18B20简介1. 主要特点2. 工作原理3. 引脚说明4. ROM 二、1-wire协议简介1. 总线结构&#xff1a;2. 通信方式&#xff1a;3. 数据传输&#xff1a;4. 设备识别&#xff1a;5. 供电方式&#xff1a;6. 应用场景&#xff1a;7. 优…

Docker部署MinIO对象存储服务

1. 拉取MinIO镜像 # 下载镜像 docker pull minio/minio#查看镜像 docker images2. 创建目录 # 文件存储目录 mkdir -p /opt/minio/data# 配置文件 mkdir -p /opt/minio/config# 日志文件 mkdir -p /opt/minio/logs3. 创建Minio容器并运行 docker run \ -p 9000:9000 \ -p 90…

第4章.精通标准提示,引领ChatGPT精准输出

标准提示 标准提示&#xff0c;是引导ChatGPT输出的一个简单方法&#xff0c;它提供了一个具体的任务让模型完成。 如果你要生成一篇新闻摘要。你只要发送指示词&#xff1a;汇总这篇新闻 : …… 提示公式&#xff1a;生成[任务] 生成新闻文章的摘要&#xff1a; 任务&#x…

数据结构——快速排序的三种方法和非递归实现快速排序

数据结构——快速排序的三种方法和非递归实现快速排序&#xff08;升序&#xff09; 前言快速排序的单趟排序hoare法挖坑法前后指针法 快速排序的实现key基准值的选取快速排序代码快速排序的优化 快速排序&#xff08;非递归&#xff09; 前言 快速排序是Hoare于1962年提出的一…

http和https之间的区别和优势

HTTP&#xff08;超文本传输协议&#xff09;和HTTPS&#xff08;安全超文本传输协议&#xff09;是两种在互联网通信中应用广泛的协议&#xff0c;它们在数据传输、安全性、加密等方面有着明显的区别和优势。下面将详细介绍HTTP和HTTPS之间的区别和各自的优势。 区别和优势 1…

admin端

一、创建项目 1.1 技术栈 1.2 vite 项目初始化 npm init vitelatest vue3-element-admin --template vue-ts 1.3 src 路径别名配置 Vite 配置 配置 vite.config.ts // https://vitejs.dev/config/import { UserConfig, ConfigEnv, loadEnv, defineConfig } from vite im…

2024最新版克魔助手抓包教程(9) - 克魔助手 IOS 数据抓包

引言 在移动应用程序的开发中&#xff0c;了解应用程序的网络通信是至关重要的。数据抓包是一种很好的方法&#xff0c;可以让我们分析应用程序的网络请求和响应&#xff0c;了解应用程序的网络操作情况。克魔助手是一款非常强大的抓包工具&#xff0c;可以帮助我们在 Android …

uniApp使用XR-Frame创建3D场景(7)加入点击交互

上篇文章讲述了如何将XR-Frame作为子组件集成到uniApp中使用 这篇我们讲解如何与场景中的模型交互&#xff08;点击识别&#xff09; 先看源码 <xr-scene render-system"alpha:true" bind:ready"handleReady"><xr-node><xr-mesh id"…

阿里云CentOS7安装ZooKeeper单机模式

前提条件 阿里云CentOS7安装好jdk&#xff0c;可参 hadoop安装 的jdk安装部分 下载 [hadoopnode1 ~]$ cd softinstall [hadoopnode1 softinstall]$ wget https://archive.apache.org/dist/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz 解压 [hadoopnode1 …

Svg Flow Editor 原生svg流程图编辑器(四)

系列文章 Svg Flow Editor 原生svg流程图编辑器&#xff08;一&#xff09; Svg Flow Editor 原生svg流程图编辑器&#xff08;二&#xff09; Svg Flow Editor 原生svg流程图编辑器&#xff08;三&#xff09; Svg Flow Editor 原生svg流程图编辑器&#xff08;四&#xf…

flutter 修改app名字和图标

一、修改名字 在Android中修改应用程序名称&#xff1a; 在AndroidManifest.xml文件中修改应用程序名称&#xff1a; 打开Flutter项目中的android/app/src/main/AndroidManifest.xml文件。找到<application>标签&#xff0c;然后在android:label属性中修改应用程序的名称…

Jenkins拉取github项目相关问题

1.私有仓库问题 1.1如果你的仓库是私有的&#xff0c;21年起github就不支持账号密码的方式拉取代码了 那么就需要在github上面创建一个token (classic) 然后在Jenkins代码设置那里 然后应该就可以顺利打包了。 2.找不到pom&#xff08;多了一层文件夹&#xff09;问题 解…