117 lines
4 KiB
Python
117 lines
4 KiB
Python
import os
|
|
import sys
|
|
|
|
from setuptools import setup
|
|
from setuptools.command.test import test as TestCommand
|
|
|
|
|
|
def read(fname):
|
|
with open(os.path.join(os.path.dirname(__file__), fname)) as buf:
|
|
return buf.read()
|
|
|
|
|
|
class PyTest(TestCommand):
|
|
user_options = [("pytest-args=", "a", "Arguments to pass to py.test")]
|
|
|
|
def initialize_options(self):
|
|
TestCommand.initialize_options(self)
|
|
self.pytest_args = []
|
|
|
|
def finalize_options(self):
|
|
TestCommand.finalize_options(self)
|
|
self.test_args = []
|
|
self.test_suite = True
|
|
|
|
def run_tests(self):
|
|
# import here, cause outside the eggs aren't loaded
|
|
import pytest
|
|
|
|
errno = pytest.main(self.pytest_args)
|
|
sys.exit(errno)
|
|
|
|
|
|
setup(
|
|
name="larigira",
|
|
version="1.3.1",
|
|
description="A radio automation based on MPD",
|
|
long_description=read("README.rst"),
|
|
long_description_content_type="text/x-rst",
|
|
author="boyska",
|
|
author_email="piuttosto@logorroici.org",
|
|
license="AGPL",
|
|
packages=["larigira", "larigira.dbadmin", "larigira.filters"],
|
|
install_requires=[
|
|
"Babel==2.6.0",
|
|
"Flask-Babel==0.12.2",
|
|
"pyxdg",
|
|
"gevent",
|
|
"flask-bootstrap",
|
|
"python-mpd2",
|
|
"wtforms",
|
|
"Flask-WTF",
|
|
"flask==0.11",
|
|
"pytimeparse",
|
|
"croniter==0.3.29",
|
|
"werkzeug==0.14.1",
|
|
"tinydb",
|
|
],
|
|
tests_require=["pytest-timeout==1.0", "py>=1.4.29", "pytest==3.0"],
|
|
python_requires=">=3.5",
|
|
extras_require={"percentwait": ["mutagen"]},
|
|
cmdclass={"test": PyTest},
|
|
zip_safe=False,
|
|
include_package_data=True,
|
|
entry_points={
|
|
"console_scripts": [
|
|
"larigira=larigira.larigira:main",
|
|
"larigira-timegen=larigira.timegen:main",
|
|
"larigira-audiogen=larigira.audiogen:main",
|
|
"larigira-dbmanage=larigira.event_manage:main",
|
|
],
|
|
"larigira.audiogenerators": [
|
|
"mpd = larigira.audiogen_mpdrandom:generate_by_artist",
|
|
"static = larigira.audiogen_static:generate",
|
|
"http = larigira.audiogen_http:generate",
|
|
"randomdir = larigira.audiogen_randomdir:generate",
|
|
"mostrecent = larigira.audiogen_mostrecent:generate",
|
|
"script = larigira.audiogen_script:generate",
|
|
],
|
|
"larigira.timegenerators": [
|
|
"frequency = larigira.timegen_every:FrequencyAlarm",
|
|
"single = larigira.timegen_every:SingleAlarm",
|
|
"cron = larigira.timegen_cron:CronAlarm",
|
|
],
|
|
"larigira.timeform_create": [
|
|
"single = larigira.timeform_base:SingleAlarmForm",
|
|
"frequency = larigira.timeform_base:FrequencyAlarmForm",
|
|
"cron = larigira.timeform_cron:CronAlarmForm",
|
|
],
|
|
"larigira.timeform_receive": [
|
|
"single = larigira.timeform_base:singlealarm_receive",
|
|
"frequency = larigira.timeform_base:frequencyalarm_receive",
|
|
"cron = larigira.timeform_cron:cronalarm_receive",
|
|
],
|
|
"larigira.audioform_create": [
|
|
"static = larigira.audioform_static:StaticAudioForm",
|
|
"http = larigira.audioform_http:AudioForm",
|
|
"script = larigira.audioform_script:ScriptAudioForm",
|
|
"randomdir = larigira.audioform_randomdir:Form",
|
|
"mostrecent = larigira.audioform_mostrecent:AudioForm",
|
|
],
|
|
"larigira.audioform_receive": [
|
|
"static = larigira.audioform_static:staticaudio_receive",
|
|
"http = larigira.audioform_http:audio_receive",
|
|
"script = larigira.audioform_script:scriptaudio_receive",
|
|
"randomdir = larigira.audioform_randomdir:receive",
|
|
"mostrecent = larigira.audioform_mostrecent:audio_receive",
|
|
],
|
|
"larigira.eventfilter": [
|
|
"maxwait = larigira.filters:maxwait",
|
|
"percentwait = larigira.filters:percentwait",
|
|
],
|
|
},
|
|
classifiers=[
|
|
"License :: OSI Approved :: GNU Affero General Public License v3",
|
|
"Programming Language :: Python :: 3",
|
|
],
|
|
)
|