Skip to content

Commit a8ad796

Browse files
docs(release): first release must cut a new tag; bloom does not create the release repo
- "First release" ran bloom-release straight away. With Version :{auto} that resolves to package.xml's 0.5.0, i.e. the existing v0.5.0 tag - which predates CHANGELOG.rst and the <url> tags this PR adds. Tag first. - bloom's "Release repository url" prompt wants the URL of an existing repository; it cannot create one. Rolling-derived distros additionally require it to live in the ros2-gbp organisation. - The token needs the workflow scope as well as public_repo. - catkin_prepare_release bumps the patch version by default; the 0.6.0 in the examples needs --bump minor. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NUNQNo26cKRPrVXcaHZnje
1 parent 8354ddc commit a8ad796

1 file changed

Lines changed: 15 additions & 3 deletions

File tree

‎RELEASING.md‎

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ touches source on `main`.
99
sudo apt install python3-bloom python3-catkin-pkg
1010
```
1111

12-
`bloom` also needs a GitHub token with `public_repo` scope.
12+
`bloom` also needs a GitHub token with `public_repo` and `workflow` scopes.
1313

1414
## Supported distros
1515

@@ -24,18 +24,30 @@ Fast CDR 1.0.x, where that enum does not exist.
2424

2525
| Prompt | Answer |
2626
| --- | --- |
27-
| Release repository url | yes — let bloom create `…/rmw_unix_socket_cpp-release` |
27+
| Release repository url | `https://github.com/benaliabderrahmane/rmw_unix_socket_cpp-release.git` |
2828
| Upstream repository uri | `https://github.com/benaliabderrahmane/rmw_unix_socket_cpp.git` |
2929
| Upstream devel branch | the branch for that distro (`main` until per-distro branches exist) |
3030
| Version | `:{auto}` |
3131
| Release tag | `v:{version}` |
3232

33+
bloom does not create the release repository: the URL must point at one that
34+
already exists, empty is fine. Rolling (and every distro branched from it after
35+
that policy, so Lyrical too) only accepts a release repository hosted in the
36+
`ros2-gbp` organisation - request one through
37+
`ros2-gbp/ros2-gbp-github-org` and use its URL for those tracks instead.
38+
3339
The release tag matters: our tags are `v0.5.0` but `catkin_prepare_release`
3440
writes `0.5.0`, so a bare `:{version}` makes bloom look for a tag that isn't
3541
there.
3642

3743
## First release
3844

45+
Cut a new tag first. `:{auto}` reads the version from `package.xml`, and the
46+
`v0.5.0` tag that already exists predates `CHANGELOG.rst` and the `<url>` tags -
47+
releasing it would ship exactly the empty changelog this setup exists to avoid.
48+
Run the tagging half of the loop below (`catkin_generate_changelog` …
49+
`catkin_prepare_release --tag-prefix v`), then:
50+
3951
```bash
4052
bloom-release --new-track --rosdistro jazzy --track jazzy rmw_unix_socket_cpp
4153
```
@@ -48,7 +60,7 @@ Only this first rosdistro PR gets real scrutiny.
4860
catkin_generate_changelog # appends unreleased commits to rmw_unix_socket_cpp/CHANGELOG.rst
4961
$EDITOR rmw_unix_socket_cpp/CHANGELOG.rst
5062
git commit -am "Update changelog"
51-
catkin_prepare_release --tag-prefix v # bumps package.xml, commits, tags, pushes
63+
catkin_prepare_release --tag-prefix v # bumps the patch version (--bump minor|major for more), commits, tags, pushes
5264
bloom-release --rosdistro jazzy --track jazzy rmw_unix_socket_cpp
5365
```
5466

0 commit comments

Comments
 (0)