在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"

相关推荐
ganshenml19 小时前
【GIT】Git 本地无法识别远程分支的原因与解决方法 not a valid ref
大数据·git·elasticsearch
lizz66619 小时前
在Git提交中,常见的提交类型(基于Angular提交规范,已被广泛采用)
git
涵涵(互关)19 小时前
git基础操作(按图一步一步来,有案例)
git
我是苹果,不是香蕉20 小时前
git remote报错解决办法
git
SHIPKING39321 小时前
【git命令操作指南】
git
LT_10291 天前
如何初始化一个本地的项目到远程git仓库?
git·源代码管理
小付爱coding1 天前
Claude Code安装教程【windows版本】
java·git·python
BIBI20491 天前
Windows 下 Git 常规操作教程:命令行与 TortoiseGit
windows·git·tortoisegit·配置·版本控制·入门指南
The Straggling Crow1 天前
熟练版本控制 (Git)、CI/CD 流程。
git·elasticsearch·ci/cd
weixin_307779131 天前
Jenkins 多分支流水线自动化引擎:GitHub Branch Source 插件完全指南
运维·架构·自动化·jenkins