forked from pulp/pulp-cli
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup.py
69 lines (61 loc) · 2.16 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
from setuptools import setup
try:
from setuptools import find_namespace_packages
plugin_packages = find_namespace_packages(
include=["pulpcore.cli.*"], exclude=["pulpcore.cli.*.*"]
)
except ImportError:
# Old versions of setuptools do not provide `find_namespace_packages`
# see https://github.com/pulp/pulp-cli/issues/248
from setuptools import find_packages
plugins = find_packages(where="pulpcore/cli")
plugin_packages = [f"pulpcore.cli.{plugin}" for plugin in plugins]
extra_packages = ["pulp_cli", "pytest_pulp_cli"]
plugin_entry_points = [(package.rsplit(".", 1)[-1], package) for package in plugin_packages]
long_description = ""
with open("README.md") as readme:
for line in readme:
if line == "## Contributing\n":
break
long_description += line
setup(
name="pulp-cli",
description="Command line interface to talk to pulpcore's REST API.",
long_description=long_description,
long_description_content_type="text/markdown",
author="Pulp Team",
author_email="[email protected]",
url="https://github.com/pulp/pulp-cli",
version="0.16.0.dev",
packages=plugin_packages + extra_packages,
package_data={"": ["py.typed", "locale/*/LC_MESSAGES/*.mo"]},
python_requires=">=3.6",
install_requires=[
"click>=8.0.0,<9.0.0",
"packaging",
"PyYAML~=5.3",
"schema==0.7.5",
"setuptools",
"requests~=2.24",
"toml==0.10.2",
],
extras_require={
"pygments": ["pygments"],
"shell": ["click-shell~=2.1"],
},
entry_points={
"console_scripts": ["pulp=pulp_cli:main"],
"pulp_cli.plugins": [f"{name}={module}" for name, module in plugin_entry_points],
},
license="GPLv2+",
classifiers=[
"Development Status :: 4 - Beta",
"Environment :: Console",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+)",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Topic :: System :: Software Distribution",
"Typing :: Typed",
],
)