"""A setuptools based setup module. See: https://packaging.python.org/en/latest/distributing.html https://github.com/pypa/sampleproject """ # To use a consistent encoding from codecs import open from os import path # Always prefer setuptools over distutils from setuptools import setup, find_packages # For matching the version string. import re this_module = "workflow" here = path.abspath(path.dirname(__file__)) # Get the long description from the README file with open(path.join(here, "README.md"), encoding="utf-8") as f: long_description = f.read() def read(*parts): with open(path.join(here, *parts), "r") as fp: return fp.read() def find_version(*file_paths): version_file = read(*file_paths) version_match = re.search( r"^___version___ = ['\"]([^'\"]*)['\"]", version_file, re.M ) if version_match: return version_match.group(1) raise RuntimeError("Unable to find version string.") requires = [ "pycapo", "pyramid", "pyramid_beaker", "pyramid_debugtoolbar", "pyramid_tm", "pyramid_retry", "requests", "ssa-schema", "sqlalchemy==1.3.23", "waitress", "ssa-workspaces", "zope.sqlalchemy", ] # Setup comment setup( name="ssa-" + this_module, # Versions should comply with PEP440. For a discussion on single-sourcing # the version across setup.py and the project code, see # https://packaging.python.org/en/latest/single_source_version.html version=find_version(this_module, "_version.py"), description="Workflow: the Workspaces Workflow Service", long_description=long_description, # Author details author="Science Support and Archive", author_email="ssa-announcements@nrao.edu", # Choose your license license="GPL", # See https://pypi.python.org/pypi?%3Aaction=list_classifiers classifiers=[ # How mature is this project? Common values are # 3 - Alpha # 4 - Beta # 5 - Production/Stable "Development Status :: 4 - Beta", # Indicate who your project is intended for "Intended Audience :: Developers", "Topic :: Software Development :: Build Tools", # Pick your license as you wish (should match "license" above) "License :: OSI Approved :: GPL License", # Specify the Python versions you support here. In particular, ensure # that you indicate whether you support Python 2, Python 3 or both. "Programming Language :: Python :: 3.6", ], install_requires=requires, tests_require=['ssa-testing'], extras_require={ "dev": [ "pyramid_debugtoolbar", ], }, packages=find_packages(), entry_points={ "paste.app_factory": ["main = workflow.server:main"], }, )