bitbucket - 用于更新拉取请求的构建状态的 Bitbucket API
问题描述
我看到了用于更新提交的构建状态的文档: https ://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Busername%7D/%7Brepo_slug%7D/commit/%7Bnode% 7D/状态/构建
对于拉取请求,是否没有与之关联的唯一提交?是否没有用于更新 PR 构建状态的 API?还是我们只需要发现哪个提交与 PR 相关联,然后只需更新该提交的构建状态?
例如这个视图:
您可以在右侧看到对 temp 分支的提交具有通过的构建状态 - 但它的工作方式是它应该将temp 合并到 master到一些新的提交/分支中,我需要能够对其进行测试。
我要更新的视图位于 url:
https://bitbucket.org/<user>/<repo>/pull-requests/1/<commit-message>/diff
解决方案
Bitbucket 没有在 PR 上构建(在此处查看),您需要的是在LAST Commit 上成功构建:
然后,在完成所需的测试后,您可以使用 API 将构建推送到该版本。
本指南使用起来非常简单: https ://developer.atlassian.com/server/bitbucket/how-tos/updating-build-status-for-commits/
我在指南上的唯一建议是它不适用于 curl,然后,我所做的就是使用 Postman 执行此操作,然后将命令导出到 curl,仅此而已......
curl --location --request POST 'https://bitbucket.org/api/2.0/repositories/{your space}/{Your Repo}/commit/{The long hash of your commit}/statuses/build?Content-Type=application/json' \
--header 'Authorization: Basic {your token}=' \
--header 'Content-Type: application/json' \
--data-raw '{
"state": "SUCCESSFUL",
"key": "MANUAL-BUILD",
"name": "Manual Build",
"url": "http://this.really.doesnt.matter/",
"description": "Successful Build done manually"
}'
推荐阅读
- android - Ktlint 与 lint 的区别?
- python - model.fit() 在 Keras 中给了我 'KeyError: input_1'
- python - 使用 python 构建本地数据库并且由于“关键错误”而无法继续(下面的完整代码)
- git - git 确保提交被完全推送
- c++ - Leetcode 987:二叉树的垂直顺序遍历:为什么我得到 TLE?
- javascript - 函数返回对象而不是数组,无法 .Map
- keycloak - 如何在 keycloak 中为电子邮件添加新的“重置操作”?
- c# - 向 ASP.NET Core 3.1 标准 JSON BadRequest 响应添加详细消息
- html - 添加(单击)方法以链接 Angular 组件中的文本块
- c++ - 证明使用共享对象多次运行的可执行文件工作正常并且使用的内存少于静态链接版本