Skip to content

Commit 3621b80

Browse files
Update out of date content for release doc (#42962)
* Revise management package release process details Updated release process steps and corrected file references. * Update mgmt_release.md
1 parent e6a18f1 commit 3621b80

File tree

1 file changed

+22
-25
lines changed

1 file changed

+22
-25
lines changed

doc/dev/mgmt/mgmt_release.md

Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@
22

33
## General Release Process Overview
44

5-
Once Swagger PR is merged, SDK automation will create pull request to Azure SDK for Python repository, and here are steps that you need to do in order to release a new package:
5+
Once Swagger PR is merged and a release plan/request is submitted, here are steps that you need to do in order to release a new package:
66

7-
- open PR that was merged in swagger repository and find the link to the PR createted in Azure SDK for Python
8-
- reopen generated SDK PR and make sure the CI passes
7+
- create SDK pull request with code generation
8+
- identify and resolve breaking changes
99
- verify that generated code was generated correctly, make sure right version was generated with right configuration
10+
- verify the release notes match actual changes (CHANGELOG.md)
11+
- verify the version accordingly to changes that were made (_version.py)
12+
- generate samples and develop tests
13+
- make sure the CI passes
1014
- merge the PR if everything looks good
11-
- create another PR manually in order to add release notest and update version (this is currently not done by automation)
12-
- generate release notes as described below, verify they match actual changes (HISTORY.rst)
13-
- update version accordingly to changes that were made (version.py)
14-
- merge the PR
1515
- run release pipeline
1616

1717
Once you have a PR that contains accurate with correct tests (or no tests at all, but CI is green), this page explains how to prepare for a release.
@@ -20,8 +20,8 @@ IMPORTANT NOTE: All the commands in this page assumes you have loaded the [dev_s
2020

2121
## Manual generation
2222

23-
If the automation is not doing its job to create an auto PR, Python has a SwaggerToSdk CLI that can be used to generate a specific Readme. You need
24-
a virtual environment loaded with at least `eng/tools/azure-sdk-tools` installed.
23+
If the automation is not doing its job to create an auto PR, Python has a SwaggerToSdk CLI that can be used to generate SDK by a specific Readme. You need
24+
a virtual environment loaded with at least `eng/tools/azure-sdk-tools` installed. And to manually create a package from Typespec, here's the full direction https://github.com/Azure/azure-sdk-for-python/wiki/Generate-Python-Mgmt-SDK-from-Typespec.
2525

2626
```shell
2727
# Using default configuration (this can be a Github raw link)
@@ -43,16 +43,16 @@ If not, you can execute this command (replace the last part by your package name
4343
python -m packaging_tools --build-conf azure-mgmt-web
4444
```
4545

46-
If the file sdk_packaging.toml didn't exist, now one is created with default values. Update this file and update the default values to the one from this service. Once it's done, restart the same script.
46+
If the file pyproject.toml didn't exist, now one is created with default values. Update this file and update the default values to the one from this service. Once it's done, restart the same script.
4747

4848
Your packaging info are up-to-date
4949

5050
## Building the ChangeLog
5151

52-
For all packages, you need to update the `HISTORY.rst` file
52+
For all packages, you need to update the `CHANGELOG.md` file
5353

5454
```
55-
/azure-mgmt-myservice/HISTORY.rst
55+
/azure-mgmt-myservice/CHANGELOG.md
5656
```
5757

5858
For all **autorest generated packages**, there is a tool that allows you to auto-build the ChangeLog.
@@ -71,17 +71,17 @@ python -m packaging_tools.code_report --last-pypi azure-mgmt-trafficmanager
7171
Output will look like this:
7272
```shell
7373
INFO:__main__:Download versions of azure-mgmt-trafficmanager on PyPI
74-
INFO:__main__:Got ['0.30.0rc5', '0.30.0rc6', '0.30.0', '0.40.0', '0.50.0', '0.51.0']
74+
INFO:__main__:Got ['0.30.0rc5', '0.30.0rc6', '0.30.0', '0.40.0', '0.50.0', '0.51.0', '1.0.0b1', '1.0.0', '1.1.0b1', '1.1.0']
7575
INFO:__main__:Only keep last PyPI version
76-
INFO:__main__:Installing version 0.51.0 of azure-mgmt-trafficmanager in a venv
76+
INFO:__main__:Installing version 1.1.0 of azure-mgmt-trafficmanager in a venv
7777
INFO:__main__:Looking for Autorest generated package in azure.mgmt.trafficmanager
7878
INFO:__main__:Found azure.mgmt.trafficmanager
7979
INFO:__main__:Working on azure.mgmt.trafficmanager
80-
INFO:__main__:Report written to sdk/trafficmanager/azure-mgmt-trafficmanager/code_reports/0.51.0/report.json
80+
INFO:__main__:Report written to sdk\trafficmanager\azure-mgmt-trafficmanager\code_reports\1.1.0\report.json
8181
```
8282
8383
Note the output path of the report:
84-
`sdk/trafficmanager/azure-mgmt-trafficmanager/code_reports/0.51.0/report.json`
84+
`sdk\trafficmanager\azure-mgmt-trafficmanager\code_reports\1.1.0\report.json`
8585
8686
#### Build the report from the current code.
8787
@@ -112,10 +112,10 @@ Note the output path of the report:
112112
113113
You call the changelog tool with these report as input:
114114
```shell
115-
python -m packaging_tools.change_log sdk/trafficmanager/azure-mgmt-trafficmanager/code_reports/0.51.0/report.json sdk/trafficmanager/azure-mgmt-trafficmanager/code_reports/latest/report.json
115+
python -m packaging_tools.change_log sdk\trafficmanager\azure-mgmt-trafficmanager\code_reports\1.1.0\report.json sdk/trafficmanager/azure-mgmt-trafficmanager/code_reports/latest/report.json
116116
```
117117
118-
Output will Markdown syntax that you can copy/paste directly into the HISTORY.txt
118+
Output will Markdown syntax that you can copy/paste directly into the CHANGELOG.md
119119
Example:
120120
```shell
121121
**Features**
@@ -145,13 +145,10 @@ You need to check the version in:
145145
146146
Python SDK _strictly_ follows [semver](https://semver.org/). A few notes:
147147
148-
- First release should always use 0.1.0, unless asked explicitly by service team
149-
- If a version is 0.5.2:
150-
- Next breaking / feature version is 0.6.0
151-
- Next bug fix is 0.5.3
148+
- First release should always use 1.0.0b1, unless asked explicitly by service team
152149
- If a version is 2.1.0:
153-
- Next preview breaking is 3.0.0rc1
150+
- Next preview breaking is 2.2.0b1
154151
- Next stable breaking is 3.0.0
155-
- Next preview feature is 2.2.0rc1
152+
- Next preview feature is 2.2.0b1
156153
- Next stable feature is 2.2.0
157-
- Next patch is 2.1.1
154+
- Next patch is 2.1.1

0 commit comments

Comments
 (0)