-
Nikolay Stanchev authoredNikolay Stanchev authored
setup.py 3.23 KiB
"""
// (c) University of Southampton IT Innovation Centre, 2018
//
// Copyright in this software belongs to University of Southampton
// IT Innovation Centre of Gamma House, Enterprise Road,
// Chilworth Science Park, Southampton, SO16 7NS, UK.
//
// This software may not be used, sold, licensed, transferred, copied
// or reproduced in whole or in part in any manner or form or in or
// on any media by any person other than in accordance with the terms
// of the Licence Agreement supplied with the software, or otherwise
// without the prior written consent of the copyright owners.
//
// This software is distributed WITHOUT ANY WARRANTY, without even the
// implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
// PURPOSE, except where stated in the Licence Agreement supplied with
// the software.
//
// Created By : Nikolay Stanchev
// Created Date : 15-05-2018
// Created for Project : FLAME
"""
# Python standard libs
import os
import os.path
from setuptools import setup, find_packages
def get_version(*relative_path):
"""
Reads and parses a version file.
:param relative_path: iterable representing the relative path to the version file
:return:
"""
fname = os.path.join(os.path.dirname(__file__), *relative_path)
if os.path.isfile(fname):
with open(fname) as f: # Use context managers when opening files, otherwise file handlers might not be properly closed
version = {}
# execute the version file and put its content in the version dictionary
exec(f.read(), version)
# extract the __version__ variable from the dictionary, if not found use default value "SNAPSHOT"
git_revision = version.get("__version__", "SNAPSHOT")
else:
git_revision = "SNAPSHOT"
return git_revision
requires = [
'ipython==6.5.0',
'jupyter_console==5.2.0',
'plaster_pastedeploy==0.6',
'pyramid==1.9.2',
'pyramid_debugtoolbar==4.5',
'pyramid_exclog==1.0',
'waitress==1.1.0',
'sqlalchemy==1.2.12',
'zope.sqlalchemy==1.0',
'psycopg2==2.7.5',
'influxdb==5.2.0',
'neo4j-driver==1.6.2',
'py2neo==4.1.0',
'pyyaml==3.13',
'tosca-parser==1.1.0',
'schema==0.6.8',
'requests==2.19.1'
]
tests_require = [
'pytest==3.8.1',
'pytest-cov==2.6.0'
]
setup(
name="clmcservice",
version=get_version("VERSION"),
author="Michael Boniface",
author_email="mjb@it-innovation.soton.ac.uk",
description="FLAME CLMC Service Module",
long_description="FLAME CLMC Service",
license="https://gitlab.it-innovation.soton.ac.uk/FLAME/flame-clmc/blob/integration/LICENSE",
keywords="FLAME CLMC service",
url='https://gitlab.it-innovation.soton.ac.uk/FLAME/flame-clmc',
packages=find_packages(),
include_package_data=True,
install_requires=requires,
extras_require={
'testing': tests_require,
},
classifiers=[
"Development Status :: Alpha",
"Topic :: FLAME CLMC Service",
"License :: ",
],
entry_points={
'paste.app_factory': [
'main = clmcservice:main',
],
'console_scripts': [
'initialize_clmcservice_db = clmcservice.initialize_db:main',
]
},
)