Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python jenkins获取工作信息-如何获取100多个构建的信息?_Python_Jenkins - Fatal编程技术网

python jenkins获取工作信息-如何获取100多个构建的信息?

python jenkins获取工作信息-如何获取100多个构建的信息?,python,jenkins,Python,Jenkins,我正在使用python jenkins api来管理一些jenkins构建服务器。服务器的负载相当大——数十个作业和一些作业已经保存了数百个构建 我的一个基本目标是使用API获取每个作业的生成计数,以及所有作业的总生成计数。代码如下: import jenkins jnk = jenkins.Jenkins(myUrl, myUsername, myPassword) info = jnk.get_info() jobs = info['jobs'] totalBuildCount = 0 f

我正在使用python jenkins api来管理一些jenkins构建服务器。服务器的负载相当大——数十个作业和一些作业已经保存了数百个构建

我的一个基本目标是使用API获取每个作业的生成计数,以及所有作业的总生成计数。代码如下:

import jenkins
jnk = jenkins.Jenkins(myUrl, myUsername, myPassword)
info = jnk.get_info()
jobs = info['jobs']
totalBuildCount = 0

for job in jobs:
    jobName = job['name']
    jobinfo = jnk.get_job_info(jobName)
    builds = jobinfo['builds'] # never contains more than 100 items
    print jobName + " build count: " + str(len(builds))
    totalBuildCount += len(builds)

print "Total build count: " + str(totalBuildCount)
不幸的是,我发现job info dictionary中的builds数组从未包含超过100个条目,即使job存储了比这更多的构建


其他人看到过这个限制吗?有没有办法绕过它,或者这个API对于具有大量存档构建计数的服务器来说毫无用处?

如果可以使用jenkinsapi:

from jenkinsapi.jenkins import Jenkins
jnk = Jenkins(myUrl, myUsername, myPassword)
totalBuildCount = 0

for job in jnk.keys():
    builds = jnk[job].get_build_dict()
    print job + " build count: " + str(len(builds))
    totalBuildCount += len(builds)

print "Total build count: " + str(totalBuildCount)

当使用python jenkins模块获取超过100个构建时,调用函数
fetch\u all\u builds=True