在jenkins中获取git的修改记录的方法

  1. 获取 Jenkins API Token:

首先,登录到你的 Jenkins 服务器。

点击右上角的用户名,然后选择"Configure(配置)"。

在"API Token"部分,生成一个新的 API Token 或使用已有的 Token。

  1. 构建 API 请求 URL:

假设你的 Jenkins 服务器 URL 是 http://jk.yeshen.org Job 名称是 test-git-log,编译的序号是 10,那么 API 请求 URL 可能是:

https://jk.yeshen.org/job/test-git-log/10/api/json

  1. 请求日志的方法:
python 复制代码
import requests

USER_NAME = 'hello'
TOKEN = 'D7F4B342FAC0C3E532E1A6A49DA7AEBC'
JOB_BASE_NAME = os.getenv("JOB_BASE_NAME")
BUILD_NUMBER = os.getenv("BUILD_NUMBER")
HOST = "jk.yeshen.org"

url = "http://" + USER_NAME + ":" + TOKEN + "@" + HOST + "/job/"+ JOB_BASE_NAME +  "/" + BUILD_NUMBER + "/api/json"
param={'tree':'changeSet[items[comment]{0,}]'}
content = requests.get(url, params=param).text

if response.status_code == 200:
    data = response.json()
    print(data)
else:
    print('Failed to retrieve data:', response.status_code)
  1. 多机器集群的处理方法

一是我这边的机器比较多,换过了几次域名。

二是域名是用iptable映射出来到某个端口上的,不是固定的域名。

三是这边有多台slave机器,slave-0、slave-1、slave-2等等。

在这个场景下,上面的请求有概率会在迁移之后,请求失败。

可能的处理方法如下:

方法A:

把上面的 HOST 修改成 localhost:8080,这样就是本机请求。

观察slave机器上会打包失败,如果运行在slave机器上,那么可以这样,把host修改成master的ip+8080端口。

比如 HOST = "39.156.66.10:8080"

方法B:

修改映射规则,支持域名访问8080端口,那么就是步骤3中的配置,HOST = "jk.yeshen.org"

相关推荐
ShineWinsu4 小时前
对于Git:基础操作的超详细保姆级解析
linux·c++·git·面试·备份·管理·版本控制器
沉迷...6 小时前
Git skip-worktree 使用笔记(本地忽略配置文件)
javascript·git
解道Jdon8 小时前
JDK 27发布:紧凑对象头、G1默认、量子安全TLS
ide·windows·git·svn·eclipse·github·visual studio
qq_3494479510 小时前
Ubuntu26安装jenkins
jenkins
蓝天星空11 小时前
Jenkins项目矩阵授权配置
jenkins
天天喝旺仔11 小时前
Git 内部原理深度解析:从 blob/tree/commit 对象到 packfile 与垃圾回收
数据结构·数据库·git·算法·哈希
艾莉丝努力练剑11 小时前
【Git:综合复盘】Git 原理与使用
大数据·人工智能·git·elasticsearch·面试
ShineWinsu1 天前
对于Git:远程操作的超详细保姆级解析
linux·git·gitee·github·远程仓库·分布式版本控制系统·远程操作
梦帮科技1 天前
从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环
javascript·git·架构·node.js·reactjs·html5·visual studio
今年下半年1 天前
Jenkins阿里云服务器一键部署
jenkins