有没有办法从执行shell步骤运行脚本访问构建状态以及有关构建的其他信息? (例如,内部版本号,开始/结束时间等)
我需要使用包含构建信息的脚本更新Wiki页面。
提前致谢!
答案 0 :(得分:3)
构建状态信息将保存到简单的XML文件中。看一眼
{jenkins-directory}/jobs/{job-name}/builds/{build-number}/build.xml
。您可以使用像lastSuccessfulBuild这样的符号链接,而不是根据需要指定内部版本号。
您可以在那里找到有关构建的所有信息:构建状态,开始时间,持续时间等。解析XML文件或只在bash脚本中使用grep。
如果您不想使用文件系统,可以使用Jenkins API。
但无论如何,一旦你得到一个可以确定构建参数并更新你的wiki页面的脚本,你就可以将它放到另一个Jenkins作业中并自动触发它(例如,使用BuildResultTrigger Plugin)。 / p>
答案 1 :(得分:1)
我使用jenkins自己的API来获取作业运行时的构建状态,这就像魅力一样。请注意,我正在使用JQ来解析json响应。
要使其工作,只需添加一个shell脚本并执行以下命令:BUILD_STATUS=$(curl --silent ${BUILD_URL}api/json | jq -r '.result')
结果如下:
答案 2 :(得分:-3)
执行构建时,您可以在脚本中使用Jenkins set environment variables。
还可以参考有关如何使用它的详细信息 -
批处理文件中的 %VAR%
和Jenkins作业配置页面内的$VAR