source: TI12-security/trunk/NDGSecurity/python/ndg_security_server/setup.py @ 7790

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

Incomplete - task 16: NDG Security 2.x.x - incl. updated Paster templates

  • Working unit tests for Attribute and Authorisation Service templates
  • Property svn:executable set to *
  • Property svn:keywords set to Id
Line 
1#!/usr/bin/env python
2"""Distribution Utilities setup program for NDG Security Server Package
3
4NERC Data Grid Project
5"""
6__author__ = "P J Kershaw"
7__date__ = "24/04/06"
8__copyright__ = "(C) 2009 Science and Technology Facilities Council"
9__license__ = "BSD - see LICENSE file in top-level directory"
10__contact__ = "Philip.Kershaw@stfc.ac.uk"
11__revision__ = '$Id$'
12
13# Bootstrap setuptools if necessary.
14from ez_setup import use_setuptools
15use_setuptools()
16
17from setuptools import setup, find_packages
18
19_entryPoints = """
20    [console_scripts]
21    myproxy-saml-assertion-cert-ext-app=ndg.security.server.myproxy.certificate_extapp.saml_attribute_assertion:CertExtConsoleApp.run
22
23    [paste.app_factory]
24    main=ndg.security.server.pylons.container.config.middleware:make_app
25   
26    [paste.app_install]
27    main=pylons.util:PylonsInstaller
28    [paste.paster_create_template]
29    ndgsecurity_securedapp=ndg.security.server.paster_templates.template:SecuredAppTemplate
30    ndgsecurity_services=ndg.security.server.paster_templates.template:ServicesTemplate
31    ndgsecurity_attribute_service=ndg.security.server.paster_templates.template:AttributeServiceTemplate
32    ndgsecurity_authorisation_service=ndg.security.server.paster_templates.template:AuthorisationServiceTemplate
33    ndgsecurity_openidprovider_service=ndg.security.server.paster_templates.template:OpenIdProviderServiceTemplate
34"""
35   
36_longDescription = """\
37NDG Security Server-side components package
38
39NDG Security is the security system for the UK Natural Environment Research
40Council funded NERC DataGrid.  NDG Security has been developed to
41provide users with seamless federated access to secured resources across NDG
42participating organisations whilst at the same time providing an underlying
43system which is easy to deploy around organisation's pre-existing systems.
44
45Over the past two years the system has been developed in collaboration with the
46US DoE funded Earth System Grid project for the ESG Federation an infrastructure
47under development in support of CMIP5 (Coupled Model Intercomparison Project
48Phase 5), a framework for a co-ordinated set of climate model experiments
49which will input into the forthcoming 5th IPCC Assessment Report.
50
51NDG and ESG use a common access control architecture.  OpenID and MyProxy are
52used to support single sign on for browser based and HTTP rich client based
53applications respectively.  SAML is used for attribute query and authorisation
54decision interfaces.  XACML is used as the policy engine.  NDG Security has been
55re-engineered to use a filter based architecture based on WSGI enabling other
56Python WSGI based applications to be protected in a flexible manner without the
57need to modify application code.
58"""
59
60setup(
61    name =                      'ndg_security_server',
62    version =                   '2.1.0',
63    description =               'Server side components for running NERC DataGrid '
64                            'Security Services',
65    long_description =          _longDescription,
66    author =                    'Philip Kershaw',
67    author_email =              'Philip.Kershaw@stfc.ac.uk',
68    maintainer =                'Philip Kershaw',
69    maintainer_email =          'Philip.Kershaw@stfc.ac.uk',
70    url =                       'http://proj.badc.rl.ac.uk/ndg/wiki/Security',
71    license =               'BSD - See LICENCE file for details',
72    install_requires =          [   'ndg_security_common',
73                                'Paste',
74                                'WebOb',
75                                'beaker',
76                                'AuthKit',
77                            ],
78    extras_require = {
79        'xacml':  ["ndg_xacml"],
80        'myproxy-saml-assertion-cert-ext-app': ['MyProxyClient']
81    },
82    # Set ndg.security.common dependency
83    dependency_links =      ["http://ndg.nerc.ac.uk/dist"],
84    packages =                      find_packages(),
85    namespace_packages =        ['ndg', 'ndg.security'],
86    include_package_data =  True,
87    package_data = {
88        # See MANIFEST.in for ndg.security.server.paster_templates files
89#        'ndg.security.server.templates.pki': ['*.crt', '*.key'],
90#        'ndg.security.server.templates.pki.ca': ['*.crt'],
91    },
92    entry_points =           _entryPoints,
93    test_suite =                    'ndg.security.test',
94    zip_safe =              False
95)
Note: See TracBrowser for help on using the repository browser.