gpt4 book ai didi

python-2.7 - 等待 Jenkins 构建完成

转载 作者:行者123 更新时间:2023-12-02 22:29:08 25 4
gpt4 key购买 nike

我正在使用 Python 2.7 和 Jenkins。

我正在用 Python 编写一些代码,这些代码将执行 checkin 并等待/轮询 Jenkins 作业的完成。我想对如何实现它有一些想法。

  1. 在 Perforce 中创建 checkin 的 Python 函数 -> 这可以轻松完成,因为 P4 具有 CLI
  2. 用于检测何时触发构建的 Python 代码 -> 我有变更列表和作业编号。如何轮询 Jenkins API 的构建日志以检查它是否具有适当的更改列表?此步骤的输出是正在执行作业的构建 URL
  3. 如何等待 Jenkins 作业完成?

我可以使用 Jenkins Rest API 或 Python Jenkins 模块中的片段吗?

最佳答案

如果您需要知道作业是否完成,则 buildNumber 和 buildTimestamp 是不够的。

这是我如何确定作业是否完成的要点,我在 ruby​​ 中拥有它,但在 python 中没有,所以也许有人可以将其更新为真正的代码。

lastBuild = get jenkins/job/myJob/lastBuild/buildNumber
get jenkins/job/myJob/lastBuild/build?token=gogogo

currentBuild = get jenkins/job/myJob/lastBuild/buildNumber
while currentBuild == lastBuild
sleep 1

thisBuild = get jenkins/job/myJob/lastBuild/buildNumber
buildInfo = get jenkins/job/myJob/[thisBuild]/api/xml?depth=0

while buildInfo["freeStyleBuild/building"] == true
buildInfo = get jenkins/job/myJob/[thisBuild]/api/xml?depth=0
sleep 1

即。我发现我需要 A) 等待构建开始(新构建编号),B) 等待构建完成(构建为 false)。

关于python-2.7 - 等待 Jenkins 构建完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15297322/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com