Get rid of distutils.extra.

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
This commit is contained in:
Monty Taylor 2012-02-07 14:32:15 -08:00
parent 1815aaf13a
commit 4a4c274c83
5 changed files with 28 additions and 16 deletions

2
.gitignore vendored
View File

@ -12,4 +12,4 @@ nova.egg-info
.venv .venv
*.sqlite *.sqlite
*.log *.log
po/*.pot po/*.pot

2
babel.cfg Normal file
View File

@ -0,0 +1,2 @@
[python: **.py]

View File

@ -7,3 +7,26 @@ source-dir = doc/source
tag_build = tag_build =
tag_date = 0 tag_date = 0
tag_svn_revision = 0 tag_svn_revision = 0
[compile_catalog]
directory = locale
domain = nova
[update_catalog]
domain = nova
output_dir = po
input_file = po/nova.pot
[extract_messages]
keywords = _ gettext ngettext
mapping_file = babel.cfg
output_file = po/nova.pot
[nosetests]
verbosity=2
detailed-errors=1
with-openstack=1
openstack-red=0.05
openstack-yellow=0.025
openstack-show-elapsed=1
openstack-color=1

View File

@ -16,26 +16,12 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
import gettext
import glob import glob
import os import os
from setuptools import find_packages from setuptools import find_packages
# In order to run the i18n commands for compiling and from setuptools import setup
# installing message catalogs, we use DistUtilsExtra.
# Don't make this a hard requirement, but warn that
# i18n commands won't be available if DistUtilsExtra is
# not installed...
try:
from DistUtilsExtra.auto import setup
except ImportError:
from setuptools import setup
print "Warning: DistUtilsExtra required to use i18n builders. "
print "To build nova with support for message catalogs, you need "
print " https://launchpad.net/python-distutils-extra >= 2.18"
gettext.install('nova', unicode=1)
from nova import version from nova import version

View File

@ -32,3 +32,4 @@ nosexcover
paramiko paramiko
feedparser feedparser
pycrypto pycrypto
Babel>=0.9.6