2

有没有办法让从执行 shell 步骤运行的脚本访问构建状态以及有关构建的其他信息?(例如内部版本号、开始/结束时间等)

我需要使用包含构建信息的脚本来更新 wiki 页面。

提前致谢!

4

3 回答 3

3

构建状态信息被保存到简单的 XML 文件中。看看 {jenkins-directory}/jobs/{job-name}/builds/{build-number}/build.xml。如果需要,您可以使用 lastSuccessfulBuild 之类的符号链接,而不是指定内部版本号。

您将在那里找到有关构建的所有信息:构建状态、开始时间、持续时间等。解析 XML 文件或仅在 bash 脚本中使用 grep。

如果您不想使用文件系统,可以使用Jenkins API

但无论如何,一旦您获得了一个可以确定构建参数并更新您的 wiki 页面的脚本,您就可以将它放入另一个 Jenkins 作业并自动触发它(例如,使用BuildResultTrigger 插件)。

于 2015-04-14T08:52:35.470 回答
1

我正在使用 jenkins 自己的 API 在作业运行时获取构建状态,这就像一个魅力。请注意,我正在使用JQ来解析 json 响应。

要让它工作,只需添加一个 shell 脚本并执行以下命令:BUILD_STATUS=$(curl --silent ${BUILD_URL}api/json | jq -r '.result')

执行外壳步骤

结果如下:

作业控制台

于 2017-04-28T09:19:16.770 回答
-3

在执行构建时,Jenkins 会设置您可以在脚本中使用的环境变量。

另请参阅有关如何使用它的详细信息-

%VAR%在批处理文件中和$VAR从 Jenkins 作业配置页面内部

于 2015-04-13T20:49:57.047 回答