forked from containerbuildsystem/atomic-reactor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
58 lines (50 loc) · 1.66 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
#!/usr/bin/python
"""
Copyright (c) 2015 Red Hat, Inc
All rights reserved.
This software may be modified and distributed under the terms
of the BSD license. See the LICENSE file for details.
"""
import re
import sys
from setuptools import setup, find_packages
from atomic_reactor.constants import DESCRIPTION, HOMEPAGE
data_files = {
"share/atomic-reactor/images/privileged-builder": [
"images/privileged-builder/Dockerfile",
"images/privileged-builder/docker.sh",
],
"share/atomic-reactor/images/dockerhost-builder": [
"images/dockerhost-builder/Dockerfile",
],
}
def _get_requirements(path):
try:
with open(path) as f:
packages = f.read().splitlines()
except (IOError, OSError) as ex:
raise RuntimeError("Can't open file with requirements: %s", ex)
packages = (p.strip() for p in packages if not re.match("^\s*#", p))
packages = list(filter(None, packages))
return packages
def _install_requirements():
requirements = _get_requirements('requirements.txt')
if sys.version_info[0] < 3:
requirements += _get_requirements('requirements-py2.txt')
return requirements
setup(
name='atomic-reactor',
version='1.6.51',
description=DESCRIPTION,
author='Red Hat, Inc.',
author_email='[email protected]',
url=HOMEPAGE,
license="BSD",
entry_points={
'console_scripts': ['atomic-reactor=atomic_reactor.cli.main:run'],
},
packages=find_packages(exclude=["*.tests", "*.tests.*", "tests.*", "tests"]),
install_requires=_install_requirements(),
package_data={'atomic_reactor': ['schemas/*.json']},
data_files=data_files.items(),
)