URL: https://github.com/freeipa/freeipa/pull/195
Author: tiran
 Title: #195: Make ipaclient pip install-able
Action: edited

 Changed field: body
Original value:
"""
## proof of concept

This makes ipaclient and dependencies pip install-able by adding install 
requirements to all `setup.py`. A new make target `bdist_wheel` creates wheel 
distributions.
## example

```
$ make bdist_wheel
$ cp ../custodia/dist/custodia-0.2-py2.py3-none-any.whl dist/
$ virtualenv /tmp/ipaenv
New python executable in /tmp/ipaenv/bin/python2
Also creating executable in /tmp/ipaenv/bin/python
Installing setuptools, pip, wheel...done.
$ /tmp/ipaenv/bin/pip install dist/*.whl
Processing ./dist/custodia-0.2-py2.py3-none-any.whl
Processing ./dist/ipaclient-4.4.90.201610271437GITd812266-py2.py3-none-any.whl
Processing ./dist/ipalib-4.4.90.201610271437GITd812266-py2.py3-none-any.whl
Processing ./dist/ipaplatform-4.4.90.201610271437GITd812266-py2.py3-none-any.whl
Processing ./dist/ipapython-4.4.90.201610271437GITd812266-py2.py3-none-any.whl

...

Installing collected packages: configparser, requests, six, idna, pycparser, 
cffi, pyasn1, enum34, ipaddress, cryptography, jwcrypto, custodia, qrcode, 
python-nss, ipaplatform, netaddr, lxml, pyldap, netifaces, decorator, gssapi, 
dnspython, ipapython, ipalib, ipaclient
  Running setup.py install for python-nss ... done
Successfully installed cffi-1.8.3 configparser-3.5.0 cryptography-1.5.2 
custodia-0.2 decorator-4.0.10 dnspython-1.15.0 enum34-1.1.6 gssapi-1.2.0 
idna-2.1 ipaclient-4.4.90.201610271437GITd812266 ipaddress-1.0.17 
ipalib-4.4.90.201610271437GITd812266 ipaplatform-4.4.90.201610271437GITd812266 
ipapython-4.4.90.201610271437GITd812266 jwcrypto-0.3.1 lxml-3.6.4 
netaddr-0.7.18 netifaces-0.10.5 pyasn1-0.1.9 pycparser-2.16 pyldap-2.4.25.1 
python-nss-1.0.0 qrcode-5.3 requests-2.11.1 six-1.10.0
```
## open problems
- [x] Custodia is not yet released on PyPI (to be released soon)
- [ ] dependencies are duplicated in setup.py and RPM spec
- [ ] ipaplatform hard-codes the distribution on build time

## tickets
https://fedorahosted.org/freeipa/ticket/6468
https://fedorahosted.org/freeipa/ticket/6469

"""

-- 
Manage your subscription for the Freeipa-devel mailing list:
https://www.redhat.com/mailman/listinfo/freeipa-devel
Contribute to FreeIPA: http://www.freeipa.org/page/Contribute/Code

Reply via email to