GeekFactory

int128.hatenablog.com

Pull Request Review 情報を API で取得する

Pull Request のレビューで Code Owner が設定されているかどうかを取得する方法を調べたのでメモ。

GraphQL APIReviewRequest オブジェクトで Code Owner かどうか取得できます。クエリの例を書いておきます。

query { 
  repository(owner: "OWNER", name: "REPO") {
    pullRequest(number: 1918) {
      reviewRequests(first: 10) {
        nodes {
          asCodeOwner
          requestedReviewer {
            ... on Team {
              team: name
            }
            ... on User {
              user: login
            }
          }
        }
      }
    }
  }
}
{
  "data": {
    "repository": {
      "pullRequest": {
        "reviewRequests": {
          "nodes": [
            {
              "asCodeOwner": true,
              "requestedReviewer": {
                "team": "sre"
              }
            },
            {
              "asCodeOwner": false,
              "requestedReviewer": {
                "user": "int128"
              }
            }
          ]
        }
      }
    }
  }
}