网站首页 > 技术文章 正文
模块安装
pip install python-jenkins
使用前准备
首先要获取Jenkins的授权令牌,这样Python才能拿到访问权(自行百度怎么获取)
模块使用方法
1. 初始化Jenkins连接
jk = jenkins.Jenkins(url='Jenkins地址', username='用户名', password='授权令牌')
2. Job基本操作
2.1 创建Job
创建有2种方式,可以创建一个新的,也可以基于已有的Job模板创建
我这里使用Job模板创建
xml = jk.get_job_config('模板job名称') # 获取模板配置文件
jk.create_job(name='新的job名称', config_xml=xml)
2.2 构建Job
构建有2种方式:
普通构建
jk.build_job(name='构建的job名称')
参数化构建
jk.build_job(name='构建的job名称', parameters='构建的参数,字典类型')
2.3 停止一个正在运行的Job
jk.stop_build('job名称', '构建编号ID')
2.4 激活Job状态为可以构建
jk.enable_job('job名称')
2.5 变更Job状态为不可以构建
jk.disable_job('job名称')
2.6 删除Job
jk.delete_job('job名称')
3. 获取Job信息
3.1 获取Job的初始配置参数
就是Job的Build with Parameters内容
result = []
for each in jk.get_job_info('job名称')['property']:
if 'ParametersDefinitionProperty' in each['_class']:
data = each['parameterDefinitions']
for params in data:
temp_dict = dict()
temp_dict['name'] = params['defaultParameterValue']['name']
temp_dict['value'] = params['defaultParameterValue']['value']
temp_dict['description'] = params['description']
result.append(temp_dict)
print(result)
3.2 获取Job任务状态
获取流程:先获取到构建编号,再通过构建编号获取任务状态
这里我们一般是获取最后一次构建的任务状态,所以要先获取到最后一次构建的编号:
last_build_number = jk.get_job_info('job名称')['lastBuild']['number']
通过构建编号获取任务状态:
status = jk.get_build_info('job名称', last_build_number)['result']
print(status) # 状态有4种:SUCCESS|FAILURE|ABORTED|pending
3.3 获取Job控制台日志
通过构建编号获取控制台日志:
result = jk.get_build_console_output(name='job名称', number=last_build_number)
print(result)
3.4 获取Job测试报告
通过构建编号获取测试报告:
result = jk.get_build_test_report(name='job名称', number=last_build_number)
print(result)
- 上一篇: jenkins rpm包方式安装
- 下一篇: Jenkins的凭证管理
猜你喜欢
- 2024-11-21 Docker搭建Jenkins持续集成环境构建springcloud项目
- 2024-11-21 使用Jenkins完成项目持续集成和部署
- 2024-11-21 Jenkins的一些技巧
- 2024-11-21 Jenkins 学习笔记
- 2024-11-21 重启了下 Jenkins,踩到了一个深埋多年的坑
- 2024-11-21 详解Jenkins 实现Gitlab事件自动触发Jenkins构建及钉钉消息推送
- 2024-11-21 Jenkins 安装部署教程
- 2024-11-21 Docker+Jenkins+Nginx+Spring Boot 自动化部署项目
- 2024-11-21 从零搭建一个基于 ELK 的日志、指标收集与监控系统
- 2024-11-21 手把手教你用 Jenkins 自动部署 SpringBoot
- 1507℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 519℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 489℃MySQL service启动脚本浅析(r12笔记第59天)
- 468℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 466℃启用MySQL查询缓存(mysql8.0查询缓存)
- 446℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 426℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 423℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)