如何通过 REST 从 Bamboo Atlassian 构建计划中检索我的自定义变量 API

How do I retrieve my custom variables from a Bamboo Atlassian Build Plan via REST API

我有一个 bamboo 计划,它在每次提交 github 拉取请求时运行。在那个 bamboo 计划中有一些自定义变量,例如 Git Sha、Github Pull Request Number 等。

我想编写一个脚本来停止具有相同拉取请求编号的所有先前构建(多个并发构建)——相同的自定义变量值。

这样做的原因是,如果有人快速更改他们的拉取请求(对审查的评论等),我们没有多个构建 运行,而只有最后一个是必需的。

我知道可以通过 rest 请求停止构建,但我需要一种方法来获取所有 运行 自定义变量值 = 27(拉取请求编号)的构建。一旦我知道了这一点,我就可以继续了。

在撰写本文时,REST API documentation 未列出任何针对特定构建变量查询 运行 构建的方法。

一个解决方案是为 Bamboo 创建您自己的插件,它公开一个 REST 服务,为您执行此查询,但我不知道您需要按顺序使用哪些 Java API执行该查询。

这是我解决这个问题的方法...

您可以调用 /rest/api/latest/result/<plankey>-latest?includeAllStates=true&expand=variables,其中 plankey 是特定 Bamboo 构建计划的关键。

然后循环遍历返回的结果,查找不是 FinishedlifeCycleState 值,以及具有所需名称的自定义变量,以查看它是否与您的 PR 编号匹配有。