Migrate to python3.

This commit is contained in:
Timo Aaltonen 2019-08-08 23:37:45 +03:00
parent 4bd4837d23
commit 6130f1903c
12 changed files with 114 additions and 120 deletions

1
debian/changelog vendored
View File

@ -7,6 +7,7 @@ freeipa (4.8.0-1) UNRELEASED; urgency=medium
* rules: Rework gentarball target. * rules: Rework gentarball target.
* control: Bump policy to 4.4.0. * control: Bump policy to 4.4.0.
* Bump debhelper compat to 12. * Bump debhelper compat to 12.
* Migrate to python3.
-- Timo Aaltonen <tjaalton@debian.org> Fri, 26 Apr 2019 00:12:20 +0300 -- Timo Aaltonen <tjaalton@debian.org> Fri, 26 Apr 2019 00:12:20 +0300

76
debian/control.common vendored
View File

@ -7,8 +7,6 @@ Description: transitional dummy package
Package: freeipa-common Package: freeipa-common
Architecture: all Architecture: all
Breaks: python-freeipa
Replaces: python-freeipa
Depends: Depends:
${misc:Depends}, ${misc:Depends},
Description: FreeIPA centralized identity framework -- common files Description: FreeIPA centralized identity framework -- common files
@ -35,14 +33,14 @@ Depends:
libsss-sudo, libsss-sudo,
libxmlrpc-core-c3 (>= 1.16.33-3.1ubuntu5), libxmlrpc-core-c3 (>= 1.16.33-3.1ubuntu5),
oddjob-mkhomedir, oddjob-mkhomedir,
python-dnspython, python3-dnspython,
python-ipaclient (= ${source:Version}), python3-ipaclient (= ${source:Version}),
python-gssapi, python3-gssapi,
python-ldap, python3-ldap,
python-sss, python3-sss,
sssd (>= 1.14.0), sssd (>= 1.14.0),
${misc:Depends}, ${misc:Depends},
${python:Depends}, ${python3:Depends},
${shlibs:Depends} ${shlibs:Depends}
Recommends: Recommends:
chrony, chrony,
@ -59,64 +57,62 @@ Description: FreeIPA centralized identity framework -- client
. .
This is the client package. This is the client package.
Package: python-ipaclient Package: python3-ipaclient
Architecture: all Architecture: all
Section: python Section: python
Breaks: freeipa-client (<< 4.3.0-1) Breaks: freeipa-client (<< 4.3.0-1)
Replaces: freeipa-client (<< 4.3.0-1) Replaces: freeipa-client (<< 4.3.0-1)
Depends: Depends:
freeipa-common (= ${binary:Version}), freeipa-common (= ${binary:Version}),
python-augeas, python3-augeas,
python-dnspython, python3-dnspython,
python-ipalib (>= ${source:Version}), python3-ipalib (>= ${source:Version}),
python-jinja2, python3-jinja2,
${misc:Depends}, ${misc:Depends},
${python:Depends}, ${python3:Depends},
Description: FreeIPA centralized identity framework -- Python modules for ipaclient Description: FreeIPA centralized identity framework -- Python3 modules for ipaclient
FreeIPA is an integrated solution to provide centrally managed Identity FreeIPA is an integrated solution to provide centrally managed Identity
(machine, user, virtual machines, groups, authentication credentials), Policy (machine, user, virtual machines, groups, authentication credentials), Policy
(configuration settings, access control information) and Audit (events, (configuration settings, access control information) and Audit (events,
logs, analysis thereof). logs, analysis thereof).
. .
This Python module is used by FreeIPA client. This Python3 module is used by FreeIPA client.
Package: python-ipalib Package: python3-ipalib
Architecture: all Architecture: all
Section: python Section: python
Breaks: python-freeipa
Replaces: python-freeipa
Depends: Depends:
freeipa-common (= ${source:Version}), freeipa-common (= ${source:Version}),
gnupg2, gnupg2,
gnupg-agent, gnupg-agent,
keyutils, keyutils,
python-cffi, python3-cffi,
python-cryptography, python3-cryptography,
python-dbus, python3-dbus,
python-dnspython, python3-dnspython,
python-gssapi, python3-gssapi,
python-ldap, python3-ldap,
python-libipa-hbac, python3-libipa-hbac,
python-lxml, python3-lxml,
python-netaddr, python3-netaddr,
python-netifaces (>= 0.10.4), python3-netifaces (>= 0.10.4),
python-nss (>= 0.16.0), python3-nss (>= 0.16.0),
python-pyasn1, python3-pyasn1,
python-qrcode (>= 5.0.0), python3-qrcode (>= 5.0.0),
python-requests, python3-requests,
python-setuptools, python3-setuptools,
python-six, python3-six,
python-usb (>= 1.0.0~b2), python3-usb (>= 1.0.0~b2),
python-yubico, python3-yubico,
systemd, systemd,
${misc:Depends}, ${misc:Depends},
${python:Depends}, ${python3:Depends},
${shlibs:Depends}, ${shlibs:Depends},
Description: FreeIPA centralized identity framework -- shared Python modules Description: FreeIPA centralized identity framework -- shared Python3 modules
FreeIPA is an integrated solution to provide centrally managed Identity FreeIPA is an integrated solution to provide centrally managed Identity
(machine, user, virtual machines, groups, authentication credentials), Policy (machine, user, virtual machines, groups, authentication credentials), Policy
(configuration settings, access control information) and Audit (events, (configuration settings, access control information) and Audit (events,
logs, analysis thereof). logs, analysis thereof).
. .
This Python module is used by other FreeIPA packages. This Python3 module is used by other FreeIPA packages.

90
debian/control.server vendored
View File

@ -34,17 +34,17 @@ Depends:
p11-kit, p11-kit,
pki-ca (>= 10.6.0~), pki-ca (>= 10.6.0~),
pki-kra (>= 10.6.0~), pki-kra (>= 10.6.0~),
python-dateutil, python3-dateutil,
python-ipaserver (= ${source:Version}), python3-ipaserver (= ${source:Version}),
python-gssapi, python3-gssapi,
python-ldap (>= 2.4.22), python3-ldap (>= 2.4.22),
python-systemd, python3-systemd,
slapi-nis (>= 0.56.1), slapi-nis (>= 0.56.1),
softhsm2 (>= 2.1.0-2), softhsm2 (>= 2.1.0-2),
sssd-dbus, sssd-dbus,
systemd-sysv, systemd-sysv,
${misc:Depends}, ${misc:Depends},
${python:Depends}, ${python3:Depends},
${shlibs:Depends} ${shlibs:Depends}
Recommends: Recommends:
freeipa-server-dns, freeipa-server-dns,
@ -66,7 +66,7 @@ Depends:
bind9-dyndb-ldap (>= 11.1-3), bind9-dyndb-ldap (>= 11.1-3),
opendnssec (>= 1:1.4.9-2), opendnssec (>= 1:1.4.9-2),
${misc:Depends}, ${misc:Depends},
${python:Depends}, ${python3:Depends},
${shlibs:Depends} ${shlibs:Depends}
Description: FreeIPA centralized identity framework -- IPA DNS integration Description: FreeIPA centralized identity framework -- IPA DNS integration
FreeIPA is an integrated solution to provide centrally managed Identity FreeIPA is an integrated solution to provide centrally managed Identity
@ -81,12 +81,12 @@ Architecture: amd64 arm64 armhf i386 mips mips64el mipsel ppc64 ppc64el s390x
Depends: Depends:
freeipa-common (= ${source:Version}), freeipa-common (= ${source:Version}),
freeipa-server (= ${binary:Version}), freeipa-server (= ${binary:Version}),
python-ipaserver (= ${source:Version}), python3-ipaserver (= ${source:Version}),
python-samba, python3-samba,
samba, samba,
winbind, winbind,
${misc:Depends}, ${misc:Depends},
${python:Depends}, ${python3:Depends},
${shlibs:Depends} ${shlibs:Depends}
Description: FreeIPA centralized identity framework -- AD trust installer Description: FreeIPA centralized identity framework -- AD trust installer
FreeIPA is an integrated solution to provide centrally managed Identity FreeIPA is an integrated solution to provide centrally managed Identity
@ -102,12 +102,12 @@ Package: freeipa-tests
Architecture: all Architecture: all
Depends: Depends:
freeipa-client (>= ${source:Version}), freeipa-client (>= ${source:Version}),
python-ipalib (>= ${source:Version}), python3-ipalib (>= ${source:Version}),
python-ipatests (>= ${source:Version}), python3-ipatests (>= ${source:Version}),
python-pytest, python3-pytest,
${misc:Depends}, ${misc:Depends},
${python:Depends} ${python3:Depends}
Recommends: python-yaml Recommends: python3-yaml
Description: FreeIPA centralized identity framework -- tests Description: FreeIPA centralized identity framework -- tests
FreeIPA is an integrated solution to provide centrally managed Identity FreeIPA is an integrated solution to provide centrally managed Identity
(machine, user, virtual machines, groups, authentication credentials), Policy (machine, user, virtual machines, groups, authentication credentials), Policy
@ -116,7 +116,7 @@ Description: FreeIPA centralized identity framework -- tests
. .
This package contains tests that verify IPA functionality. This package contains tests that verify IPA functionality.
Package: python-ipaserver Package: python3-ipaserver
Architecture: all Architecture: all
Section: python Section: python
Breaks: freeipa-server (<< 4.3.0-1), Breaks: freeipa-server (<< 4.3.0-1),
@ -126,55 +126,55 @@ Replaces: freeipa-server (<< 4.3.0-1),
Depends: Depends:
freeipa-common (= ${binary:Version}), freeipa-common (= ${binary:Version}),
pki-tools (>= 10.2.6-3), pki-tools (>= 10.2.6-3),
python-custodia (>= 0.5.0), python3-custodia (>= 0.5.0),
python-dbus, python3-dbus,
python-dnspython, python3-dnspython,
python-gssapi, python3-gssapi,
python-ipaclient (= ${binary:Version}), python3-ipaclient (= ${binary:Version}),
python-ipalib (>= ${source:Version}), python3-ipalib (>= ${source:Version}),
python-jwcrypto, python3-jwcrypto,
python-kdcproxy, python3-kdcproxy,
python-ldap (>= 2.4.22), python3-ldap (>= 2.4.22),
python-libsss-nss-idmap, python3-libsss-nss-idmap,
python-pyasn1, python3-pyasn1,
python-sss, python3-sss,
samba-common, samba-common,
zip, zip,
${misc:Depends}, ${misc:Depends},
${python:Depends}, ${python3:Depends},
Description: FreeIPA centralized identity framework -- Python modules for server Description: FreeIPA centralized identity framework -- Python3 modules for server
FreeIPA is an integrated solution to provide centrally managed Identity FreeIPA is an integrated solution to provide centrally managed Identity
(machine, user, virtual machines, groups, authentication credentials), Policy (machine, user, virtual machines, groups, authentication credentials), Policy
(configuration settings, access control information) and Audit (events, (configuration settings, access control information) and Audit (events,
logs, analysis thereof). logs, analysis thereof).
. .
This Python module is used by FreeIPA server. This Python3 module is used by FreeIPA server.
Package: python-ipatests Package: python3-ipatests
Architecture: all Architecture: all
Section: python Section: python
Breaks: freeipa-tests (<< 4.3.0-1) Breaks: freeipa-tests (<< 4.3.0-1)
Replaces: freeipa-tests (<< 4.3.0-1) Replaces: freeipa-tests (<< 4.3.0-1)
Depends: Depends:
libnss3-tools, libnss3-tools,
python-coverage, python3-coverage,
python-ipalib (>= ${source:Version}), python3-ipalib (>= ${source:Version}),
python-mock, python3-mock,
python-paramiko, python3-paramiko,
python-paste, python3-paste,
python-polib, python3-polib,
python-pytest-multihost, python3-pytest-multihost,
python-pytest-sourceorder, python3-pytest-sourceorder,
python-sss, python3-sss,
xz-utils, xz-utils,
${misc:Depends}, ${misc:Depends},
${python:Depends} ${python3:Depends}
Recommends: python-yaml Recommends: python3-yaml
Description: FreeIPA centralized identity framework -- Python modules for tests Description: FreeIPA centralized identity framework -- Python3 modules for tests
FreeIPA is an integrated solution to provide centrally managed Identity FreeIPA is an integrated solution to provide centrally managed Identity
(machine, user, virtual machines, groups, authentication credentials), Policy (machine, user, virtual machines, groups, authentication credentials), Policy
(configuration settings, access control information) and Audit (events, (configuration settings, access control information) and Audit (events,
logs, analysis thereof). logs, analysis thereof).
. .
This Python module is used by FreeIPA tests. This Python3 module is used by FreeIPA tests.

48
debian/control.stub vendored
View File

@ -25,29 +25,29 @@ Build-Depends:
libssl-dev, libssl-dev,
libtalloc-dev, libtalloc-dev,
libxmlrpc-core-c3-dev (>= 1.33.06), libxmlrpc-core-c3-dev (>= 1.33.06),
python-all-dev, python3-all-dev,
python-cryptography, python3-cryptography,
python-dbus, python3-dbus,
python-dnspython (>= 1.11.1), python3-dnspython (>= 1.11.1),
python-gssapi, python3-gssapi,
python-jinja2, python3-jinja2,
python-kdcproxy, python3-kdcproxy,
python-ldap (>= 3.1), python3-ldap (>= 3.1),
python-lesscpy, python3-lesscpy,
python-libipa-hbac, python3-libipa-hbac,
python-libsss-nss-idmap, python3-libsss-nss-idmap,
python-lxml, python3-lxml,
python-netaddr, python3-netaddr,
python-netifaces (>= 0.10.4), python3-netifaces (>= 0.10.4),
python-nose, python3-nose,
python-nss (>= 0.16.0), python3-nss (>= 0.16.0),
python-polib, python3-polib,
python-pyasn1, python3-pyasn1,
python-qrcode (>= 5.0.0), python3-qrcode (>= 5.0.0),
python-setuptools, python3-setuptools,
python-six, python3-six,
python-sss (>= 1.14.0), python3-sss (>= 1.14.0),
python-usb (>= 1.0.0~b2), python3-usb (>= 1.0.0~b2),
python-yubico, python3-yubico,
systemd, systemd,
uuid-dev, uuid-dev,

View File

@ -1,3 +1,3 @@
dbus_python python-dbus dbus_python python3-dbus
dogtag_pki pki-server dogtag_pki pki-server
jwcrpyto python-jwcrypto jwcrpyto python3-jwcrypto

View File

@ -1,2 +0,0 @@
# no need to be executable
python-ipatests: script-not-executable usr/lib/python*/dist-packages/ipatests/test_integration/scripts/caless-create-pki

View File

@ -0,0 +1,2 @@
# no need to be executable
python3-ipatests: script-not-executable usr/lib/python*/dist-packages/ipatests/test_integration/scripts/caless-create-pki

11
debian/rules vendored
View File

@ -15,7 +15,9 @@ endif
DESTDIR=$(CURDIR)/debian/tmp DESTDIR=$(CURDIR)/debian/tmp
export PYTHON=python export PYTHON=python3
export am_cv_python_pythondir=/usr/lib/python3/dist-packages
export am_cv_python_pyexecdir=/usr/lib/python3/dist-packages
confflags = \ confflags = \
--libexecdir=/usr/lib/ \ --libexecdir=/usr/lib/ \
@ -92,11 +94,6 @@ endif
# remove files which are useful only for make uninstall # remove files which are useful only for make uninstall
find $(CURDIR)/debian/tmp -wholename '*/dist-packages/*/install_files.txt' -exec rm '{}' \; find $(CURDIR)/debian/tmp -wholename '*/dist-packages/*/install_files.txt' -exec rm '{}' \;
# we still need to use python2
find debian/tmp ! -name '*.pyc' -a ! -name '*.pyo' -a \
-type f -exec grep -qsm1 '^#!.*\bpython' {} \; \
-exec sed -i -e '1 s|^#!.*\bpython[^ ]*|#!/usr/bin/python|' {} \;
override_dh_missing: override_dh_missing:
dh_missing --fail-missing dh_missing --fail-missing
@ -118,5 +115,5 @@ override_dh_fixperms:
fi fi
%: %:
dh $@ --with python2 dh $@ --with python3
# --builddirectory=build # --builddirectory=build