Skip to content

Commit 44a0b45

Browse files
committed
wip
1 parent 7973576 commit 44a0b45

File tree

1 file changed

+21
-4
lines changed

1 file changed

+21
-4
lines changed

docs/doc/release-bot.md

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -179,13 +179,16 @@ The bot automatically publishes releases based on two triggers:
179179
180180
#### PR Merge Auto-Publishing
181181
182-
When a PR with branch pattern `release/**` is merged:
182+
When a PR from a release branch is merged:
183183
184-
**Example**: PR from branch `release/v1.2.3` → merges to `main`
184+
**Example**: PR from branch `release/1.2` → merges to `main`
185185
186186
**Bot Actions**:
187-
1. Extract version from branch name: `1.2.3`
188-
- Fallback: Parse PR title if branch doesn't contain version
187+
1. Extract version from branch name using config pattern
188+
- Pattern is read from `branch_policy.release_branch_template` in `.release_tool.toml`
189+
- Default pattern: `release/{major}.{minor}` matches branches like `release/1.2`, `release/2.0`
190+
- Custom patterns supported: `release/v{major}.{minor}.{patch}` matches `release/v1.2.3`
191+
- Fallback: Parse PR title if branch doesn't match pattern
189192
2. Search PR body for ticket references:
190193
- Pattern 1 (closing): `closes #123`, `fixes #456`, `resolves #789`
191194
- Pattern 2 (related): `related to #123`, `see #456`, `issue #789`
@@ -415,8 +418,22 @@ Control default behavior in `.release_tool.toml`:
415418
create_github_release = true
416419
release_mode = "draft" # or "published"
417420
prerelease = "auto"
421+
422+
[branch_policy]
423+
# Branch pattern for release branches (used by bot to detect PR merges)
424+
release_branch_template = "release/{major}.{minor}" # Default
425+
# Other examples:
426+
# release_branch_template = "release/v{major}.{minor}.{patch}"
427+
# release_branch_template = "releases/{major}.{minor}"
418428
```
419429

430+
**Branch Pattern Detection**: The bot uses `release_branch_template` to detect which PR merges should trigger auto-publishing. The template supports Jinja2-style placeholders:
431+
- `{major}` - Major version number
432+
- `{minor}` - Minor version number
433+
- `{patch}` - Patch version number
434+
435+
The bot converts this template to a regex pattern to match incoming PR branches.
436+
420437
## Troubleshooting
421438

422439
### PR Merge Doesn't Auto-Publish

0 commit comments

Comments
 (0)