setup.py 3.72 KB
Newer Older
Valentin Samir's avatar
Valentin Samir committed
1
import os
2
import pkg_resources
Valentin Samir's avatar
Valentin Samir committed
3 4
from setuptools import setup

Valentin Samir's avatar
Valentin Samir committed
5 6
VERSION = '0.6.0'

Valentin Samir's avatar
Valentin Samir committed
7 8 9
with open(os.path.join(os.path.dirname(__file__), 'README.rst')) as readme:
    README = readme.read()

Valentin Samir's avatar
Valentin Samir committed
10 11 12
if __name__ == '__main__':
    # allow setup.py to be run from any path
    os.chdir(os.path.normpath(os.path.join(os.path.abspath(__file__), os.pardir)))
Valentin Samir's avatar
Valentin Samir committed
13

14

Valentin Samir's avatar
Valentin Samir committed
15
    # if we have Django 1.8 available, use last version of django-boostrap3
16
    try:
Valentin Samir's avatar
Valentin Samir committed
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
        pkg_resources.require('Django >= 1.8')
        django_bootstrap3 = 'django-bootstrap3 >= 5.4'
        django = 'Django >= 1.8,<1.10'
    except pkg_resources.VersionConflict:
        # Else if we have django 1.7, we need django-boostrap3 < 7.0.0
        try:
            pkg_resources.require('Django >= 1.7')
            django_bootstrap3 = 'django-bootstrap3 >= 5.4,<7.0.0'
            django = 'Django >= 1.7,<1.8'
        except (pkg_resources.VersionConflict, pkg_resources.DistributionNotFound):
            # Else we need to install Django, assume version will be >= 1.8
            django_bootstrap3 = 'django-bootstrap3 >= 5.4'
            django = 'Django >= 1.8,<1.10'
    # No version of django installed, assume version will be >= 1.8
    except pkg_resources.DistributionNotFound:
32 33 34
        django_bootstrap3 = 'django-bootstrap3 >= 5.4'
        django = 'Django >= 1.8,<1.10'

Valentin Samir's avatar
Valentin Samir committed
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
    setup(
        name='django-cas-server',
        version=VERSION,
        packages=[
            'cas_server', 'cas_server.migrations',
            'cas_server.management', 'cas_server.management.commands',
            'cas_server.tests'
        ],
        include_package_data=True,
        license='GPLv3',
        description=(
            'A Django Central Authentication Service server '
            'implementing the CAS Protocol 3.0 Specification'
        ),
        long_description=README,
        author='Valentin Samir',
        author_email='valentin.samir@crans.org',
        classifiers=[
            'Environment :: Web Environment',
            'evelopment Status :: 5 - Production/Stable',
            'Framework :: Django',
            'Framework :: Django :: 1.7',
            'Framework :: Django :: 1.8',
            'Framework :: Django :: 1.9',
            'Intended Audience :: Developers',
            'Intended Audience :: System Administrators',
            'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
            'Operating System :: OS Independent',
            'Programming Language :: Python',
            'Programming Language :: Python :: 2',
            'Programming Language :: Python :: 2.7',
            'Programming Language :: Python :: 3',
            'Programming Language :: Python :: 3.4',
            'Programming Language :: Python :: 3.5',
            'Topic :: Software Development :: Libraries :: Python Modules',
            'Topic :: Internet :: WWW/HTTP',
            'Topic :: Internet :: WWW/HTTP :: Dynamic Content',
            'Topic :: System :: Systems Administration :: Authentication/Directory'
        ],
        package_data={
            'cas_server': [
                'templates/cas_server/*',
                'static/cas_server/*',
                'locale/*/LC_MESSAGES/*',
            ]
        },
        keywords=['django', 'cas', 'cas3', 'server', 'sso', 'single sign-on', 'authentication', 'auth'],
        install_requires=[
            django, 'requests >= 2.4', 'requests_futures >= 0.9.5',
            'django-picklefield >= 0.3.1', django_bootstrap3, 'lxml >= 3.4',
            'six >= 1'
        ],
        url="https://github.com/nitmir/django-cas-server",
        download_url="https://github.com/nitmir/django-cas-server/releases",
        zip_safe=False,
        setup_requires=['pytest-runner'],
        tests_require=['pytest', 'pytest-django', 'pytest-pythonpath'],
    )