setup.py 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. try:
  2. from setuptools import setup, find_packages
  3. except ImportError:
  4. from ez_setup import use_setuptools
  5. use_setuptools()
  6. from setuptools import setup, find_packages
  7. _long_description = '''
  8. This is a HTTPS client implementation for httplib and urllib2 based on
  9. PyOpenSSL. PyOpenSSL provides a more fully featured SSL implementation over the
  10. default provided with Python and importantly enables full verification of the
  11. SSL peer.
  12. Prerequisites
  13. =============
  14. This has been developed and tested for Python 2.6 and 2.7 with pyOpenSSL 0.13.
  15. Note that proxy support is only available from Python 2.6.2 onwards.
  16. Installation
  17. ============
  18. Installation can be performed using easy_install or pip.
  19. Running ndg_httpclient
  20. ======================
  21. A simple script for fetching data using HTTP or HTTPS GET from a specified URL.
  22. Parameter::
  23. url The URL of the resource to be fetched
  24. Options::
  25. -h, --help Show help message and exit.
  26. -c FILE, --certificate=FILE
  27. Certificate file - defaults to $HOME/credentials.pem
  28. -k FILE, --private-key=FILE
  29. Private key file - defaults to the certificate file
  30. -t DIR, --ca-certificate-dir=DIR
  31. Trusted CA certificate file directory.
  32. -d, --debug Print debug information - this may be useful in
  33. solving problems with HTTP or HTTPS access to a
  34. server.
  35. -f FILE, --fetch=FILE Output file
  36. -n, --no-verify-peer Skip verification of peer certificate.
  37. '''
  38. setup(
  39. name='ndg_httpsclient',
  40. version="0.1.1",
  41. description='Provides enhanced HTTPS support for httplib and urllib2 using '
  42. 'PyOpenSSL',
  43. author='Richard Wilkinson and Philip Kershaw',
  44. author_email='Philip.Kershaw@stfc.ac.uk',
  45. url='http://ndg-security.ceda.ac.uk/wiki/ndg_httpsclient/',
  46. long_description=_long_description,
  47. license='BSD - See LICENCE file for details',
  48. namespace_packages=['ndg'],
  49. packages=find_packages(),
  50. package_dir={'ndg.httpsclient': 'ndg/httpsclient'},
  51. package_data={
  52. 'ndg.httpsclient': [
  53. 'test/README',
  54. 'test/scripts/*.sh',
  55. 'test/pki/localhost.*',
  56. 'test/pki/ca/*.0'
  57. ],
  58. },
  59. install_requires = ['PyOpenSSL'],
  60. classifiers = [
  61. 'Development Status :: 3 - Alpha',
  62. 'Environment :: Console',
  63. 'Environment :: Web Environment',
  64. 'Intended Audience :: End Users/Desktop',
  65. 'Intended Audience :: Developers',
  66. 'Intended Audience :: System Administrators',
  67. 'Intended Audience :: Science/Research',
  68. 'License :: OSI Approved :: BSD License',
  69. 'Natural Language :: English',
  70. 'Operating System :: Microsoft :: Windows',
  71. 'Operating System :: POSIX :: Linux',
  72. 'Programming Language :: Python',
  73. 'Topic :: Security',
  74. 'Topic :: Internet',
  75. 'Topic :: Scientific/Engineering',
  76. 'Topic :: System :: Distributed Computing',
  77. 'Topic :: System :: Systems Administration :: Authentication/Directory',
  78. 'Topic :: Software Development :: Libraries :: Python Modules'
  79. ],
  80. zip_safe = False,
  81. entry_points = {
  82. 'console_scripts': ['ndg_httpclient = ndg.httpsclient.utils:main',
  83. ],
  84. }
  85. )