
"sudo service apache2 restart" sometimes fails because apache is trying to grab a resource that another process is still holding onto. Stopping apache first and starting it afterwards seems to avoid that race. Change-Id: I55bfa125246fbf960b100682a3f4698f8c1d7e09
60 lines
1.9 KiB
Bash
Executable File
60 lines
1.9 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -o errexit -o nounset
|
|
TOP_DIR=$(cd "$(dirname "$0")/.." && pwd)
|
|
source "$TOP_DIR/config/paths"
|
|
source "$LIB_DIR/functions.guest"
|
|
exec_logfile
|
|
|
|
indicate_current_auto
|
|
|
|
#------------------------------------------------------------------------------
|
|
# Set up OpenStack Dashboard (horizon)
|
|
# http://docs.openstack.org/juno/install-guide/install/apt/content/install_dashboard.html
|
|
#------------------------------------------------------------------------------
|
|
|
|
echo "Installing horizon."
|
|
sudo apt-get install -y openstack-dashboard apache2 libapache2-mod-wsgi \
|
|
memcached python-memcache
|
|
|
|
echo "Purging Ubuntu theme."
|
|
sudo dpkg --purge openstack-dashboard-ubuntu-theme
|
|
|
|
function check_dashboard_settings {
|
|
local dashboard_conf=/etc/openstack-dashboard/local_settings.py
|
|
|
|
local auth_host=controller-mgmt
|
|
echo "Setting OPENSTACK_HOST = \"$auth_host\"."
|
|
sudo sed -i "s#^\(OPENSTACK_HOST =\).*#\1 \"$auth_host\";#" $dashboard_conf
|
|
|
|
echo -n "Allowed hosts: "
|
|
grep "^ALLOWED_HOSTS" $dashboard_conf
|
|
|
|
local memcached_conf=/etc/memcached.conf
|
|
# Port is a number on line starting with "-p "
|
|
local port=$(grep -Po -- '(?<=^-p )\d+' $memcached_conf)
|
|
|
|
# Interface is an IP address on line starting with "-l "
|
|
local interface=$(grep -Po -- '(?<=^-l )[\d\.]+' $memcached_conf)
|
|
|
|
echo "memcached listening on $interface:$port."
|
|
|
|
# Line should read something like: 'LOCATION' : '127.0.0.1:11211',
|
|
if grep "LOCATION.*$interface:$port" $dashboard_conf; then
|
|
echo "$dashboard_conf agrees."
|
|
else
|
|
echo >&2 "$dashboard_conf disagrees. Aborting."
|
|
exit 1
|
|
fi
|
|
|
|
echo -n "Time zone setting: "
|
|
grep TIME_ZONE $dashboard_conf
|
|
}
|
|
|
|
echo "Checking dashboard configuration."
|
|
check_dashboard_settings
|
|
|
|
echo "Reloading apache and memcached service."
|
|
sudo service apache2 stop
|
|
sudo service apache2 start
|
|
sudo service memcached restart
|