Open Hiroshiba opened 4 months ago
もし挑戦してみたい方がいらっしゃったらコメントください 🙇 条件等も細かいところが分かりづらいと思うので何でもお聞きください!
@VOICEVOX/maintainer すみません、ちょっと勝手にプロジェクト作ってしまいました 🙇
オートマージしたく色々試してみたのですが、github の仕様とVOICEVOXの要件が合いませんでした・・・。 このプロジェクトリポジトリに作るissueとしてはちょっと規模感が小さいかもなので、移動した方が良さそうだったら移動します 🙇
内容
テストが通ったら自動的にマージできるようにしたいです。
merge queue
を使えば可能なはずなのですが、VOICEVOXのレビュー&approve事情に合ってないためそのままでは適用できなさそうでした。VOICEVOXのプルリクエストマージは、以下の2つの条件のうちどちらかを満たすと可能としています。
@maintainer
チームの1人のapprove@reviewer
チームの2人のapprovebranch protectionを使えば「何人以上のapproveが必要か」と「誰ならforce mergeが可能か」を設定できます。 なので、2人以上のapproveがあるか、
@maintainer
チームのforce mergeを有効にすることで、↑のどちらの条件でもマージできるようにしています。問題はこれが
merge queue
で使えないっぽいことです。 というのも、「N人以上のapprove」ではmerge queue
を使えますが、force mergeの場合はmerge queue
を無視して対象のブランチにマージするという挙動をするっぽいです。さてどうしようかなという感じです・・・ 😇
実現方法
いくつか解決策はあると思います。とりあえず列挙してみます。
@maintainer
のapproveがあれば自動でapproveしてくれるbotを追加するBranch protection rule
による判定ではなく、専用のマージ可否判定Github Actionsを作るmerge queue
に登録するAPIが無さそう・・・?だから不可能かも・・・?merge queue
可能になるBranch protection rule
なら可能かもその他
メモです。
merge-queue
はorganizationを作ってその下じゃないとテストできないBranch protection rule
だけじゃなくRulesets
でもmerge queue
を作れるruleset
はexportもできるのでこっちの方が便利そう