Use apache2ctl after apache is installed.
Ensure that apache2ctl is only called if apache2 is being used when
setting up Keystone. This patch corrects a case where apache2ctl
is being called at the time lib/keystone is being sourced. This
error breaks attempts to deploy Keystone under apache unless
apache is already installed at the time stack.sh is run.
Change-Id: I02d426438fa1246effd68c6bb3c3358910ed4c05
diff --git a/lib/keystone b/lib/keystone
index c4266b9..6b8863e 100644
--- a/lib/keystone
+++ b/lib/keystone
@@ -87,10 +87,6 @@
KEYSTONE_SERVICE_PROTOCOL="https"
fi
-# Apache configuration file for keystone
-KEYSTONE_APACHE_CONF_FILE=$(apache_site_config_for keystone)
-
-
# Functions
# ---------
# cleanup_keystone() - Remove residual data files, anything left over from previous
@@ -106,18 +102,20 @@
function _cleanup_keystone_apache_wsgi {
sudo rm -f $KEYSTONE_WSGI_DIR/*.wsgi
disable_apache_site keystone
- sudo rm -f $KEYSTONE_APACHE_CONF_FILE
+ sudo rm -f $(apache_site_config_for keystone)
}
# _config_keystone_apache_wsgi() - Set WSGI config files of Keystone
function _config_keystone_apache_wsgi {
sudo mkdir -p $KEYSTONE_WSGI_DIR
+ local keystone_apache_conf=$(apache_site_config_for keystone)
+
# copy proxy vhost and wsgi file
sudo cp $KEYSTONE_DIR/httpd/keystone.py $KEYSTONE_WSGI_DIR/main
sudo cp $KEYSTONE_DIR/httpd/keystone.py $KEYSTONE_WSGI_DIR/admin
- sudo cp $FILES/apache-keystone.template $KEYSTONE_APACHE_CONF_FILE
+ sudo cp $FILES/apache-keystone.template $keystone_apache_conf
sudo sed -e "
s|%PUBLICPORT%|$KEYSTONE_SERVICE_PORT|g;
s|%ADMINPORT%|$KEYSTONE_AUTH_PORT|g;
@@ -125,7 +123,7 @@
s|%PUBLICWSGI%|$KEYSTONE_WSGI_DIR/main|g;
s|%ADMINWSGI%|$KEYSTONE_WSGI_DIR/admin|g;
s|%USER%|$STACK_USER|g
- " -i $KEYSTONE_APACHE_CONF_FILE
+ " -i $keystone_apache_conf
enable_apache_site keystone
}