-
Notifications
You must be signed in to change notification settings - Fork 3k
Release Process
Update the version in the following files. Note that there may be multiple instances of the version in each of the files.
The README.rst for the bundle packages have the exact version of the packages they are bundling.
- /azure/README.rst
- /azure-mgmt/README.rst
The setup.py for every package has a version.
- /azure/setup.py
- /azure-common/setup.py
- /azure-mgmt/setup.py
- /azure-mgmt-common/setup.py
- /azure-mgmt-compute/setup.py
- /azure-mgmt-network/setup.py
- /azure-mgmt-nspkg/setup.py
- /azure-mgmt-resource/setup.py
- /azure-mgmt-storage/setup.py
- /azure-nspkg/setup.py
- /azure-servicebus/setup.py
- /azure-servicemanagement-legacy/setup.py
Several packages (non-bundle and non-nspkg) expose a version attribute.
- /azure-common/azure/common/init.py
- /azure-mgmt-common/azure/mgmt/common/init.py
- /azure-mgmt-compute/azure/mgmt/compute/init.py
- /azure-mgmt-network/azure/mgmt/network/init.py
- /azure-mgmt-resource/azure/mgmt/resource/init.py
- /azure-mgmt-storage/azure/mgmt/storage/init.py
- /azure-servicebus/azure/servicebus/constants.py
- /azure-servicemanagement-legacy/azure/servicemanagement/constants.py
The documentation configuration has two strings for version and release
- /doc/conf.py
The changelog should be updated with new features, bug fixes, and contributor list.
- /changelog.txt
- Trigger rebuild of readthedocs.org. This should happen as part of a push, but if not you can post using the below:
curl -X POST http://azure-sdk-for-python.readthedocs.org
Check if the following page needs an update: https://github.com/Microsoft/PTVS/wiki/AzureSDK
http://azure.microsoft.com/en-us/develop/python/
https://github.com/Azure/azure-sdk-for-python/releases
- Create a new release, set the contents to the change log entry for the new version.
To build all the packages:
./Build.ps1
This will create the source distribution files in the /dist
folder and the wheel files in the /dist/wheelhouse
folder.
Once you've uploaded to PyPI, there's no way to overwrite the package. In case of problems, you'll need to increment the version number. To make sure everything works fine, upload and then test installing from the test server first. Make sure you install the dependencies manually, as they won't be present on the test server.
- Create an account for the test server
- Update .pypirc:
[test]
repository = https://testpypi.python.org/pypi
username = <yourusername>
password = <yourpassword>
To upload to the test server:
c:\python34\scripts\twine upload -r test dist\*.zip
c:\python34\scripts\twine upload -r test dist\wheelhouse\*.whl
To install from the test server:
pip install azure -i https://testpypi.python.org/pypi
Make sure you already have the non-azure dependencies installed, otherwise they may not be found on the test server. Don't install using --no-deps
, now that the azure package is a bundle of several azure packages, we want to test installation of all of them.
pip install python-dateutil
pip install requests
pip install futures (needed on python 2.x only)
To upload to production:
c:\python34\scripts\twine upload dist\*.zip
c:\python34\scripts\twine upload dist\wheelhouse\*.whl
To install from production:
pip install azure
TODO
- News Item for PyTools
- Post to [email protected]