-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathsetup.py
66 lines (55 loc) · 1.91 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
#!/usr/bin/env python
import os
import sys
from lettuce_bunch import version
from setuptools import setup
from string import strip
def get_dependencies():
with open('dependencies.txt', 'r') as file:
return map(lambda x: strip(x, ' \n'), file.readlines())
"""
def get_packages():
packages = []
for root, dirnames, filenames in os.walk('lettuce_bunch'):
if '__init__.py' in filenames:
packages.append(".".join(os.path.split(root)).strip("."))
return packages
"""
def get_packages(package):
"""
Return root package and all sub-packages.
"""
return [dirpath
for dirpath, dirnames, filenames in os.walk(package)
if os.path.exists(os.path.join(dirpath, '__init__.py'))]
def get_package_data(package):
"""
Return all files under the root package, that are not in a
package themselves.
"""
walk = [(dirpath.replace(package + os.sep, '', 1), filenames)
for dirpath, dirnames, filenames in os.walk(package)
if not os.path.exists(os.path.join(dirpath, '__init__.py'))]
filepaths = []
for base, filenames in walk:
filepaths.extend([os.path.join(base, filename)
for filename in filenames])
return {package: filepaths}
#required_modules = get_dependencies()
required_modules = ['lettuce', 'jinja2', 'PyYAML', 'nose', 'anyjson', 'lxml']
package='lettuce_bunch'
license = 'GPL v3.0+'
setup(name='lettuce-bunch',
version=version,
description='Bunch test organizer for Lettuce',
author=u'GD',
author_email='[email protected]',
url='http://github.com/TODO',
packages=get_packages(package),
package_data=get_package_data(package),
license=license,
install_requires=required_modules,
entry_points={
'console_scripts': ['bunch = lettuce_bunch.cli:main'],
},
)