Skip to content
Snippets Groups Projects
Unverified Commit 96899cdf authored by drebs's avatar drebs
Browse files

[pkg] make debian package report the correct version

The Soledad python source currently makes use of versioneer to calculate
versions dynamically and hardcode versions upon creation of the python
package. Unfortunatlly, this procedure does not behave well with debian
packaging, and we need to manually generate/replace the _version.py file
so the code that ends up in the debian package reports the correct
version of the software.

This commit adds a script to replace the _version.py file with a static
one and rules during packaging to run that script during preparation
stage of debian helper.
parent fb47c43f
Branches
No related tags found
1 merge request!159#8987 fix versioning in debian package (and other things)
...@@ -15,6 +15,7 @@ NAME=soledad-server ...@@ -15,6 +15,7 @@ NAME=soledad-server
override_dh_prep: override_dh_prep:
(cd ./docs/man; for src in *.rst; do tgt=$$(basename $${src} .rst); rst2man $${src} $${tgt}; done) (cd ./docs/man; for src in *.rst; do tgt=$$(basename $${src} .rst); rst2man $${src} $${tgt}; done)
PYTHONPATH=./ ./scripts/packaging/replace-version-file.py
dh_prep dh_prep
override_dh_installinit: override_dh_installinit:
......
src/leap/soledad/__init__.py /usr/lib/python2.7/dist-packages/leap/soledad/ src/leap/soledad/__init__.py /usr/lib/python2.7/dist-packages/leap/soledad/
src/leap/soledad/_version.py /usr/lib/python2.7/dist-packages/leap/soledad/ src/leap/soledad/_version.py /usr/lib/python2.7/dist-packages/leap/soledad/
src/leap/soledad/common /usr/lib/python2.7/dist-packages/leap/soledad/ src/leap/soledad/common /usr/lib/python2.7/dist-packages/leap/soledad/
debian/python-leap.soledad/usr/lib/python2.7/dist-packages/leap.soledad-*.egg-info /usr/lib/python2.7/dist-packages/
#!/usr/bin/env python
# This script will replace the versioneer source version file configured in
# `setup.cfg` with a file containing the hardcoded version generated by
# versioneer. It is meant to be used before building the debian package, so the
# generated package reports the correct version, as would be generated by
# versioneer if this was a python package.
import ConfigParser
import versioneer
# get the path to the version file
config = ConfigParser.RawConfigParser()
config.read('setup.cfg')
source_file = config.get('versioneer', 'versionfile_source')
# replace version file in source tree
versions = versioneer.get_versions()
versioneer.write_to_version_file(source_file, versions)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment