Skip to content

Commit 7d195af

Browse files
helen229Copilotpraveenkuttappan
authored
Add 'Releasing a New Version' section to CONTRIBUTING (#15751)
* docs(mcp): add 'Releasing a New Version' section to CONTRIBUTING Documents the 3-step release flow per Praveen's walkthrough: update changelog + merge, approve the release stage on pipeline 7684, then approve the auto-generated increment-version PR. * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update tools/azsdk-cli/Azure.Sdk.Tools.Cli/CONTRIBUTING.md Co-authored-by: Praveen Kuttappan <55455725+praveenkuttappan@users.noreply.github.com> * Update tools/azsdk-cli/Azure.Sdk.Tools.Cli/CONTRIBUTING.md Co-authored-by: Praveen Kuttappan <55455725+praveenkuttappan@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: Praveen Kuttappan <55455725+praveenkuttappan@users.noreply.github.com>
1 parent 4c19a1a commit 7d195af

1 file changed

Lines changed: 23 additions & 0 deletions

File tree

tools/azsdk-cli/Azure.Sdk.Tools.Cli/CONTRIBUTING.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ It is targeted at **new contributors** to the MCP server. For end-user installat
2121
- [Adding a New Tool](#adding-a-new-tool)
2222
- [Coding Conventions](#coding-conventions)
2323
- [Submitting a Pull Request](#submitting-a-pull-request)
24+
- [Releasing a New Version](#releasing-a-new-version)
2425

2526
---
2627

@@ -259,4 +260,26 @@ A condensed checklist (see [`docs/new-tool.md`](../docs/new-tool.md) for the ful
259260
4. Open a PR against `Azure/azure-sdk-tools:main`; the CI pipeline (`tools/azsdk-cli/ci.yml`) runs build + tests across platforms.
260261
5. Tag a code owner from the `Tools` area for review.
261262

263+
## Releasing a New Version
264+
265+
Releases are published to [GitHub Releases](https://github.com/Azure/azure-sdk-tools/releases) by the CI pipeline ([`ci.yml`](../ci.yml)), which runs automatically on every merge to `main`. The release driver needs to do three things:
266+
267+
### 1. Update the changelog and merge
268+
269+
In [`CHANGELOG.md`](./CHANGELOG.md), rename the current `## <version> (Unreleased)` heading to `## <version> (<YYYY-MM-DD>)` (format `yyyy-MM-dd`). Add user-visible entries under `Features Added` / `Breaking Changes` / `Bugs Fixed` / `Other Changes`, and remove any empty sections. Open a PR with this change and get it merged to `main`.
270+
271+
CI's `VerifyChangelog: true` flag in `ci.yml` verifies the package version in [`Azure.Sdk.Tools.Cli.csproj`](./Azure.Sdk.Tools.Cli.csproj) has a matching changelog entry; the release stage will fail if the entry is still `(Unreleased)`, the date isn't the latest in the file, or any sections are empty.
272+
273+
### 2. Approve the release stage
274+
275+
CI pipeline [CI pipeline](https://dev.azure.com/azure-sdk/internal/_build?definitionId=7684) is automatically run after each change to Azure SDK Tools MCP server is merged. Once it reaches the release stage, click **Approve** on the run. Approval is required from an Azure SDK team member.
276+
277+
### 3. Approve the auto-generated increment PR
278+
279+
After the release completes, the pipeline automatically opens a PR titled **`Increment version for tools/azsdk-cli/Azure.Sdk.Tools.Cli releases`** that bumps `<VersionPrefix>` in the csproj to the next version. Approve and merge it.
280+
281+
### Verify
282+
283+
A new tag and release (e.g., `0.6.14`) appear on the [releases page](https://github.com/Azure/azure-sdk-tools/releases) once the release stage finishes.
284+
262285
Thanks for contributing!

0 commit comments

Comments
 (0)