mirror of
https://github.com/ansible/awx.git
synced 2026-01-11 18:09:57 -03:30
121 lines
3.5 KiB
Python
Executable File
121 lines
3.5 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
# Copyright (c) 2013 AnsibleWorks, Inc.
|
|
# All Rights Reserved.
|
|
|
|
import os, datetime, glob
|
|
from setuptools import setup, find_packages
|
|
|
|
from ansibleworks import __version__
|
|
|
|
build_timestamp = datetime.datetime.now().strftime('%Y%m%d%H%M')
|
|
|
|
# Paths we'll use later
|
|
etcpath = "/etc/ansibleworks"
|
|
homedir = "/var/lib/ansibleworks"
|
|
if os.path.exists("/etc/debian_version"):
|
|
webconfig = "/etc/apache2/conf.d"
|
|
else:
|
|
webconfig = "/etc/httpd/conf.d"
|
|
|
|
#####################################################################
|
|
# Helper Functions
|
|
|
|
def explode_glob_path(path):
|
|
"""Take a glob and hand back the full recursive expansion,
|
|
ignoring links.
|
|
"""
|
|
|
|
result = []
|
|
includes = glob.glob(path)
|
|
for item in includes:
|
|
if os.path.isdir(item) and not os.path.islink(item):
|
|
result.extend(explode_glob_path(os.path.join(item, "*")))
|
|
else:
|
|
result.append(item)
|
|
return result
|
|
|
|
|
|
def proc_data_files(data_files):
|
|
"""Because data_files doesn't natively support globs...
|
|
let's add them.
|
|
"""
|
|
|
|
result = []
|
|
for dir,files in data_files:
|
|
includes = []
|
|
for item in files:
|
|
includes.extend(explode_glob_path(item))
|
|
result.append((dir, includes))
|
|
return result
|
|
|
|
#####################################################################
|
|
|
|
setup(
|
|
name='ansibleworks',
|
|
version=__version__.split("-")[0], # FIXME: Should keep full version here?
|
|
author='AnsibleWorks, Inc.',
|
|
author_email='support@ansibleworks.com',
|
|
description='AnsibleWorks API, UI and Task Engine',
|
|
long_description='AnsibleWorks API, UI and Task Engine',
|
|
license='Proprietary',
|
|
keywords='ansible',
|
|
url='http://github.com/ansible/ansible-commander',
|
|
packages=['ansibleworks'],
|
|
include_package_data=True,
|
|
zip_safe=False,
|
|
install_requires=[
|
|
'Django>=1.5',
|
|
'django-celery',
|
|
'django-extensions',
|
|
'django-filter',
|
|
'django-jsonfield',
|
|
'django-taggit',
|
|
'djangorestframework>=2.3.0,<2.4.0',
|
|
'pexpect',
|
|
'python-dateutil',
|
|
'PyYAML',
|
|
'requests',
|
|
'South>=0.8,<2.0',
|
|
],
|
|
setup_requires=[],
|
|
classifiers=[
|
|
'Development Status :: 4 - Beta',
|
|
'Environment :: Web Environment',
|
|
'Framework :: Django',
|
|
'Intended Audience :: Developers',
|
|
'Intended Audience :: Information Technology',
|
|
'Intended Audience :: System Administrators'
|
|
'License :: Other/Proprietary License',
|
|
'Natural Language :: English',
|
|
'Operating System :: OS Independent',
|
|
'Operating System :: POSIX',
|
|
'Programming Language :: Python',
|
|
'Topic :: System :: Installation/Setup',
|
|
'Topic :: System :: Systems Administration',
|
|
],
|
|
entry_points = {
|
|
'console_scripts': [
|
|
'ansibleworks-manage = ansibleworks:manage',
|
|
],
|
|
},
|
|
data_files = proc_data_files([
|
|
("%s" % homedir, ["ansibleworks/wsgi.py",
|
|
"ansibleworks/static/favicon.ico",
|
|
]),
|
|
("%s" % etcpath, ["config/settings.py"]),
|
|
("%s" % webconfig, ["config/ansibleworks.conf"]),
|
|
]
|
|
),
|
|
options={
|
|
'egg_info': {
|
|
'tag_build': '-dev%s' % build_timestamp,
|
|
},
|
|
'aliases': {
|
|
'dev_build': 'clean --all egg_info sdist',
|
|
'release_build': 'clean --all egg_info -b "" sdist',
|
|
},
|
|
},
|
|
)
|
|
|