diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 0000000..4b05517 --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1,3 @@ +include requirements.txt +include MANIFEST.in +include VERSION diff --git a/VERSION b/VERSION new file mode 100644 index 0000000..ceab6e1 --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +0.1 \ No newline at end of file diff --git a/__init__.py b/allauth_a2/__init__.py similarity index 100% rename from __init__.py rename to allauth_a2/__init__.py diff --git a/app_settings.py b/allauth_a2/app_settings.py similarity index 100% rename from app_settings.py rename to allauth_a2/app_settings.py diff --git a/models.py b/allauth_a2/models.py similarity index 100% rename from models.py rename to allauth_a2/models.py diff --git a/provider.py b/allauth_a2/provider.py similarity index 96% rename from provider.py rename to allauth_a2/provider.py index 34b1296..ee20dcc 100644 --- a/provider.py +++ b/allauth_a2/provider.py @@ -13,7 +13,7 @@ class Authentic2Account(ProviderAccount): class Authentic2Provider(OAuth2Provider): id = 'authentic2' name = 'Authentic2' - package = 'portail_citoyen2.allauth_authentic2' + package = 'allauth_a2' account_class = Authentic2Account def extract_uid(self, data): diff --git a/tests.py b/allauth_a2/tests.py similarity index 100% rename from tests.py rename to allauth_a2/tests.py diff --git a/urls.py b/allauth_a2/urls.py similarity index 100% rename from urls.py rename to allauth_a2/urls.py diff --git a/views.py b/allauth_a2/views.py similarity index 100% rename from views.py rename to allauth_a2/views.py diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..7bd0f5d --- /dev/null +++ b/requirements.txt @@ -0,0 +1,2 @@ +django-allauth +requests diff --git a/setup.py b/setup.py new file mode 100755 index 0000000..d8569c0 --- /dev/null +++ b/setup.py @@ -0,0 +1,130 @@ +#! /usr/bin/env python + +''' Setup script +''' + +import glob +import re +import sys +import os + +from setuptools import setup, find_packages +from setuptools.command.install_lib import install_lib as _install_lib +from distutils.command.build import build as _build +from distutils.command.sdist import sdist +from distutils.cmd import Command + +class compile_translations(Command): + description = 'compile message catalogs to MO files via django compilemessages' + user_options = [] + + def initialize_options(self): + pass + + def finalize_options(self): + pass + + def run(self): + try: + from django.core.management.commands.compilemessages import \ + compile_messages + for path in ['allauth_a2']: + if path.endswith('.py'): + continue + if not os.path.isdir(os.path.join(path, 'locale')): + continue + curdir = os.getcwd() + os.chdir(os.path.realpath(path)) + compile_messages(sys.stderr) + os.chdir(curdir) + except ImportError: + print + sys.stderr.write('!!! Please install Django >= 1.4 to build translations') + print + print + +class build(_build): + sub_commands = [('compile_translations', None)] + _build.sub_commands + +class install_lib(_install_lib): + def run(self): + self.run_command('compile_translations') + _install_lib.run(self) + +class eo_sdist(sdist): + + def run(self): + print "creating VERSION file" + if os.path.exists('VERSION'): + os.remove('VERSION') + version = get_version() + version_file = open('VERSION', 'w') + version_file.write(version) + version_file.close() + sdist.run(self) + print "removing VERSION file" + if os.path.exists('VERSION'): + os.remove('VERSION') + +def get_version(): + + version = None + if os.path.exists('VERSION'): + version_file = open('VERSION', 'r') + version = version_file.read() + version_file.close() + return version + for d in glob.glob('*'): + if not os.path.isdir(d): + continue + module_file = os.path.join(d, '__init__.py') + if not os.path.exists(module_file): + continue + for v in re.findall("""__version__ *= *['"](.*)['"]""", + open(module_file).read()): + assert version is None + version = v + if version: + break + assert version is not None + if os.path.exists('.git'): + import subprocess + p = subprocess.Popen(['git','describe','--dirty','--match=v*'], + stdout=subprocess.PIPE) + result = p.communicate()[0] + assert p.returncode == 0, 'git returned non-zero' + new_version = result.split()[0][1:] + assert new_version.split('-')[0] == version, '__version__ must match the last git annotated tag' + version = new_version.replace('-', '.') + return version + + +setup(name="allauth_a2", + version=get_version(), + license="AGPLv3 or later", + description="Authentic2 OAuth2 provider", + url="http://dev.entrouvert.org/", + author="Entr'ouvert", + author_email="info@entrouvert.org", + maintainer="Benjamin Dauvergne", + maintainer_email="info@entrouvert.com", + include_package_data=True, + packages=find_packages(), + scripts=(), + setup_requires=[ + 'django>=1.5.5', + ], + install_requires=[ + 'requests>=2.1', + 'django-allauth', + ], + dependency_links = [ + 'git+git://repos.entrouvert.org/django_allauth_a2_provider', + ], + cmdclass={ + 'build': build, + 'install_lib': install_lib, + 'compile_translations': compile_translations, + 'sdist': eo_sdist + }, +)