シーケンス

  1. Release Drafter external_link により、ドラフトリリースが生成される
  2. git-pr-release-action external_link により、PR が生成される
    1. body は Release Drafter で生成したものがセットされる
  3. Merge
  4. changelog-updater Action external_link により、CHANGELOG.md が更新される

master ブランチ以外の development ブランチ運用

  1. dev/{major}.{minor}.x を push
  2. 同ブランチを Target に設定し、GitHub Release を作成 external_link
    • テンプレート
      • tag: v{major}.{minor}.x-base
      • Target: dev/{major}.{minor}.x
      • title: v{major}.{minor}.x Base Release
      • description:
        The base release for release-drafter to avoid `Error: GraphQL Rate Limit Exceeded` https://github.com/release-drafter/release-drafter/issues/1018
      • Set as * のチェックを全て外す
    • 後述の #github-cli-逆引き セクションにある gh release コマンドで v{major}.{minor}.x-base タグに対する targetCommitish が dev/{major}.{minor}.x になっていることを確認
  3. 同コミットに対して次のリリースバージョンナンバーを名前に入れた release/{major}.{minor}.x を push

Release Drafter によるコミットフィルタリングルールメモ

  • latest release の取得
    • 設定値 filter-by-commitish: true により、GitHub Release の targetCommitish 値が処理中のブランチ名と一致するもののみにフィルタされる
  • commits の取得
    • latest release の生成日時より後に作られたマージコミットのみが対象となる

GitHub CLI 逆引き

Install

https://github.com/cli/cli#installation external_link

targetCommitish を確認する

gh release view {tagName} --json targetCommitish

targetCommitish を書き換える

gh release edit vX.X.X --target {branchName}