Bump release actions to v2 (develop-stable(master) branches system)
Related to https://github.com/misskey-dev/misskey/issues/12807 Rewrite of #13075
What
自動リリース支援アクション( https://github.com/misskey-dev/release-manager-actions )(Misskeyの従前の)develop-stable(master)ブランチシステムに基づいたv2に変更します。
Why
v1システムが自動リリース編集以外悉く機能しなかったため
Additional info (optional)
@syuilo 導入にあたって以下の作業をお願いします。
GitHubの設定変更について、以下の手順で進めてください。
1. STABLE_BRANCH変数の作成
STABLE_BRANCHという名前のvariableを作成し、その値をmasterに設定します。
2. GitHub AppにRepository - Pull request - Read and Write権限を付与
a. GitHub Appの権限付与
GitHub AppにRepository - Pull request - Read and Writeの権限を与える必要があります。
b. Appのインストール
Install Appタブに移動し、misskey-dev(おそらく?)の右側の⚙️をクリック。- インストール管理画面で、
(app) is requesting an update to its permissions. [Review Request]というメッセージを確認。 Review Requestを選択し、次の画面でAccept new permissionsを選択。
3. masterブランチの保護ルールの変更
a. GitHub Appをバイパスリストに追加
- リポジトリのページに移動し、右上の
Settingsをクリック。 - 左側のメニューから
Branchesを選択。 Branch protection rulesセクションで、masterブランチの保護ルールを編集。Branch protection rulesの設定内で、Bypass branch protectionsセクションを探し、GitHub Appをバイパスリストに追加。- 変更を保存。
Checklist
- [ ] Read the contribution guide
- [ ] Test working in a local environment
- [ ] (If needed) Add story of storybook
- [ ] (If needed) Update CHANGELOG.md
- [ ] (If possible) Add tests
導入にあたって以下の作業をお願いします
これはマージ前にやる作業?直後にやる作業?
@tamaina
どちらでもok
Bypass branch protectionsセクション がなかった
Bypass branch protectionsセクション がなかった
masterブランチの保護ルールがそもそも設定されてないとか? @tamaina
RulesをいじるべきなのになぜBranchesをいじってるんだろう
(ChatGPTに書き直させた時に間違えられた?
書き直した
というかここのmasterブランチの保護ってrulesetなのかどうか知らない
というかここのmasterブランチの保護ってrulesetなのかどうか知らない
たぶんBranch protection rulesのほうだと (以前このワークフローを作るときもBranch Rulesがうまく動いてなかったので)
branch ruleset を新しく作ればよい?
いろいろオプションがある
protectionsは全部チェックしていい説(雑
masterはrequire linearはoffが正しい
ほかも考えてみました。
restrict creationsとrestrict deletionsはオンが良いと思う。updateは下で触れてる。
require linearは先述の通り。 require signedもオフだと思う。actionsの作ったものはsignedにならないので
merge queueもdevelopからのマージのみを行うはずなのでないほうが多分良い。
マージコミット以外を生やさない予定ならrequire pull requestガオンでもいいかもだけど、actions以外にpushを禁じるのであればそもそもrequire pull requestではなくrestrict updatesをオンにして、bypassにgihtub app以外を指定しないほうがいいかも。
status checkはどうだろう...たまにmaster 側のCIが更新されてないことに起因して落ちることがあるのでここでcheckいれるかは諸説かも
block forceはオンであるべき
これでいいのかしら
マージコミット以外を生やさない予定ならrequire pull requestガオンでもいいかもだけど、actions以外にpushを禁じるのであればそもそもrequire pull requestではなくrestrict updatesをオンにして、bypassにgihtub app以外を指定しないほうがいいかも。
↑ならRestrict updatesかRequire pull requestのどちらかをオンにする必要がありそう それ以外は大丈夫か
dopne
ならマージして(必要なメジャー機能があればそれ追加後に)リリースdispatchして確認かしら
見た感じprotectionはよさそうかな。
とりあえずdispatchしてbeta試したいかな
🙏🏻
@syuilo レビュワーが1人以上必要というのは設定しておいた方がいいかも