如何使用 BitBucket API 获取 PR 的构建状态?
How to get build status of PR using BitBucket API?
使用 Bitbucket API 进行任何拉取请求时,未获得 PR 的构建作业 details/status
这是我的 API URL:
https://example.com/rest/api/1.0/projects/{projectkey}/repos/{reposlug}/pull-requests/{pullrequestID}
构建状态在 GUI 上的样子:
我也尝试了以下方法来获取构建状态,但没有成功
/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/settings/pull-requests
/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/settings/hooks
所以我想知道任何 PR 的构建状态是成功还是失败
提前感谢您的回答。
构建状态在提交上,而不是在 PR 上。首先,您应该通过调用 /rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/pull-requests/{pullRequestId}
找到源分支的最新提交。有关详细信息,请参阅 docs
获得提交 ID 后,您可以通过调用 /rest/build-status/1.0/commits/{commitId}
查询构建状态 api。有关详细信息,请参阅 docs
使用 API 2.0
- 获取状态:https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Busername%7D/%7Brepo_slug%7D/pullrequests/%7Bpull_request_id%7D/statuses
- 设置状态:https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Busername%7D/%7Brepo_slug%7D/commit/%7Bnode%7D/statuses/build
示例:
curl --request GET \
--url https://api.bitbucket.org/2.0/repositories/piavita/com.piavita-vet.ios/pullrequests/300/statuses \
--header 'Authorization: Basic SecretKey' \
--header 'Content-Type: application/json'
curl --request POST \
--url https://api.bitbucket.org/2.0/repositories/piavita/com.piavita-vet.ios/commit/8619291af393/statuses/build \
--header 'Authorization: Basic SecretKey' \
--header 'Connection: keep-alive' \
--data '{\n "url": "http://jenkins.ddns.net:8080/job/jobName/123/",\n "state": "SUCCESSFUL",\n "key": "JENKINS"\n}'
使用 Bitbucket API 进行任何拉取请求时,未获得 PR 的构建作业 details/status
这是我的 API URL:
https://example.com/rest/api/1.0/projects/{projectkey}/repos/{reposlug}/pull-requests/{pullrequestID}
构建状态在 GUI 上的样子:
我也尝试了以下方法来获取构建状态,但没有成功
/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/settings/pull-requests
/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/settings/hooks
所以我想知道任何 PR 的构建状态是成功还是失败
提前感谢您的回答。
构建状态在提交上,而不是在 PR 上。首先,您应该通过调用 /rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/pull-requests/{pullRequestId}
找到源分支的最新提交。有关详细信息,请参阅 docs
获得提交 ID 后,您可以通过调用 /rest/build-status/1.0/commits/{commitId}
查询构建状态 api。有关详细信息,请参阅 docs
使用 API 2.0
- 获取状态:https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Busername%7D/%7Brepo_slug%7D/pullrequests/%7Bpull_request_id%7D/statuses
- 设置状态:https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Busername%7D/%7Brepo_slug%7D/commit/%7Bnode%7D/statuses/build
示例:
curl --request GET \
--url https://api.bitbucket.org/2.0/repositories/piavita/com.piavita-vet.ios/pullrequests/300/statuses \
--header 'Authorization: Basic SecretKey' \
--header 'Content-Type: application/json'
curl --request POST \
--url https://api.bitbucket.org/2.0/repositories/piavita/com.piavita-vet.ios/commit/8619291af393/statuses/build \
--header 'Authorization: Basic SecretKey' \
--header 'Connection: keep-alive' \
--data '{\n "url": "http://jenkins.ddns.net:8080/job/jobName/123/",\n "state": "SUCCESSFUL",\n "key": "JENKINS"\n}'