Open4
@octokit/restを使ってOrganizationのリポジトリの一覧を取れるようにする
このエンドポイント叩いたら取れそう
GitHub APIの操作かと思ってたけど、GitHub公式のAPIクライアントが出てた
GraphQL使う場合のSchemaもあったので、GraphQL使う場合はこっち
今回はRESTで十分
@octokit/restでのリポジトリ一覧取得部分
(一部抜粋)
import { Octokit } from "@octokit/rest";
const octokit = new Octokit({
timeZone: 'Asia/Tokyo', // 念の為指定しておく
});
const response = await octokit.repos.listForOrg({
org,
type: "public",
page: 1,
});
console.log(response.data)
こんな感じで取れた
await octokit.repos.listForOrg()
で公開リポジトリの指定をしているんだけど、公開リポジトリなら指定無くても取れる。
Privateリポジトリを含めるには、Octokit のインスタンス作成時にauthプロパティでPAT(Personal Access Token)の指定が必要。
他にもいくつか指定できるけど、今回は必要無さそう
TypeScriptで書くための型の対応
最初型情報を読んでくれなくてoctokit/rest のリポジトリが殆どJavaScriptだからそのせいかと思ってoctkit/types を見ていた
実際は合わせて試していたYarn v3の設定不備で、その辺解決したら不自由ないくらいしっかり補完がきいてくれた
型情報も結構見えていて今のところ問題ない