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

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

2.0.0 release for NDG Security

  • 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
19import os
20
21# Other packages needed by this server package
22_pkgDependencies = [
23    'ndg_security_common',
24    'Paste',
25    'WebOb',
26    'beaker',
27    'AuthKit',
28    'MyProxyClient'
29]
30
31_entryPoints = """
32    [console_scripts]
33    myproxy-saml-assertion-cert-ext-app=ndg.security.server.myproxy.certificate_extapp.saml_attribute_assertion:CertExtConsoleApp.run
34
35    [paste.app_factory]
36    main=ndg.security.server.pylons.container.config.middleware:make_app
37    [paste.app_install]
38    main=pylons.util:PylonsInstaller
39    [paste.paster_create_template]
40    ndgsecurity_services=ndg.security.server.paster_templates.template:DefaultDeploymentTemplate
41    ndgsecurity_services_with_sso=ndg.security.server.paster_templates.template:FullDeploymentTemplate
42    """
43   
44_longDescription = """\
45NDG Security Server-side components package
46
47NDG Security is the security system for the UK Natural Environment Research
48Council funded NERC DataGrid.  NDG Security has been developed to
49provide users with seamless federated access to secured resources across NDG
50participating organisations whilst at the same time providing an underlying
51system which is easy to deploy around organisation's pre-existing systems.
52
53Over the past two years the system has been developed in collaboration with the
54US DoE funded Earth System Grid project for the ESG Federation an infrastructure
55under development in support of CMIP5 (Coupled Model Intercomparison Project
56Phase 5), a framework for a co-ordinated set of climate model experiments
57which will input into the forthcoming 5th IPCC Assessment Report.
58
59NDG and ESG use a common access control architecture.  OpenID and MyProxy are
60used to support single sign on for browser based and HTTP rich client based
61applications respectively.  SAML is used for attribute query and authorisation
62decision interfaces.  XACML is used as the policy engine.  NDG Security has been
63re-engineered to use a filter based architecture based on WSGI enabling other
64Python WSGI based applications to be protected in a flexible manner without the
65need to modify application code.
66"""
67
68setup(
69    name =                      'ndg_security_server',
70    version =                   '2.0.0',
71    description =               'Server side components for running NERC DataGrid '
72                            'Security Services',
73    long_description =          _longDescription,
74    author =                    'Philip Kershaw',
75    author_email =              'Philip.Kershaw@stfc.ac.uk',
76    maintainer =                'Philip Kershaw',
77    maintainer_email =          'Philip.Kershaw@stfc.ac.uk',
78    url =                       'http://proj.badc.rl.ac.uk/ndg/wiki/Security',
79    license =               'BSD - See LICENCE file for details',
80    install_requires =          _pkgDependencies,
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        'ndg.security.server.sso.sso': [
89            'i18n/*/LC_MESSAGES/*.mo'
90        ],
91        'ndg.security.server.conf': [
92            '*.xml', '*.py', '*.cfg', '*.conf'
93        ],
94        'ndg.security.server.share': ['*'],
95        'ndg.security.server.sso': ['*.ini', '*.cfg', '*.txt'],
96        'ndg.security.server.sso.sso': ['public/*.*', 'public/layout/*.*'],
97        'ndg.security.server.sso.sso.badc_site': [
98            'public/*.*', 
99            'public/layout/*.*',
100            'public/layout/logos/*.*',
101            'public/layout/styles/*.*',
102            'public/layout/tabs/*.*'
103        ],
104        'ndg.security.server.sso.sso.templates.ndg.security': ['*.kid'],
105        'ndg.security.server.sso.sso.badc_site.templates.ndg.security': ['*.kid'],
106        'ndg.security.server.pylons': ['*.ini', '*.cfg', '*.txt'],
107        'ndg.security.server.pylons.container': [
108            'public/*.*', 
109            'public/layout/*.*',
110            'public/js/*.*',
111            'public/js/img/*.*',
112            'public/js/theme/*.*',
113            'public/js/yui/*.*'],
114        'ndg.security.server.pylons.container.templates.ndg.security': [
115            '*.kid'
116        ],
117        # See MANIFEST.in for ndg.security.server.paster_templates files
118    },
119    entry_points =           _entryPoints,
120    test_suite =                    'ndg.security.test',
121    zip_safe =              False
122)
Note: See TracBrowser for help on using the repository browser.