|
16 | 16 | - [Create a new release](#create-a-new-release) |
17 | 17 | - [Updating a pending release version](#updating-a-pending-release-version) |
18 | 18 | - [Promoting to stable release](#promoting-to-stable-release) |
| 19 | + - [Monorepo Package Release](#monorepo-package-release) |
19 | 20 |
|
20 | 21 | **TLDR;** Use the [Create a new release Pull Request](#create-a-new-release-pull-request) for automated process. |
21 | 22 |
|
@@ -137,6 +138,7 @@ Always include a changeset to ensure each promotion reflects real, trackable cha |
137 | 138 |
|
138 | 139 | ## Use-Cases |
139 | 140 |
|
| 141 | + |
140 | 142 | ### Create a new release |
141 | 143 |
|
142 | 144 | Follow these steps to create a new release: |
@@ -251,3 +253,28 @@ git push origin chore/sync-v1.0.0-changes-back-to-main |
251 | 253 |
|
252 | 254 | > [!IMPORTANT] |
253 | 255 | > This step is critical. The `main` branch must reflect the stable release state to ensure future pre-releases start from the correct version baseline. |
| 256 | +
|
| 257 | +### Monorepo Package Release |
| 258 | + |
| 259 | +The [monorepo package publisher](https://github.com/ClickHouse/click-ui/actions/workflows/monorepo-package-publisher.yml) is a simplified workflow for releasing packages under `./packages/*` that support click-ui (e.g. `design-tokens`) and can be published independently. |
| 260 | + |
| 261 | +> [!IMPORTANT] |
| 262 | +> This workflow does **not** automate the changeset cycle. You are responsible for preparing the version and changelog before triggering a release. Specifically: |
| 263 | +> |
| 264 | +> 1. Enter/leave pre-release mode as needed (`yarn workspace @clickhouse/design-tokens changeset pre enter <tag>` / `changeset pre exit`) |
| 265 | +> 2. Run `yarn workspace @clickhouse/design-tokens changeset version` to bump the version and generate the changelog |
| 266 | +> 3. Ensure the version bump and changelog are committed in the branch/commit you intend to release |
| 267 | +> |
| 268 | +> The automated [create release](#create-a-new-release-pull-request) workflow handles all of this for `@clickhouse/click-ui`. For other monorepo packages, use this manual workflow instead. |
| 269 | +
|
| 270 | +To release a monorepo package: |
| 271 | + |
| 272 | +1. Go to [Actions > Monorepo Package Publisher](https://github.com/ClickHouse/click-ui/actions/workflows/monorepo-package-publisher.yml) |
| 273 | +2. Click **Run workflow** |
| 274 | +3. Select the package to release |
| 275 | +4. Choose the release type (`test`, `rc`, `stable`, `latest`) |
| 276 | +5. Toggle **dry run** to `true` to validate without publishing (recommended first) |
| 277 | +6. Type the package name to confirm |
| 278 | +7. For `stable`, type the branch name to confirm |
| 279 | +8. Click **Run workflow** |
| 280 | +9. Once validated, re-run with **dry run** set to `false` |
0 commit comments