mirror of
https://github.com/KevinMidboe/python-gpiozero.git
synced 2025-10-29 09:40:36 +00:00
Implement native Debian packaging (control files are part of the source repo) with Makefile to simplify the release procedure.
52 lines
1.7 KiB
ReStructuredText
52 lines
1.7 KiB
ReStructuredText
=================
|
|
Release Procedure
|
|
=================
|
|
|
|
On your build Pi, perform the following steps:
|
|
|
|
1. Ensure you have a reliable Internet connection (preferably Ethernet).
|
|
|
|
2. Ensure you have the following Debian packages installed: ``devscripts, dput,
|
|
python-all, python3-all, gnupg, build-essential, git, python-setuptools,
|
|
python3-setuptools, python-rpi.gpio, python3-rpi.gpio``
|
|
|
|
3. Ensure you have a valid ``~/.pypirc`` configuration. For example::
|
|
|
|
[distutils]
|
|
index-servers =
|
|
pypi
|
|
|
|
[pypi]
|
|
username:my_username
|
|
password:my_long_password
|
|
|
|
4. Ensure you have a valid ``~/.dput.cf`` setup which includes the
|
|
``[raspberrypi]`` target. For example::
|
|
|
|
[raspberrypi]
|
|
fqdn = build-master.raspberrypi.org
|
|
incoming = incoming
|
|
login = incoming
|
|
method = scp
|
|
|
|
5. Ensure you have a valid public/private key-pair defined for GNUPG.
|
|
|
|
6. In the ``python-gpiozero`` directory, run ``make release``. This will launch
|
|
``dch`` to update the Debian changelog. Fill this out properly (ticket
|
|
references!) and the release will be generated, tagged, signed, and
|
|
registered with GitHub and PyPI.
|
|
|
|
.. note::
|
|
|
|
Although the release has been registered at this point, no packages
|
|
have been generated or uploaded to any service.
|
|
|
|
7. Still in the ``python-gpiozero`` directory, run ``make upload``. This will
|
|
generate the actual debian packages, upload them to Raspbian, and upload
|
|
the source package to PyPI.
|
|
|
|
8. On GitHub, close any milestone associated with the release.
|
|
|
|
9. On ReadTheDocs, update the project configuration to build the new release,
|
|
then set it to the default version for the project.
|