自动获取拉取请求主题/主题

Dmi*_*sev 12 git bitbucket bitbucket-api pull-request bitbucket-server

我想基于Pull Request描述创建自动发布说明,如下面的屏幕上的"添加法律解决索赔报告功能".

我对Pull Requests不太满意,甚至不确定"描述"是Bitbucket唯一的功能.但问题是如何从Pull Request中自动获取此描述?我在提交消息中找不到任何地方.

在此输入图像描述

Dan*_*ães 3

如今,Bitbucket 有两个主要服务:Bitbucket ServerBitbucket Cloud。如果您尚未下载 bitbucket 服务器,则您很可能正在使用 bitbucket 云。要连接到 Bitbucket Cloud API,您可以使用Atlassian Connect构建应用程序来连接到 bitbucket,也可以使用其余 api(参考其所有端点: https: //developer.atlassian.com/bitbucket/ api/2/参考/)。

<repository name>这是您要调用的 api,用于从给定的 a获取所有拉取请求的所有信息<username>

curl -u <username>:<password> https://api.bitbucket.org/2.0/repositories/<username>/<repository name>/pullrequests
Run Code Online (Sandbox Code Playgroud)

如果您安装了 jq,您可以将上述 api 的输出通过管道传输给它,以仅检索描述,正如您在问题中所请求的那样。以下命令将列出来自<repository name>of 的所有拉取请求的所有描述<username>

curl -u <username>:<password> https://api.bitbucket.org/2.0/repositories/<username>/<repository name>/pullrequests | jq ".values[] | .summary.raw"
Run Code Online (Sandbox Code Playgroud)

这是我在 bitbucket 存储库上运行请求上述 api 时得到的输出:

{
    "pagelen": 10,
    "values": [
        {
            "description": "this is just a description for testing the pull request api endpoint",
            "links": {
                "decline": {
                    "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/pullrequests/1/decline"
                },
                "commits": {
                    "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/pullrequests/1/commits"
                },
                "self": {
                    "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/pullrequests/1"
                },
                "comments": {
                    "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/pullrequests/1/comments"
                },
                "merge": {
                    "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/pullrequests/1/merge"
                },
                "html": {
                    "href": "https://bitbucket.org/dhulke/ojspkp/pull-requests/1"
                },
                "activity": {
                    "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/pullrequests/1/activity"
                },
                "diff": {
                    "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/pullrequests/1/diff"
                },
                "approve": {
                    "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/pullrequests/1/approve"
                },
                "statuses": {
                    "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/pullrequests/1/statuses"
                }
            },
            "title": "adding a to test a pull request",
            "close_source_branch": false,
            "type": "pullrequest",
            "id": 1,
            "destination": {
                "commit": {
                    "hash": "6188a5897db9",
                    "type": "commit",
                    "links": {
                        "self": {
                            "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/commit/6188a5897db9"
                        },
                        "html": {
                            "href": "https://bitbucket.org/dhulke/ojspkp/commits/6188a5897db9"
                        }
                    }
                },
                "repository": {
                    "links": {
                        "self": {
                            "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp"
                        },
                        "html": {
                            "href": "https://bitbucket.org/dhulke/ojspkp"
                        },
                        "avatar": {
                            "href": "https://bytebucket.org/ravatar/%7B605ba8e3-7b25-4093-9c72-f847da4b2464%7D?ts=default"
                        }
                    },
                    "type": "repository",
                    "name": "OJSPKP",
                    "full_name": "dhulke/ojspkp",
                    "uuid": "{605ba8e3-7b25-4093-9c72-f847da4b2464}"
                },
                "branch": {
                    "name": "master"
                }
            },
            "created_on": "2018-09-15T23:17:25.931924+00:00",
            "summary": {
                "raw": "this is just a description for testing the pull request api endpoint",
                "markup": "markdown",
                "html": "<p>this is just a description for testing the pull request api endpoint</p>",
                "type": "rendered"
            },
            "source": {
                "commit": {
                    "hash": "b02656e67546",
                    "type": "commit",
                    "links": {
                        "self": {
                            "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp/commit/b02656e67546"
                        },
                        "html": {
                            "href": "https://bitbucket.org/dhulke/ojspkp/commits/b02656e67546"
                        }
                    }
                },
                "repository": {
                    "links": {
                        "self": {
                            "href": "https://api.bitbucket.org/2.0/repositories/dhulke/ojspkp"
                        },
                        "html": {
                            "href": "https://bitbucket.org/dhulke/ojspkp"
                        },
                        "avatar": {
                            "href": "https://bytebucket.org/ravatar/%7B605ba8e3-7b25-4093-9c72-f847da4b2464%7D?ts=default"
                        }
                    },
                    "type": "repository",
                    "name": "OJSPKP",
                    "full_name": "dhulke/ojspkp",
                    "uuid": "{605ba8e3-7b25-4093-9c72-f847da4b2464}"
                },
                "branch": {
                    "name": "teste"
                }
            },
            "comment_count": 0,
            "state": "OPEN",
            "task_count": 0,
            "reason": "",
            "updated_on": "2018-09-15T23:17:25.963178+00:00",
            "author": {
                "username": "dhulke",
                "display_name": "Danilo Moraes",
                "account_id": "557058:ab26766f-757e-4687-88ff-099bd94b0895",
                "links": {
                    "self": {
                        "href": "https://api.bitbucket.org/2.0/users/dhulke"
                    },
                    "html": {
                        "href": "https://bitbucket.org/dhulke/"
                    },
                    "avatar": {
                        "href": "https://bitbucket.org/account/dhulke/avatar/"
                    }
                },
                "type": "user",
                "uuid": "{1b22ad2c-9f1c-48f4-b9dc-958e8eddd3e8}"
            },
            "merge_commit": null,
            "closed_by": null
        }
    ],
    "page": 1,
    "size": 1
}
Run Code Online (Sandbox Code Playgroud)