source: TI12-security/trunk/NDGSecurity/python/ndg_security_common/setup.py @ 6284

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI12-security/trunk/NDGSecurity/python/ndg_security_common/setup.py@6284
Revision 6284, 3.8 KB checked in by pjkersha, 10 years ago (diff)

Preparing 1.4 release.

  • Property svn:keywords set to Id
Line 
1#!/usr/bin/env python
2
3"""Distribution Utilities setup program for NDG Security Package
4
5NERC Data Grid Project
6"""
7__author__ = "P J Kershaw"
8__date__ = "24/04/06"
9__copyright__ = "(C) 2009 Science and Technology Facilities Council"
10__license__ = "BSD - see LICENSE file in top-level directory"
11__contact__ = "Philip.Kershaw@stfc.ac.uk"
12__revision__ = '$Id$'
13
14# Bootstrap setuptools if necessary.
15from ez_setup import use_setuptools
16use_setuptools()
17
18from setuptools import setup, find_packages
19
20import os, sys
21
22# Packages needed for NDG Security
23# Note commented out ones fail with PyPI - use explicit link instead
24# TODO: subdivide these into server and client specific and comon dependencies
25_pkgDependencies = [
26    'PyXML', # include as a separate dependency to force correct download link
27    'ZSI',
28    '4Suite-XML',
29    'M2Crypto',
30    'ndg_security_saml'
31    ]
32
33# TODO: configure an option so that database support can be set for the
34# Credential Repository.  MySQL package may need to be in its own option
35# eventually
36credentialRepositoryDbSupport = False
37if credentialRepositoryDbSupport:
38    _pkgDependencies += [
39    'SQLObject',
40    'MySQL-python', # TODO: fix gcc error: unrecognized option `-restrict'
41]
42
43# Python 2.5 includes ElementTree by default
44if sys.version_info[0:2] < (2, 5):
45    _pkgDependencies += ['ElementTree', 'cElementTree']
46
47_longDescription = """\
48NDG Security is the security system for the UK Natural Environment Research
49Council funded NERC DataGrid.  NDG Security has been developed to
50provide users with seamless access to secured resources across NDG
51participating organisations whilst at the same time providing an underlying
52system which is easy to deploy around organisation's pre-existing systems.
53NDG Security is designed around a Role Based Access Control mechanism. Cross
54organisational access to resources is enabled through bilateral trust
55agreements between participating organisations expressed through a system for
56single sign and role mapping.
57
58NDG Security employs a web services based architecture enabling different
59combinations of components to be deployed according to a participating site's
60needs and requirements.  Resources are secured using a system of Policy
61Enforcement Point (Gatekeeper) and Policy Decision Point components.  An
62Attribute Authority provides a service to query a given users attributes used
63for gaining access to resources.  Session Manager and MyProxy services can be
64used for management of credentials.  NDG Security supports OpenID for Single
65Sign On and can integrate into both web based and non-web based application
66client interfaces.
67"""
68
69setup(
70    name =                      'ndg_security_common',
71    version =                   '1.4',
72    description =           'NERC DataGrid Security package containing common '
73                            'utilities used by both server and client '
74                            'packages',
75    long_description =          _longDescription,
76    author =                    'Philip Kershaw',
77    author_email =              'Philip.Kershaw@stfc.ac.uk',
78    maintainer =                'Philip Kershaw',
79    maintainer_email =          'Philip.Kershaw@stfc.ac.uk',
80    url =                       'http://proj.badc.rl.ac.uk/ndg/wiki/Security',
81    license =               'BSD - See LICENCE file for details',
82    install_requires =          _pkgDependencies,
83    dependency_links =          ["http://ndg.nerc.ac.uk/dist"],
84    packages =                  find_packages(),
85    namespace_packages =        ['ndg', 'ndg.security'],
86    # This flag will include all files under SVN control or included in
87    # MANIFEST.in.
88    #include_package_data =     True,
89    # Finer grained control of data file inclusion can be achieved with
90    # these parameters.  See the setuptools docs.
91    #package_data =             {}
92    #exclude_package_data =     {}
93    entry_points =         None,
94    test_suite =                   'ndg.security.test',
95    zip_safe =             False
96)
Note: See TracBrowser for help on using the repository browser.