forked from SFDO-Tooling/CumulusCI
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup.py
74 lines (64 loc) · 2.27 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
69
70
71
72
73
74
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os.path
import re
from pkgutil import walk_packages
from setuptools import setup
def find_packages(path=["."], prefix=""):
yield prefix
prefix = prefix + "."
for _, name, ispkg in walk_packages(path, prefix):
if ispkg:
yield name
with open(os.path.join("cumulusci", "version.txt"), "r") as version_file:
version = version_file.read().strip()
with open("README.rst", "rb") as readme_file:
readme = readme_file.read().decode("utf-8")
with open("HISTORY.rst", "rb") as history_file:
history = history_file.read().decode("utf-8")
with open("requirements/prod.txt") as requirements_file:
requirements = []
for req in requirements_file.read().splitlines():
# skip comments and hash lines
if re.match(r"\s*#", req) or re.match(r"\s*--hash", req):
continue
else:
req = req.split(" ")[0]
# Work around normalized name of github3.py distribution
req = req.replace("github3-py", "github3.py")
requirements.append(req)
setup(
name="cumulusci",
version=version,
description="Build and release tools for Salesforce developers",
long_description=readme + "\n\n" + history,
long_description_content_type="text/x-rst",
author="Salesforce.org",
author_email="[email protected]",
url="https://github.com/SFDO-Tooling/CumulusCI",
packages=list(find_packages(["cumulusci"], "cumulusci")),
package_dir={"cumulusci": "cumulusci"},
entry_points={
"console_scripts": [
"cci=cumulusci.cli.cci:main",
"snowfakery=snowfakery.cli:main",
]
},
include_package_data=True,
install_requires=requirements,
license="BSD license",
zip_safe=False,
keywords="cumulusci",
classifiers=[
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: BSD License",
"Natural Language :: English",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
],
test_suite="cumulusci.core.tests",
python_requires=">=3.8",
)