码云 Gitee + Jenkins 配置教程

安装jdk
安装maven

在这里插入图片描述

安装Jenkins

https://blog.csdn.net/minihuabei/article/details/132151292?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22132151292%22%2C%22source%22%3A%22minihuabei%22%7D

插件安装

前往 Manage Jenkins -> Manage Plugins -> Available,在 Filter 中搜索 Gitee:
在这里插入图片描述

下方可选列表中勾选 Gitee(如列表中不存在 Gitee,则点击 Check now 更新插件列表),然后点击“Download now and install after restart”。
在这里插入图片描述

在安装页面勾选“Restart Jenkins when installation is complete and no jobs are running”
安装完之后,可以在 “installed” 页面看到 Gitee 插件
在这里插入图片描述

插件配置

添加 Gitee 链接配置

  1. 前往 Jenkins -> Manage Jenkins -> Configure System -> Gitee 配置 ->
    Gitee 链接
  2. 在 链接名 中输入 Gitee 或者你想要的名字
  3. Gitee 域名 URL 中输入码云完整 URL地址: https://gitee.com (码云私有化客户输入部署的域名)
  4. 证书令牌 中如还未配置码云 APIV5 私人令牌,点击 Add - > Jenkins

1 Domain 选择 全局凭据
2 Kind 选择 Gitee API 令牌
3 Scope 选择你需要的范围
4 Gitee API Token 输入你的码云私人令牌,获取地址: https://gitee.com/profile/personal_access_tokens
5 ID, Descripiton 中输入你想要的 ID 和描述即可。、
在这里插入图片描述

Credentials 选择配置好的 Gitee APIV5 Token
在这里插入图片描述

  1. 点击 Advanced ,可配置是否忽略 SSL 错误(适您的Jenkins环境是否支持),并可设置链接测超时时间(适您的网络环境而定)
  2. 点击 Test Connection 测试链接是否成功,如失败请检查以上 3,5,6 步骤。

在这里插入图片描述

新建构建任务

前往 Jenkins -> New Item , name 输入 ‘Gitee Test’,选择 Freestyle project , 再点击 OK 即可创建构建项目。
在这里插入图片描述

任务全局配置

任务全局配置中需要选择前一步中的Gitee 链接。如图:
在这里插入图片描述

源码管理配置

选择 Source Code Management 选项卡:

  1. 点击 Git

  2. 输入你的仓库地址,例如 https://gitee.com/AndyWannaSing/hello-casstime-demo.git

     1 点击 add-Jenkins,添加用户名和密码凭证(连接项目的时候需要用它做校验)2 点击 Advanced 按钮, Name 字段中输入 origin, Refspec 字段输入 +refs/heads/*:refs/remotes/origin/* +refs/pull/*/MERGE:refs/pull/*/MERGE
    

在这里插入图片描述

  1. Branch Specifier 选项:

    对于单仓库工作流输入: origin/ g i t e e S o u r c e B r a n c h 对于 P R 工作流输入 : p u l l / {giteeSourceBranch} 对于 PR 工作流输入: pull/ giteeSourceBranch对于PR工作流输入:pull/{giteePullRequestIid}/MERGE

  2. Additional Behaviours 选项:

    对于单仓库工作流,如果你希望推送的分支构建前合并默认分支(发布的分支),可以做以下操作:
    点击 Add 下拉框
    选择 Merge before build
    设置 Name of repository 为 origin
    设置 Branch to merge to 为 ${ReleaseBranch} 即您要合并的默认分支(发布分支)
    对于 PR 工作流,码云服务端已经将 PR 的原分支和目标分支作了预合并,您可以直接构建,如果目标分支不是默认分支(发布分支),您也可以进行上诉构建前合并。

触发器配置

选择 Build Triggers 选项卡:

  1. Enabled Gitee triggers 勾选您所需要的构建触发规则,如 Push Event, Opened Merge
    Request Events,勾选的事件会接受WebHook,触发构建。目前支持触发事件有:

    	Push Events :推送代码事件Opened Merge Request Events :提交 PR 事件Updated Merge Request Events :更新 PR 事件Accepted Merge Request Events :接受/合并 PR 事件Closed Merge Request Events :关闭 PR 事件Approved Pull Requests : 审查通过 PR 事件Tested Pull Requests :测试通过 PR 事件
    
  2. Enable [ci-skip] 该选项可以开启支持 [ci-skip] 指令,只要commit message 中包含
    [ci-skip],当前commit 即可跳过构建触发。

  3. Ignore last commit has build 该选项可以跳过已经构建过的 Commit 版本。

  4. Allowed branches 可以配置允许构建的分支,目前支持分支名和正则表达式的方式进行过滤。

  5. Secret Token for Gitee WebHook 该选项可以配置 WebHook 的密码,该密码需要与码云
    WebHook配置的密码一致方可触发构建。

  6. 注意:若 PR 状态为不可自动合并,则不触发构建。

在这里插入图片描述

构建后步骤配置

选择 Post-build Actions 选项卡:

构建结果回评至码云

  1. 点击 Add post-build action 下拉框选择 “将构建状态评论到 Gitee pull request 中”

  2. Advanced 中可以配置:

    仅为构建失败回评到码云
    自定义各状态的回评内容(内容可以引用 Jenkins 的环境变量,或者自定义的环境变量)
    
  3. 若开启该功能,还可将不可自动合并的状态回评至码云
    在这里插入图片描述

构建成功自动合并PR
点击 Add post-build action 下拉框选择 “当构建成功自动合并 Gitee 的 Pull Request”
在这里插入图片描述

新建码云仓库WebHook

进入源码管理配置中设置的码云仓库中,进入 管理 -> WebHooks:

在这里插入图片描述

添加 WebHook, URL 填写 触发器配置的地址。
密码填写:触发器配置第 5 点中配置的 WebHook密码,不设密码可以不填
勾选 PUSH, Pull Request

在这里插入图片描述
在这里插入图片描述

其中:http://7e2be7e8.ngrok.io/project/Gitee Test 是外网的IP。(内网转外网域名的方法)
在这里插入图片描述

测试触发构建

通过测试按钮触发构建

在这里插入图片描述
在这里插入图片描述

测试推送触发构建

码云的 WebHook 管理中选择勾选了PUSH的 WebHook 点击测试,观察 Jenkins 任务的构建状态
码云仓库页面编辑一个文件提交,观察 Jenkins 任务的构建状态

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

测试PR触发构建

码云的 WebHook 管理中选择勾选了 Pull Request 的 WebHook 点击测试,观察 Jenkins 任务的构建状态
在码云仓库中新建一个Pull Request,观察 Jenkins 任务的构建状态

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决Vs Code工具开发时 保存React文件时出现乱码情况

Vs Code工具开发时 保存React文件时出现乱码情况 插件库搜索:JS-CSS-HTML Formatter 把这个插件禁用或者卸载就解决保存时出现乱码的问题了; 如果没有解决,再看下面方案! 出现乱码问题通常是因为文件的编码格式不正确。您可以尝试以下解决方法: 确认文件编码格式&a…

Visual Studio 2019 实用功能设置(背景颜色,代码字体及行号设置)

前言 Visual Studio 2019 安装包的下载教程、安装教程 教程 博主博客链接:https://blog.csdn.net/m0_74014525 关注博主,后期持续更新系列文章 系列文章 第一篇:Visual Studio 2019 详细安装教程(图文版) 第二篇&…

在win10, win11 家庭版中安装远程桌面服务

win10, win11 家庭版中提供远程桌面服务 简介 在windows家庭版中,是不提供远程桌面服务的,你没有办法使用远程桌面连接到windows家庭版中。 当然, 你可用升级windows 版本到专业版,这样就可用享受到windows自带的远程…

基于ARM+FPGA (STM32+ Cyclone 4)的滚动轴承状态监测系统

状态监测系统能够在故障早期及时发现机械设备的异常状态,避免故障的 进一步恶化造成不必要的损失,滚动轴承是机械设备的易损部件,本文对以滚动 轴承为研究对象的状态监测系统展开研究。现有的监测技术多采用定时上传监 测数据,…

自定义elementui的主题

通常情况下,我们使用elementui框架的时候默认组件的主题都是白色的,比如: 但是如果想自定义主题,改变主题颜色,以及各种默认颜色,其实也不难: 配置默认主题,选好后点击下载 在vu…

重磅!百度再放大招,文心大模型3.5三大维度、20项指标遥遥领先

近日,清华大学新闻与传播学院沈阳团队发布《大语言模型综合性能评估报告》(下文简称“报告”),报告显示百度文心一言在三大维度20项指标中综合评分国内第一,超越ChatGPT,其中中文语义理解排名第一&#xff…

JVM基础篇-StringTable

StringTable 特性 常量池中的字符串仅是符号,第一次用到时才变为对象 利用串池的机制,来避免重复创建字符串对象 字符串变量拼接的原理是 StringBuilder (1.8) 字符串常量拼接的原理是编译期优化 可以使用 intern 方法&#…

VSCode C/C++ 分目录编译配置

分目录编译配置记录 launch.json文件 注释处为修改内容 {// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid830387"version": "0.2.0","configur…

uniapp两个单页面之间进行传参

1.单页面传参:A --> B url: .....?code JSON.stringify(param), 2.单页面传参B–>Auni.$emit() uni.$on()

shell 入门练习小记

一、hello world #!/bin/bash echo "Hello World !"#! 为约定的标记,告诉系统这个脚本需要什么解释器执行,后接绝对路径 /bin/bash 表示期望 bash去解析并运行shell echo用于向窗口输出文本 chmod x ./test.sh #给脚本赋执行权限 ./test.sh …

Android性能优化—数据结构优化

优化数据结构是提高Android应用性能的重要一环。在Android开发中,ArrayList、LinkedList和HashMap等常用的数据结构的正确使用对APP性能的提升有着重大的影响。 一、ArrayList ArrayList内部使用的是数组,默认大小10,当数组长度不足时&…

【Linux命令详解 | cp命令】Linux系统中用于复制文件或目录的命令

文章标题 简介参数列表二,使用介绍1. 复制单个文件2. 复制多个文件3. 复制目录4. 保留文件属性5. 创建链接6. 强制覆盖7. 显示复制进度8. 创建备份9. 只有当源文件比目标文件新时才复制10. 复制链接文件 总结 简介 cp命令在Linux系统中用于复制文件或目录。其功能强…

通用人工智能操作系统

随着科技的飞速发展,人工智能已经成为了当今世界最热门的技术领域之一。从智能手机、自动驾驶汽车到智能家居系统,人工智能技术已经渗透到了我们生活的方方面面。然而,尽管人工智能在很多领域取得了显著的成果,但它仍然存在一些局…

电动汽车设计、制造、研发的学科、技术和前沿科技综述

引言:电动汽车作为替代传统燃油汽车的一种先进交通工具,不仅具有环保、低噪音等优势,而且对于能源消耗和气候变化等全球性问题也具有重要意义。本文将综述与电动汽车设计、制造、研发相关的学科、技术和前沿科技,以期对电动汽车领…

【Python】Web学习笔记_flask(3)——上传文件

用GET、POST请求上传图片并呈现出来 首先还是创建文件上传的模板 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>上传图片</title> </head> <body> <form action""…

使用 POI 在 Word 中重新开始编号、自定义标题格式

效果图 引入依赖 <!-- https://mvnrepository.com/artifact/org.apache.poi/poi --><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>4.1.2</version></dependency><!-- https…

【GO】 33.go-zero 示例

1. 获取go-zero库 go get -u github.com/zeromicro/go-zero 2. 安装goctl brew install goctlgoctl -v #goctl version 1.5.4 darwin/amd64 3. 创建.api文件&#xff0c; greet.api goctl api -o greet.api syntax "v1"info (title: // TODO: add titledesc: //…

OSPF综合实验

实验题目如下&#xff1a; 实验拓扑如下&#xff1a; 实验要求如下&#xff1a; 【1】R4为ISP&#xff0c;其上只能配置IP地址: R4与其他所有直连设备间使用公有 【2】R3---R5/6/7为MGRE环境&#xff0c;R3为中心站点 【3】整个OSPF环境IP地址为172.16.0.0/16 【4】所有设备…

Python——调用webdriver.Chrome() 报错

今天运行脚本&#xff0c;报错内容如下&#xff1a; collecting ... login_case.py:None (login_case.py) login_case.py:11: in <module> dr webdriver.Chrome() D:\Program Files (x86)\Python\Python39\Lib\site-packages\selenium\webdriver\chrome\webdriver.p…

外网通过ipv6访问家里设备

想从公司访问家里的设备&#xff0c;比较轻松方便的&#xff0c;用向日葵也可以远程。但是家里电脑比较old的了&#xff0c;向日葵开起来&#xff0c;占用内存挺大的&#xff0c;想尝试windows自带的“mstsc”&#xff0c;所以硬着头皮搞ipv6. &#xff08;重点提示&#xff1…