Release Checklist
This document outlines the steps required to prepare and publish a new release of pynetbox.
Pre-Release Tasks
Ensure all tests are passing:
pytest
Update version number in pynetbox/__init__.py
Update documentation for any new features or changes
Check NetBox Docker releases: - Visit https://github.com/netbox-community/netbox-docker/releases - Review the latest NetBox Docker releases and their corresponding NetBox versions - Update supported NetBox versions in tests/integration/conftest.py if needed - Ensure the get_netbox_docker_version_tag function in tests/integration/conftest.py is updated with any new version mappings
Release Tasks
Create a new release branch from master:
git checkout master git pull git checkout -b release/vX.Y.Z
Commit version and changelog updates:
git commit -m "Prepare release vX.Y.Z"
Create a pull request to merge the release branch into master
Once merged, use github to create a new release: - Go to the GitHub repository - Click “Releases” in the right sidebar - Click “Create a new release” - Create a new tag (e.g., vX.Y.Z) - Use the changelog content as the release description - Publish the release
The GitHub release will automatically trigger the workflow to publish to PyPI.
Supported NetBox Versions
pynetbox aims to support the current and previous two minor versions of NetBox. The supported versions are defined in tests/integration/conftest.py and should be updated as part of the release process.