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

相关推荐
小安同学iter1 天前
三台服务器,一套流水线:如何实现无缝自动化部署?
gitlab·jenkins
liuyao_xianhui1 天前
版本控制器git--gdb/cgdb
linux·运维·服务器·git
徐同保1 天前
如何使用GitKraken把git项目迁移到另一个平台,并保存所有提交记录,例如把github上的项目,迁移到gitee
git·gitee·github
高小秋1 天前
项目开发使用 git工作流插件 -- jgitflow开发实践
git
tealcwu1 天前
【软件工程】浅析Git message, version, changelog之间的关系
git
五号厂房1 天前
Git Worktree 使用指南
git
秦jh_1 天前
【git】企业级开发模型
git
y***54881 天前
Git在开源项目中的协作
git
...对方正在输入......2 天前
Elasticsearch集群部署实战指南
elasticsearch·jenkins
老友記2 天前
git cherry-pick使用
git