libra/setup.py
2012-10-25 09:51:11 -04:00

76 lines
2.2 KiB
Python

# Copyright 2012 Hewlett-Packard Development Company, L.P.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
import sys
import setuptools
from setuptools.command.test import test as TestCommand
class PyTest(TestCommand):
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
pytest.main(self.test_args)
ci_cmdclass = {}
try:
from sphinx.setup_command import BuildDoc
class local_BuildDoc(BuildDoc):
def run(self):
# too hard to build PDFs on Mac
builders = ['html', 'man']
if sys.platform != 'darwin':
builders.append('pdf')
for builder in builders:
self.builder = builder
self.finalize_options()
BuildDoc.run(self)
ci_cmdclass['build_sphinx'] = local_BuildDoc
except Exception:
pass
ci_cmdclass['test'] = PyTest
setup_reqs = ['Sphinx']
if sys.platform != 'darwin':
setup_reqs.append('rst2pdf')
setuptools.setup(
name="libra",
description="Python LBaaS Gearman Worker and Pool Manager",
version="1.0",
author="David Shrewsbury <shrewsbury.dave@gmail.com>, \
Andrew Hutchings <andrew@linuxjedi.co.uk>",
packages=setuptools.find_packages(exclude=["*.tests"]),
entry_points={
'console_scripts': [
'libra_worker = libra.worker.worker:main',
'libra_pool_mgm = libra.mgm.mgm:main',
'libra_client = libra.client.client:main',
]
},
cmdclass=ci_cmdclass,
tests_require=['pytest-pep8'],
install_requires=['gearman', 'python-daemon'],
setup_requires=setup_reqs
)