我使用Jenkins + BitBucket来运行项目的单元测试。为了触发运行我的作业“run-unit-tests”,我使用了BitBucket Pull Requests Builder。
作业“run-unit-tests”有工作流程:
如果我制作一个PR,那就完美了。需要更多PR来重建“待合并”PR。如“Bitbucket Pull请求构建器”中所述,此过程通过单击选项“如果目标分支更改重建?”选项在插件内部实现。 但在我的情况下,这个选项不起作用,如果我合并一些PR到掌握,它不会调用重建“待合并”PR。也许我做错了什么或需要仔细设置Bitbucket。无论如何有人做了类似的管道,可能存在不同的方式称为“待合并”PR,即通过Bitbucket webhook?
UPD :
我找到了基本的解决方案,但我认为它会尽快被弃用(因为它使用了API 1.0)。我使用Bitbucket API 1.0和2.0。它基于插件“Bitbucket Pull request builder”。该插件有选项注释短语来触发构建,它需要分配任何字符串,所以在我的情况下默认“请测试这个”。这是一个简单的shell脚本:
#!/bin/bash
#Send message to all PR's:
for PR in `curl -s -u "$USERNAME:$PASSWORD" \
https://api.bitbucket.org/2.0/repositories/{username}/{repo_slug}/pullrequests/?state=OPEN | jq -r '.values[].id'`;
do
curl -s -u "$USERNAME:$PASSWORD" -H "Content-Type: application/json" -d '{ "content" : "test this please" }' \
https://api.bitbucket.org/1.0/repositories/{username}/{repo_slug}/pullrequests/$PR/comments | jq ".";
done