Implement native Debian packaging (control files are part of the source
repo) with Makefile to simplify the release procedure.
This commit is contained in:
Dave Jones
2015-10-05 22:17:42 +01:00
parent 17c93d1e45
commit c8105c8dc3
12 changed files with 419 additions and 41 deletions

51
RELEASE.rst Normal file
View File

@@ -0,0 +1,51 @@
=================
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.