genalog/RELEASE.md

33 строки
1.9 KiB
Markdown

# Genalog Release Procedure
Checklist for the release process of `genalog`:
### Preparation
- [ ] Ensure `main` branch contains all relevant changes and PRs relating to the specific release is merged
- [ ] Create and switch to a new release branch (i.e. release-X.Y.Z)
### Package Metadata Update
- [ ] Update VERSION.txt with version bump. Please reference [Semantic Versioning](https://semver.org/).
- [ ] Update [CHANGELOG.md](./CHANGELOG.md)
- [ ] Commit the above changes with title "Release vX.Y.Z"
- [ ] Generate a new git tag for the new version (e.g. `git tag -a v0.1.0 -m "Initial Release"`)
- [ ] Push the new tag to remote `git push origin v0.1.0`
- [ ] Create a new PR with the above changes into `main` branch.
### Run the Full Test Suites
- [ ] If you haven't, `pip install tox`
- [ ] Run the test suites with `tox -e py -- -m "not azure"` (we will skip the azure related tests as they will be deprecated)
### Release to PyPI
- [ ] Manually trigger the [release pipeline](https://dev.azure.com/genalog-dev/genalog/_build?definitionId=2) in DevOps on the release branch, this will publish latest version of `genalog` to PyPI.
- [ ] Select `releaseType` to `Test` to test out the release in [TestPyPI](https://test.pypi.org/project/genalog/)
- [ ] Rerun and switch `releaseType` to production if looks good.
- [ ] If the pipeline ran successfully, check and publish the draft of this release on [Github Release](https://github.com/microsoft/genalog/releases)
- [ ] Latest version is pip-installable with:
- `pip install genalog`
### Update Documentation on Github Page
- [ ] Staying on the release branch, `cd docs && pip install -r requirements-doc.txt`
- [ ] Build the jupyter-book with `jupyter-book build --all genalog_docs`
- [ ] Preview the HTML files, if looks good [publish to Github Page](https://jupyterbook.org/start/publish.html#publish-your-book-online-with-github-pages): `ghp-import -n -p -f genalog_docs/_build/html`