我使用Jenkins从shell脚本与Jenkins连接。我需要获取给定作业中前20个构建的控制台输出,并进行一些计算。
我想知道如何使用jenkins-cli或任何其他容易获得的方式获得jenkins作业中可用的构建列表,这样我就可以使用jenkins使用作业的生成号来获取作业的控制台输出。
提前谢谢
发布于 2015-07-23 11:18:42
我使用REST而不是它们提供的cli。我发现它更快更灵活。
对于您的情况,我将从作业名生成一个URL,该作业名返回所有成功构建的XML数据,然后遍历每个构建并从另一个生成的URL中获取控制台输出。
URL,它将返回包含所有成功生成的生成号的XML数据。
jenkins:8080/job/example_job/api/xml?tree=allBuilds[result,number]&xpath=//allBuild[result='SUCCESS']/number&wrapper=nums在作业上打开XML的jenkins:8080/job/example_job/api/xml? - Jenkins服务器。
tree=allBuilds[result,number]& -只要求所有属于作业的构建的number和result。
xpath=//allBuild[result='SUCCESS']/number& --让Jenkins对该数据进行处理,将其转化为一个number标记列表,该列表属于具有值SUCCESS的result标记的allBuild标记。
wrapper=nums -由于xpath已经将所有数字拆分,因此它们没有父级,所以我们需要将它们封装在另一个标记nums下面。
有了这些num标记,您就可以创建一个URL来获得控制台输出。
jenkins:8080/job/example_job/132/consoleText我看到您有一个Python标记,所以我在Python中假设您的脚本。这意味着您可以使用迷你型和urllib2来解析XML数据并检索网页。
https://stackoverflow.com/questions/31584635
复制相似问题