From 95cfae792e50ae77cbe46ec5957f9b43c9d1e17b Mon Sep 17 00:00:00 2001 From: Thomas Goirand Date: Thu, 14 Jan 2016 06:16:02 +0000 Subject: [PATCH] Added Python 3 support. --- debian/changelog | 6 ++++++ debian/control | 55 +++++++++++++++++++++++++++++++++++++++++++----- debian/rules | 43 +++++++++++++++++++++++++++++-------- 3 files changed, 90 insertions(+), 14 deletions(-) diff --git a/debian/changelog b/debian/changelog index 1fd2421..ffe12bc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +python-neutronclient (1:3.1.0-3) experimental; urgency=medium + + * Added Python 3 support. + + -- Thomas Goirand Thu, 14 Jan 2016 06:15:45 +0000 + python-neutronclient (1:3.1.0-2) unstable; urgency=medium * Uploading to unstable. diff --git a/debian/control b/debian/control index bdbd3da..54effc0 100644 --- a/debian/control +++ b/debian/control @@ -2,7 +2,7 @@ Source: python-neutronclient Section: python Priority: optional Maintainer: PKG OpenStack -Uploaders: Thomas Goirand +Uploaders: Thomas Goirand , Build-Depends: debhelper (>= 9), dh-python, openstack-pkg-tools, @@ -10,8 +10,10 @@ Build-Depends: debhelper (>= 9), python-pbr (>= 1.8), python-setuptools, python-sphinx, -Build-Depends-Indep: cliff-tablib, - python-babel, + python3-all, + python3-pbr (>= 1.8), + python3-setuptools, +Build-Depends-Indep: python-babel, python-cliff (>= 1.14.0), python-coverage, python-fixtures (>= 1.3.1), @@ -32,6 +34,26 @@ Build-Depends-Indep: cliff-tablib, python-six (>= 1.9.0), python-tempest-lib (>= 0.8.0), python-testtools (>= 1.4.0), + python3-babel, + python3-cliff (>= 1.14.0), + python3-coverage, + python3-fixtures (>= 1.3.1), + python3-iso8601 (>= 0.1.9), + python3-keystoneclient (>= 1:1.6.0), + python3-mock (>= 1.3), + python3-mox3, + python3-netaddr (>= 0.7.12), + python3-oslo.i18n (>= 1.5.0), + python3-oslo.serialization (>= 1.4.0), + python3-oslo.utils (>= 2.0.0), + python3-oslotest (>= 1.10.0), + python3-requests (>= 2.5.2), + python3-requests-mock (>= 0.6.0), + python3-simplejson, + python3-six (>= 1.9.0), + python3-subunit, + python3-tempest-lib (>= 0.8.0), + python3-testtools (>= 1.4.0), subunit, testrepository, Standards-Version: 3.9.6 @@ -55,10 +77,33 @@ Depends: python-babel, python-six (>= 1.9.0), ${misc:Depends}, ${python:Depends}, -Description: client API library for Neutron +Description: client API library for Neutron - Python 2.7 Neutron provides an API to dynamically request and configure virtual networks. These networks connect "interfaces" from other OpenStack services (e.g., vNICs from Nova VMs). The Neutron API supports extensions to provide advanced network capabilities (e.g., QoS, ACLs, network monitoring, etc). . - This package provides the client agent. + This package provides the client and Python 2.7 module. + +Package: python3-neutronclient +Architecture: all +Depends: python3-babel, + python3-cliff (>= 1.14.0), + python3-iso8601, + python3-keystoneclient (>= 1:1.6.0), + python3-netaddr (>= 0.7.12), + python3-oslo.i18n (>= 1.5.0), + python3-oslo.serialization (>= 1.4.0), + python3-oslo.utils (>= 2.0.0), + python3-requests (>= 2.5.2), + python3-simplejson (>= 2.2.0), + python3-six (>= 1.9.0), + ${misc:Depends}, + ${python3:Depends}, +Description: client API library for Neutron - Python 3.x + Neutron provides an API to dynamically request and configure virtual networks. + These networks connect "interfaces" from other OpenStack services (e.g., vNICs + from Nova VMs). The Neutron API supports extensions to provide advanced network + capabilities (e.g., QoS, ACLs, network monitoring, etc). + . + This package provides the client and Python 3.x module. diff --git a/debian/rules b/debian/rules index 5dd3167..0310bb7 100755 --- a/debian/rules +++ b/debian/rules @@ -1,25 +1,40 @@ #!/usr/bin/make -f +PYTHONS:=$(shell pyversions -vr) +PYTHON3S:=$(shell py3versions -vr) + include /usr/share/openstack-pkg-tools/pkgos.make export OSLO_PACKAGE_VERSION=$(VERSION) %: - dh $@ --buildsystem=python_distutils --with python2 + dh $@ --buildsystem=python_distutils --with python2,python3 override_dh_auto_install: - dh_auto_install -O--buildsystem=python_distutils - install -D -m 0644 tools/neutron.bash_completion $(CURDIR)/debian/python-neutronclient/usr/share/bash-completion/completions/neutron + set -e ; for pyvers in $(PYTHONS); do \ + python$$pyvers setup.py install --install-layout=deb \ + --root $(CURDIR)/debian/python-neutronclient; \ + done + set -e ; for pyvers in $(PYTHON3S); do \ + python$$pyvers setup.py install --install-layout=deb \ + --root $(CURDIR)/debian/python3-neutronclient; \ + done + rm -f $(CURDIR)/debian/python*/usr/lib/python*/dist-packages/*.pth + install -D -m 0644 tools/neutron.bash_completion $(CURDIR)/debian/python-neutronclient-doc/usr/share/bash-completion/completions/neutron ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS))) override_dh_auto_test: - rm -rf .testrepository - testr init - set -e ; \ + @echo "===> Running tests" + set -e ; set -x ; for i in 2.7 $(PYTHON3S) ; do \ + PYMAJOR=`echo $$i | cut -d'.' -f1` ; \ + echo "===> Testing with python$$i (python$$PYMAJOR)" ; \ + rm -rf .testrepository ; \ + testr-python$$PYMAJOR init ; \ TEMP_REZ=`mktemp -t` ; \ - PYTHONPATH=$(CURDIR) testr run --subunit | tee $$TEMP_REZ | subunit2pyunit ; \ + PYTHONPATH=$(CURDIR) PYTHON=python$$i testr-python$$PYMAJOR run --subunit | tee $$TEMP_REZ | subunit2pyunit ; \ cat $$TEMP_REZ | subunit-filter -s --no-passthrough | subunit-stats ; \ - rm -f $$TEMP_REZ ; - testr slowest + rm -f $$TEMP_REZ ; \ + testr-python$$PYMAJOR slowest ; \ + done endif override_dh_auto_clean: @@ -31,3 +46,13 @@ override_dh_auto_clean: # sphinx-build -b man doc/source doc/man # dh_installman -O--buildsystem=python_distutils #endif + +# Commands not to run +override_dh_installcatalogs: +override_dh_installemacsen override_dh_installifupdown: +override_dh_installinfo override_dh_installmenu override_dh_installmime: +override_dh_installmodules override_dh_installlogcheck: +override_dh_installpam override_dh_installppp override_dh_installudev override_dh_installwm: +override_dh_installxfonts override_dh_gconf override_dh_icons override_dh_perl override_dh_usrlocal: +override_dh_installcron override_dh_installdebconf: +override_dh_installlogrotate override_dh_installgsettings: