GoReleaserで作成したGitHubのRelease
GitHub Actionsでgoreleaser-action を使うとGoReleaserでGitHubのRelease作成できる。
jobs:
goreleaser:
runs-on: ubuntu-latest
steps:
(略)
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v6
with:
version: latest
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
上記ワークフローで作成されるDescriptionに記載されるのはコミットの一覧になる。
この一覧をPull Requestごとの説明文に変更したい。
gh release createコマンドで先にReleaseを作成する
goreleaser-actionは既存のReleaseがある場合、Releaseを作成しない。
そのため、別の方法で先にReleaseを作成すればよい。
gh release createコマンドでPull Requestごとの説明文を自動生成できる。
goreleaser-actionをする前にgh release createコマンドを実行してReleaseを作成してしまうとよい。
jobs:
goreleaser:
runs-on: ubuntu-latest
steps:
(略)
# 追加
- name: Create release
run: gh release create ${{ github.ref_name }} --generate-notes
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v6
with:
version: latest
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
gh release createコマンドの--generate-notesオプションでPull Requestごとの説明文が自動生成される。
gh release createコマンドの設定のために.github/release.ymlファイルを作成する。
changelog:
categories:
- title: What's Changed
labels:
- '*'
exclude:
labels:
- dependencies
- title: Dependencies
labels:
- dependencies
上記設定でdependenciesラベルの付加されたPull RequestはDependenciesセクションにまとめられる。
それ以外はWhat's Changedセクションにまとめられる。
\第一線のプログラマーの行動原理を学べる!/
