-
Notifications
You must be signed in to change notification settings - Fork 49
/
setup.py
68 lines (62 loc) · 2.03 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
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
"""The safe production pipeline"""
import os
from setuptools import setup, find_packages
from avalon.version import version
# Git is required for deployment
assert len(version.split(".")) == 3, (
"Could not compute patch version, make sure `git` is\n"
"available and see version.py for details")
classifiers = [
"Development Status :: 5 - Production/Stable",
"License :: OSI Approved :: MIT License",
"Intended Audience :: Developers",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 2",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Topic :: Utilities",
"Topic :: Software Development",
"Topic :: Software Development :: Libraries :: Python Modules",
]
# Serialise version from Git revision to patch number
dirname = os.path.dirname(__file__)
fname = os.path.join(dirname, "avalon", "__version__.py")
with open(fname, "w") as f:
f.write("version = \"%s\"\n" % version)
try:
setup(
name="avalon-core",
version=version,
description=__doc__,
long_description=__doc__,
url="https://github.com/getavalon/core",
author="Marcus Ottosson",
author_email="konstruktion@gmail.com",
license="MIT",
zip_safe=False,
packages=find_packages(),
package_data={
"avalon": [
"schema/*.json",
"style/*.qrc",
"style/*.qss",
"style/rc/*.png",
"fonts/opensans/*.txt",
"fonts/opensans/*.ttf",
"vendor/jsonschema/schemas/*.json",
"vendor/qtawesome/fonts/*.ttf",
"vendor/qtawesome/fonts/*.json",
]
},
classifiers=classifiers,
install_requires=[
"pymongo>=3.4,<4",
],
python_requires=">2.7, <4",
)
finally:
# Clean-up
os.remove(fname)