Compile Horizon message catalogs during stack.sh
Recently compiled message catalogs (mo files) were removed
in Horizon and django_openstack_auth repositories.
We need to compile message catalogs to make translations
available for Horizon users. It is useful for developers too.
Change-Id: I0831e8308205c116d8e3bb8b43be7f0dd6fa0c0a
diff --git a/lib/horizon b/lib/horizon
index 755be18..0213948 100644
--- a/lib/horizon
+++ b/lib/horizon
@@ -84,6 +84,14 @@
# configure_horizon() - Set config files, create data dirs, etc
function configure_horizon {
setup_develop $HORIZON_DIR
+
+ # Compile message catalogs.
+ # Horizon is installed as develop mode, so we can compile here.
+ # Message catalog compilation is handled by Django admin script,
+ # so compiling them after the installation avoids Django installation twice.
+ cd $HORIZON_DIR
+ ./run_tests.sh -N --compilemessages
+ cd -
}
# init_horizon() - Initialize databases, etc.
@@ -138,6 +146,13 @@
# install_django_openstack_auth() - Collect source and prepare
function install_django_openstack_auth {
git_clone $HORIZONAUTH_REPO $HORIZONAUTH_DIR $HORIZONAUTH_BRANCH
+
+ # Compile message catalogs before installation
+ _prepare_message_catalog_compilation
+ cd $HORIZONAUTH_DIR
+ python setup.py compile_catalog
+ cd -
+
setup_install $HORIZONAUTH_DIR
}
@@ -160,6 +175,13 @@
stop_apache_server
}
+# NOTE: It can be moved to common functions, but it is only used by compilation
+# of django_openstack_auth catalogs at the moment.
+function _prepare_message_catalog_compilation {
+ local babel_package=$(grep ^Babel $REQUIREMENTS_DIR/global-requirements.txt)
+ pip_install "$babel_package"
+}
+
# Restore xtrace
$XTRACE