06d26d1ce5
We moved to DistUtilsExtra because it promised a more automatic workflow from setup.py. It doesn't actually deliver though, and it also vomits warnings during setup.py usage, and also breaks pip integration. So this is going back to babel. Mostly folks shouldn't need to know anything about this. We'll need to update the translations import jobs in Jenkins, and we might need to add a corresponding translations upload job that runs post-merge. Translations installation doesn't fully work - but it actually wasn't fully working before. Getting this part of the project done now though is a pre-requisite for using tox for multi-python testing (tox starts by creating an sdist tarball and then installing it into the venv, which is just 100% broken with DistUtilsExtra) Change-Id: I126e1bcfab0656eab6ca10de67d3d2aaa8b844f3
96 lines
3.0 KiB
Python
96 lines
3.0 KiB
Python
# vim: tabstop=4 shiftwidth=4 softtabstop=4
|
|
|
|
# Copyright 2010 United States Government as represented by the
|
|
# Administrator of the National Aeronautics and Space Administration.
|
|
# All Rights Reserved.
|
|
#
|
|
# 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 glob
|
|
import os
|
|
|
|
from setuptools import find_packages
|
|
|
|
from setuptools import setup
|
|
|
|
from nova import version
|
|
|
|
nova_cmdclass = {}
|
|
|
|
try:
|
|
from sphinx.setup_command import BuildDoc
|
|
|
|
class local_BuildDoc(BuildDoc):
|
|
def run(self):
|
|
for builder in ['html', 'man']:
|
|
self.builder = builder
|
|
self.finalize_options()
|
|
BuildDoc.run(self)
|
|
nova_cmdclass['build_sphinx'] = local_BuildDoc
|
|
|
|
except Exception:
|
|
pass
|
|
|
|
|
|
def find_data_files(destdir, srcdir):
|
|
package_data = []
|
|
files = []
|
|
for d in glob.glob('%s/*' % (srcdir, )):
|
|
if os.path.isdir(d):
|
|
package_data += find_data_files(
|
|
os.path.join(destdir, os.path.basename(d)), d)
|
|
else:
|
|
files += [d]
|
|
package_data += [(destdir, files)]
|
|
return package_data
|
|
|
|
|
|
setup(name='nova',
|
|
version=version.canonical_version_string(),
|
|
description='cloud computing fabric controller',
|
|
author='OpenStack',
|
|
author_email='nova@lists.launchpad.net',
|
|
url='http://www.openstack.org/',
|
|
cmdclass=nova_cmdclass,
|
|
packages=find_packages(exclude=['bin', 'smoketests']),
|
|
include_package_data=True,
|
|
test_suite='nose.collector',
|
|
data_files=find_data_files('share/nova', 'tools'),
|
|
scripts=['bin/clear_rabbit_queues',
|
|
'bin/instance-usage-audit',
|
|
'bin/nova-all',
|
|
'bin/nova-api',
|
|
'bin/nova-api-ec2',
|
|
'bin/nova-api-metadata',
|
|
'bin/nova-api-os-compute',
|
|
'bin/nova-api-os-volume',
|
|
'bin/nova-cert',
|
|
'bin/nova-compute',
|
|
'bin/nova-console',
|
|
'bin/nova-consoleauth',
|
|
'bin/nova-dhcpbridge',
|
|
'bin/nova-direct-api',
|
|
'bin/nova-logspool',
|
|
'bin/nova-manage',
|
|
'bin/nova-network',
|
|
'bin/nova-objectstore',
|
|
'bin/nova-rootwrap',
|
|
'bin/nova-scheduler',
|
|
'bin/nova-spoolsentry',
|
|
'bin/nova-volume',
|
|
'bin/nova-vsa',
|
|
'bin/nova-xvpvncproxy',
|
|
'bin/stack',
|
|
'tools/nova-debug'],
|
|
py_modules=[])
|