是否可以在 execute shell 中访问 Jenkins 构建状态?
Is it possible to access Jenkins build status in execute shell?
有没有办法让执行 shell 步骤中的脚本 运行 访问生成状态以及有关生成的其他信息? (例如内部版本号、start/end 时间等)
我需要使用包含构建信息的脚本来更新 wiki 页面。
提前致谢!
执行构建时,Jenkins set environment variables您可以在脚本中使用。
另请参阅有关如何使用它的详细信息 -
%VAR%
在批处理文件中,$VAR
来自 Jenkins 作业配置页面
构建状态信息被保存到简单的 XML 文件中。看一眼
{jenkins-directory}/jobs/{job-name}/builds/{build-number}/build.xml
。如果需要,您可以使用 lastSuccessfulBuild 之类的符号链接,而不是指定内部版本号。
您将在此处找到有关构建的所有信息:构建状态、开始时间、持续时间等。解析 XML 文件或仅在 bash 脚本中使用 grep。
如果您不想使用文件系统,您可以使用 Jenkins API。
但无论如何,一旦你获得了一个可以确定构建参数并更新你的 wiki 页面的脚本,你就可以将它放入另一个 Jenkins 作业并自动触发它(例如,使用 BuildResultTrigger Plugin) .
我正在使用 jenkins 自己的 API 来获取构建状态,而作业是 运行,这非常有效。请注意,我正在使用 JQ 来解析 json 响应。
要让它工作,只需添加一个 shell 脚本并执行以下命令:BUILD_STATUS=$(curl --silent ${BUILD_URL}api/json | jq -r '.result')
结果如下:
有没有办法让执行 shell 步骤中的脚本 运行 访问生成状态以及有关生成的其他信息? (例如内部版本号、start/end 时间等)
我需要使用包含构建信息的脚本来更新 wiki 页面。
提前致谢!
执行构建时,Jenkins set environment variables您可以在脚本中使用。
另请参阅有关如何使用它的详细信息 -
%VAR%
在批处理文件中,$VAR
来自 Jenkins 作业配置页面
构建状态信息被保存到简单的 XML 文件中。看一眼
{jenkins-directory}/jobs/{job-name}/builds/{build-number}/build.xml
。如果需要,您可以使用 lastSuccessfulBuild 之类的符号链接,而不是指定内部版本号。
您将在此处找到有关构建的所有信息:构建状态、开始时间、持续时间等。解析 XML 文件或仅在 bash 脚本中使用 grep。
如果您不想使用文件系统,您可以使用 Jenkins API。
但无论如何,一旦你获得了一个可以确定构建参数并更新你的 wiki 页面的脚本,你就可以将它放入另一个 Jenkins 作业并自动触发它(例如,使用 BuildResultTrigger Plugin) .
我正在使用 jenkins 自己的 API 来获取构建状态,而作业是 运行,这非常有效。请注意,我正在使用 JQ 来解析 json 响应。
要让它工作,只需添加一个 shell 脚本并执行以下命令:BUILD_STATUS=$(curl --silent ${BUILD_URL}api/json | jq -r '.result')
结果如下: