flaschengeist/setup.py

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

70 lines
2.2 KiB
Python
Raw Normal View History

from setuptools import setup, find_packages, Command
import subprocess
2021-03-18 13:05:28 +00:00
import os
mysql_driver = "PyMySQL" if os.name == "nt" else "mysqlclient"
2020-08-13 17:48:26 +00:00
class DocsCommand(Command):
description = "Generate and export API documentation"
user_options = [
# The format is (long option, short option, description).
("output=", "o", "Documentation output path"),
]
def initialize_options(self):
self.output = "./docs"
def finalize_options(self):
pass
def run(self):
"""Run command."""
command = ["python", "-m", "pdoc", "--skip-errors", "--html", "--output-dir", self.output, "flaschengeist"]
self.announce(
"Running command: %s" % str(command),
)
subprocess.check_call(command)
2020-08-13 17:48:26 +00:00
setup(
name="flaschengeist",
version="2.0.0.dev0",
url="https://wu5.de/redmine/projects/geruecht",
author="WU5 + Friends",
author_email="tim@groeger-clan.de",
description="Does things",
2020-08-13 17:48:26 +00:00
packages=find_packages(),
2020-10-28 13:21:54 +00:00
package_data={"": ["*.toml"]},
scripts=["run_flaschengeist"],
2021-03-18 11:20:17 +00:00
python_requires=">=3.7",
install_requires=[
"Flask >= 1.1",
2020-10-28 13:21:54 +00:00
"toml",
"sqlalchemy>=1.4",
"flask_sqlalchemy>=2.5",
"flask_cors",
"werkzeug",
mysql_driver,
],
extras_require={"ldap": ["flask_ldapconn", "ldap3"], "pricelist": ["pillow"], "test": ["pytest", "coverage"]},
2020-09-01 23:10:54 +00:00
entry_points={
"flaschengeist.plugin": [
# Authentication providers
"auth_plain = flaschengeist.plugins.auth_plain:AuthPlain",
"auth_ldap = flaschengeist.plugins.auth_ldap:AuthLDAP [ldap]",
# Route providers (and misc)
"auth = flaschengeist.plugins.auth:AuthRoutePlugin",
"users = flaschengeist.plugins.users:UsersPlugin",
"roles = flaschengeist.plugins.roles:RolesPlugin",
"balance = flaschengeist.plugins.balance:BalancePlugin",
"events = flaschengeist.plugins.events:EventPlugin",
"mail = flaschengeist.plugins.message_mail:MailMessagePlugin",
2021-03-25 00:20:26 +00:00
"pricelist = flaschengeist.plugins.pricelist:PriceListPlugin [pricelist]",
],
},
cmdclass={
"docs": DocsCommand,
},
2020-08-13 17:48:26 +00:00
)