ci: auto-tag releases on merge to main #3

Merged
timstoop merged 1 commit from develop into main 2026-07-22 08:35:38 +00:00
timstoop commented 2026-07-22 08:18:57 +00:00 (Migrated from codeberg.org)

Summary

Adds .forgejo/workflows/auto-tag.yml: on push to main, reads the version from pyproject.toml, and if a vX.Y.Z tag for it doesn't already exist and CHANGELOG.md has a matching ## [X.Y.Z] entry, creates and pushes that tag itself. This removes the last manual step from the release workflow (documented in CLAUDE.md, updated here) — merging an MR to main is now enough, no more git tag by hand.

Also updates CLAUDE.md's documented release workflow and adds a CHANGELOG note.

Note

Since PR #2 (0.4.0) already merged, main currently has pyproject.toml at 0.4.0 and a matching ## [0.4.0] CHANGELOG entry, but no v0.4.0 tag exists yet. Merging this PR will make the new auto-tag job run immediately on the resulting push to main, which should create and push v0.4.0 right away — completing the pending 0.4.0 release as a live test of this workflow.

Test plan

  • YAML validated locally (pre-commit run check-yaml)
  • After merge: confirm auto-tag job runs on the main push, creates tag v0.4.0
  • Confirm the resulting tag push triggers docker.yml (tests + docker build + release)
## Summary Adds `.forgejo/workflows/auto-tag.yml`: on push to `main`, reads the version from `pyproject.toml`, and if a `vX.Y.Z` tag for it doesn't already exist and `CHANGELOG.md` has a matching `## [X.Y.Z]` entry, creates and pushes that tag itself. This removes the last manual step from the release workflow (documented in CLAUDE.md, updated here) — merging an MR to `main` is now enough, no more `git tag` by hand. Also updates `CLAUDE.md`'s documented release workflow and adds a CHANGELOG note. ## Note Since PR #2 (0.4.0) already merged, `main` currently has `pyproject.toml` at `0.4.0` and a matching `## [0.4.0]` CHANGELOG entry, but **no `v0.4.0` tag exists yet**. Merging this PR will make the new auto-tag job run immediately on the resulting push to `main`, which should create and push `v0.4.0` right away — completing the pending 0.4.0 release as a live test of this workflow. ## Test plan - [x] YAML validated locally (`pre-commit run check-yaml`) - [ ] After merge: confirm `auto-tag` job runs on the `main` push, creates tag `v0.4.0` - [ ] Confirm the resulting tag push triggers `docker.yml` (tests + docker build + release)
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
tim/hass-mcp!3
No description provided.