当前位置: 首页 > news >正文

jenkins整合gerrit

背景

公司项目之前使用jenkins整合了gitlab,后面代码迁移到gerrit,所以需要修改jenkins配置。下面就简单的介绍一下jenkins如何整合gerrit。

环境

服务器:linux
环境:docker、jenkins
代码仓库:gerrit

前提

docker、jenkins安装,自行百度。
gerrit仓库账号密码,自行申请。

流程

gerrit仓库访问权限配置

1、在Gerrit平台注册一个jenkins用户,然后设置一个SSH key。

2、Gerrit Web页面,进入Browse > Groups > Service Users,将jenkins 用户添加到这个分组中。(Gerrit v3.3之前的CI组名称为Non-Interactive Users)
在这里插入图片描述

3、Gerrit Web页面,Browse > Repositories > [仓库名称] > Access > Edit

  • Reference: refs/*
    • Read: ALLOW for Service Users
  • Reference: refs/heads/*
    • Label Code-Review: -1, +1 for Service Users
    • Label Verified: -1, +1 for Service Users

4、需要在gerrit配置公钥。因为我是用的docker,需要进入jenkins容器:docker exec -it jenkins bash,创建ssh密钥:

$ ssh-keygen -m PEM -t rsa -C "邮箱地址"
ssh-keygen -m PEM -t ed25519 -C "邮箱地址"

生成密钥的路径:

/var/jenkins_home/.ssh/id_rsa
/var/jenkins_home/.ssh/id_ed25519

可以使用docker cp指令,复制出公钥(/var/jenkins_home/.ssh/id_rsa.pub)。
docker cp命令参考:
在这里插入图片描述
将公钥配置到gerrit的ssh里面。如下,私钥配置在jenkins里面,见下文截图。
在这里插入图片描述

jenkins配置

首先需要在jenkins的系统管理–插件管理,下载Gerrit Trigger插件,下载完成后。配置新gerrit服务。
1、在这里插入图片描述

2、
在这里插入图片描述
3、
在这里插入图片描述
输入后,可以test一下,是否现实success。

新建item

1、在这里插入图片描述
备注一下:如果项目需要引入有变动的jar,还是建议构建maven项目,自由风格项目不会加载你变更后的jar内容。

2、在这里插入图片描述
3、在这里插入图片描述
4、
在这里插入图片描述
5、在这里插入图片描述

6、在这里插入图片描述
7、在这里插入图片描述
8、在这里插入图片描述
构建的docker容器。

#/bin/bash
# 注意 其实在这里输入的命令,就是在服务器上的命令,我们所处于的位置就是当前登录用户的根目录下 echo ">>>>>>>>>>>>>cd 到宿主机映射 Jenkins 的项目路径下>>>>>>>>>>>>>"
cd xx#服务名称
SERVER_JAR=xx#查询进程,并杀掉当前jar/java程序
pid=`ps -ef|grep $SERVER_JAR| grep -v grep | awk '{print $2}'`kill -9 $pidecho ">>>>>>>>>>>>>$pid进程终止成功>>>>>>>>>>>>>"echo ">>>>>>>>>>>>>停止容器>>>>>>>>>>>>>"docker stop xxecho ">>>>>>>>>>>>>删除容器>>>>>>>?>>>2>22"docker rm xxecho ">>>>>>>>>>>>>删除镜像>>>>>>>>>>>> >"docker rmi xx:1.0echo ">>>>>>>>>>>>>制作镜像>>>>>>>>>>>>>"docker build -f Dockerfile -t xx:1.0  .echo ">>>>>>>>>>>>>启动容器>>>>>>>>>>>>>"docker run -p 8891:8891 -p 8892:8892 --name athena -d -v /xx:/athena/tmp -v /usr/share/zoneinfo:/usr/share/zoneinfo xx:1.0echo ">>>>>>>>>>>>自动部署结束>>>>>>>>>>>>>"

最后执行就可以了。

相关文章:

jenkins整合gerrit

背景 公司项目之前使用jenkins整合了gitlab,后面代码迁移到gerrit,所以需要修改jenkins配置。下面就简单的介绍一下jenkins如何整合gerrit。 环境 服务器:linux 环境:docker、jenkins 代码仓库:gerrit 前提 docke…...

PMP考完后应该考什么?

PMP(项目管理专业)认证是全球范围内最受认可和尊重的项目管理资格证书之一。通过PMP考试的人已经展示了他们在项目管理领域的知识和技能。然而,项目管理是一个不断发展和变化的领域,持续学习和进一步提升自己的能力是非常重要的。…...

科技资讯|苹果Vision Pro可通过手势ID检测不同用户

近日,美国专利局公布了苹果公司的一项专利申请,该专利申请涉及基于手部特征验证用户身份的技术。苹果指出,可能是多个家庭成员都想使用 Apple Vision Pro,系统必须识别不同的手势以控制 visionOS。在另一个示例中,苹果…...

CUDA编程模型- 层次结构

层次结构的划分 在GPU上,为了满足其大规模并行处理的特性,执行模型采用了大量并行化的轻量级线程。当我们谈到CUDA编程模型时,我们首先要考虑的是其线程执行层次结构。这种层次结构起始于一个被称为kernel的函数,当它在GPU上执行…...

国际站阿里云服务器无法安装程序怎么办?

阿里云服务器是阿里云推出的一种云核算产品,它能够帮助企业和个人快速建立、扩展和管理网络服务。可是,有时候在运用阿里云服务器时,或许会遇到无法装置程序的问题。本文将具体介绍如何处理这个问题。 阿里云服务器无法装置程序或许是由多种原…...

基于Vue+webpack之H5打包资源优化

前言 基于公司的业务以及今年接触到的项目大部分都是APP混合开发,即原生Android/ios H5页面开发APP。项目从产品需求的评审到方案的评审再到开发提测...这一套流程下来让我收货颇多。总想找个时间好好记录一番,大概还是自己懒惰了,一直拖到现…...

C#中DataAdapter对象

目录 一、DataAdapter对象概述 二、Fill()方法填充数据集DataSet 1.举例 2.源码 3.生成效果 三、Update()方法 1.Update()方法更新数据源 2.设置数据库主键 3.源码 4.生成效果 一、DataAdapter对象概述 DataAdapter对象是一个数据适配器对象,是DataSet与…...

Nginx正向代理,反向代理,负载均衡

Nginx正向代理,反向代理,负载均衡 Nginx当中有两种代理方式: 七层代理(http协议) 四层代理(tcp/udp流量转发) 七层代理:七层代理,代理的是http的请求和响应 客户端请求…...

安防视频监控平台EasyCVR出现视频流播放卡顿情况,如何优化?

视频集中存储/云存储/视频监控管理平台EasyCVR能在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理,实现视频资源的鉴权管理、按需调阅、全网分发、智能分析等。AI智能/大数据视频分析EasyCVR平台已经广泛应用在工地、工厂、园区、楼…...

VRRP基础

1.VRRP概述 VRRP( Virtual Router Redundancy Protocol,虚拟路由器冗余协议)既能够实现网关的备份,又能解决多个网关之间互相冲突的问题,从而提高网络可靠性。 通过把几台路由设备联合组成一台虚拟的“路由设备”&…...

虚实融合 智兴百业 | 赵捷副市长莅临拓世科技集团筹备展台指导,本月19号!拓世科技集团与您相约世界VR产业大会

新时代科技革命中,虚拟现实技术、5G和“元宇宙”概念崛起,助力全球范围内的数字经济和产业转型。我国也正迈向高质量发展攻坚阶段,在中部腹地的江西,政府结合全球技术趋势和自身发展需求,选择虚拟现实为新的经济增长点…...

2000-2023年省市县人工智能企业数量数据

2000-2023年省市县人工智能企业数量数据 1、时间:2000-2023年7月 2、指标:所属年度、所属省份、所属城市、所属区县、人工智能企业数量(省人工智能企业数量、地级市人工智能企业数量、区县人工智能企业数量) 3、来源&#xff1…...

CSP模拟58联测20 牵着她的手

题目大意 考虑所有 n n n行 m m m列的矩阵,矩阵中每个元素的值都在 1 1 1到 k k k之间。对于这样的矩阵 A A A,按照下面规则构造序列 x 1 , x 2 , ⋯ , x n m x_1,x_2,\cdots,x_{nm} x1​,x2​,⋯,xnm​: 对于 1 ≤ i ≤ n 1\leq i\leq n …...

电脑版便签软件下载用哪个?

在面对每天繁忙的工作日程,电脑是许多上班族不可或缺的工作助手,而一款得心应手的电脑便签软件,更是可以帮助大家记录、提醒、督促各项任务按时完成的得力助手。那么,究竟在众多的电脑便签软。件中,哪一位能够真正成为…...

别再卷组件库了,Vue 拖拽库都断代了!

前言 最近在测试 Tailwind CSS 和 Uno CSS 这两种原子化 CSS 工具是否能够有效减少打包后的文件体积时,先开始分析这些工具的优缺点,然后再直接上数据,最后做了一款经典的 TodoList 来进行测试,文章都写好了就差最后的数据了。 …...

利用服务器打造创新的在线社区

在这个数字化时代,服务器是实现创意项目的关键工具之一。虽然有许多用途,但其中最引人注目的是将服务器用于构建创新的在线社区。 为什么选择在线社区? 在线社区是连接人们、促进互动和分享知识的强大工具。它们可以围绕共同的兴趣、目标或…...

CSS动画实现节流

目录 介绍: 实现代码: 介绍: 节流指的避免过于频繁的执行一个函数,例如:一个保存按钮,为了避免重复提交或者服务器考虑,往往需要对点击行为做一定的限制,不然会频繁的请求接口,之前基本上是通过js去控制节…...

Apache Log4j Server (CVE-2017-5645) 反序列化命令执行漏洞

文章目录 Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645)1.1 漏洞描述1.2 漏洞复现1.2.1 环境启动1.2.2 漏洞验证1.2.3 漏洞利用 1.3 加固建议 Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645) 1.1 漏洞描述…...

视口 css

视口是浏览器上显示网页的一块区域,大小并不局限于浏览器可视区域范围。PC端和移动端视口差别很大。PC端中视口宽度始终与浏览器窗口宽度一致,移动端视口与浏览器窗口宽度完全独立。 PC端 PC端视口大小等于浏览器窗口可视区域大小,无论浏览…...

Puppeteer记录操作过程及优秀的开源插件(五)

Puppeteer记录操作过程及优秀的开源插件(五) Puppeteer记录操作过程及优秀的开源插件(五)一、简介二、自动生成测试代码三、优秀的开源插件四、参考案例 一、简介 本节我们将介绍通过浏览器工具记录用户的实际操作,并…...

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明:假设每台服务器已…...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

反向工程与模型迁移:打造未来商品详情API的可持续创新体系

在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...

大学生职业发展与就业创业指导教学评价

这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...

DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”

目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...

Go语言多线程问题

打印零与奇偶数(leetcode 1116) 方法1:使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?

在工业自动化持续演进的今天,通信网络的角色正变得愈发关键。 2025年6月6日,为期三天的华南国际工业博览会在深圳国际会展中心(宝安)圆满落幕。作为国内工业通信领域的技术型企业,光路科技(Fiberroad&…...

MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释

以Module Federation 插件详为例,Webpack.config.js它可能的配置和含义如下: 前言 Module Federation 的Webpack.config.js核心配置包括: name filename(定义应用标识) remotes(引用远程模块&#xff0…...