Python-Jenkins常用API
jenkins.Jenkins(url, username=None, password=None, timeout=, resolve=True) #创建jenkins实例
参数:
url –jenkins服务器地址 , str
username – 用户名, str
password – 密码, str
timeout – 连接超时时间 (default: not set), int
resolve – Attempts to resolve and auto-correct API redirection. 默认: True bool
例:jenkins.Jenkins(‘http://
.
.
.
:8080/’,‘admin’,’******’)
返回值:
Jenkins实例
get_job_info(name, depth=0, fetch_all_builds=False) # 获取工程信息字典
参数:
name – 工程名, str
depth – JSON depth, int
fetch_all_builds – 如果为true,Jenkins中的所有构建都会被检索出来,如果为false只会返回最近的100个构建。
返回值:
返回只是一个字典类型。
get_job_name(name) # 获取工程名称
参数:
name — 工程名称
返回值:
如果Jenkins中存在工程名称就返回工程的名称,否则返回None。
debug_job_info(job_name) # 以更友好的的方式显示工程信息
参数:
job_name — 工程名称
返回值:
以更友好的方式返回工程信息。
get_build_info(name, number, depth=0) # 获取工程构建信息
参数:
name – 工程名称, str
number – 构建号, int
depth – JSON depth, int
返回值:
以字典的形式返回构建信息。
get_build_env_vars(name, number, depth=0) # 获取构建环境变量
参数
name – 工程名称, str
number – 构建号, int
depth – JSON depth, int
返回值:
以字典的形式返回构建环境变量。
get_build_test_report(name, number, depth=0) # 获取测试报告
参数:
name – 工程名称, str
number – 构建号, int
返回值:
如果存在报告结果就返回报告结果如果没有返回None.
#获取job名为job_name的job的最后次构建号
server.get_job_info(job_name)[‘lastBuild’][‘number’]
#获取job名为job_name的job的某次构建的执行结果状态
server.get_build_info(job_name,build_number)[‘result’]
#判断job名为job_name的job的某次构建是否还在构建中
server.get_build_info(job_name,build_number)[‘building’]
注:这里我只罗列了一些我有用到的方法接口,Python-JenkinsAPI中还有大量的方法接口涵盖了工程的创建、构建执行、获取工程配置信息、获取构建执行信息等等,具体可参考以下链接(官方文档)。
参考: Python Jenkins