Repository navigation
ci: automate releases with release-please (GitHub App token) - #45
Merged
Merged
Conversation
Add release-please to derive the next version from Conventional Commits,
maintain CHANGELOG.md, and open a release PR. Merging that PR tags
v{version} and creates a GitHub Release, which triggers the existing
PyPI / GHCR publish workflows.
- release-please-config.json: python release-type, tags as v{version}
- .release-please-manifest.json: seeds current version 0.0.28
- release-please.yml: runs on push to main; uses RELEASE_PLEASE_TOKEN
(PAT/App) so the created tag can trigger downstream publish workflows
- CLAUDE.md: document the new flow and fix/feat/breaking bump rules;
keep bump-my-version as a manual fallback
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Issue an App token at runtime via actions/create-github-app-token so the tag release-please creates can trigger the PyPI/GHCR publish workflows (GITHUB_TOKEN-created tags cannot trigger other workflows). Requires the RELEASE_PLEASE_APP_ID and RELEASE_PLEASE_APP_PRIVATE_KEY secrets. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要
リリースを release-please で自動化します。main へのマージ内容(Conventional Commits)からバージョンを判定し、
pyproject.tomlの更新とCHANGELOG.mdをまとめたリリースPRを bot が自動作成します。そのリリースPRをマージするとv{version}タグ + GitHub Release が作られ、既存のpublish-to-pypi.yml/docker-publish.yml(タグ起動)が発火して PyPI / GHCR へ公開されます。バンプ判定(コミット種別で自動)
fix:→ patchfeat:→ minorfeat!:/ 本文BREAKING CHANGE:→ majorRelease-As: x.y.z変更内容
release-please-config.json— python release-type、タグはv{version}形式.release-please-manifest.json— 現行バージョン 0.0.28 をシード.github/workflows/release-please.yml— main への push で実行CLAUDE.md— 新フローとバンプ規則を記載(bump-my-versionは手動フォールバックとして存置)前提(設定済み)
GITHUB_TOKEN で作ったタグは他ワークフローを起動できないため、GitHub App トークンでタグを打ちます。
actions/create-github-app-tokenが実行時にトークンを発行します。必要な Secret はリポジトリに登録済み:RELEASE_PLEASE_APP_IDRELEASE_PLEASE_APP_PRIVATE_KEYApp 権限: Contents
read/write、Pull requestsread/write。🤖 Generated with Claude Code