2024-06-06 GitHubでオーナーシップを持つ人を記録する手段を探す
背景
複数人でGitHub Organizationを使っていると誰がオーナーシップを持ってる人なのかわからない現象が起きる
オーナーシップがある人がわかる手段にはどんなものがあるか探したい
案
CODEOWNERSを使う
コードに対するオーナーを設定できる
PRしたときに自動的にレビュー依頼できる便利機能がついてくる
GraphQL APIでとることは一応できそう
repository topicを使う
リポジトリにタグ方式で属性を付与できる
このリポジトリがどういうものが表現するのに使える
Custom Property
組織設定で作ることができる
リポジトリごとに独自の属性を設定できる
GraphQLではとれない。REST APIではとれる
Repositoryの設定の collaborators and teams を使う
リポジトリに対して操作権限をもったロールを人やチームにわりあてられる
組織の管理者とかも自動で管理者になってしまったり、ロールを複数もてない
GraphQL APIからとれる。しかし強い権限が必要 スコープ admin:org
用途からすると CODEOWNERSかCustom Propertyが妥当そう
CODEOWNERSはテキストフォーマットであるため自動化がしにくい
書式ルールを決めればつかえそう
コードの所有者であって、リポジトリの所有者ではない
違う意味で使うと勘違いおきる懸念がある
Custom Propertyは設定値の妥当性との関連が弱い
好きな値がいれられてしまう
リポジトリ横断する情報としては使いやすいかもしれない