From 6b7b59f9ce75014d3d1b8a975a3ed84a9c68882d Mon Sep 17 00:00:00 2001 From: Masahito Muroi Date: Mon, 9 Jul 2018 17:01:27 +0900 Subject: [PATCH] Support blazar-dashboard installation in DevStack Change-Id: I3311ada0f4be3ace6833d1d472b52eba800b5e03 --- devstack/plugin.sh | 26 ++++++++++++++++++++++++++ devstack/settings | 3 +++ 2 files changed, 29 insertions(+) diff --git a/devstack/plugin.sh b/devstack/plugin.sh index 8b154885..58de554f 100644 --- a/devstack/plugin.sh +++ b/devstack/plugin.sh @@ -185,6 +185,27 @@ function install_blazar { } +# install_blazar_dashboard() - Install Blazar dashboard for Horizon +function install_blazar_dashboard { + git_clone $BLAZAR_DASHBOARD_REPO $BLAZAR_DASHBOARD_DIR $BLAZAR_DASHBOARD_BRANCH + setup_develop $BLAZAR_DASHBOARD_DIR + blazar_setup_horizon +} + + +# Set up Horizon integration with Blazar +function blazar_setup_horizon { + # Link Dashboard panel to Horizon's directory + ln -fs $BLAZAR_DASHBOARD_DIR/blazar_dashboard/enabled/_90_admin_reservation_panelgroup.py $HORIZON_DIR/openstack_dashboard/local/enabled/ + ln -fs $BLAZAR_DASHBOARD_DIR/blazar_dashboard/enabled/_90_project_reservations_panelgroup.py $HORIZON_DIR/openstack_dashboard/local/enabled/ + ln -fs $BLAZAR_DASHBOARD_DIR/blazar_dashboard/enabled/_91_admin_reservation_hosts_panel.py $HORIZON_DIR/openstack_dashboard/local/enabled/ + ln -fs $BLAZAR_DASHBOARD_DIR/blazar_dashboard/enabled/_91_project_reservations_leases_panel.py $HORIZON_DIR/openstack_dashboard/local/enabled/ + + # Restart Horizon + restart_apache_server +} + + # start_blazar() - Start running processes, including screen function start_blazar { if [ "$BLAZAR_USE_MOD_WSGI" == "True" ]; then @@ -220,6 +241,11 @@ if is_service_enabled blazar blazar-m blazar-a; then echo_summary "Installing Blazar" # Use stack_install_service here to account for virtualenv stack_install_service blazar + + if is_service_enabled horizon; then + install_blazar_dashboard + fi + elif [[ "$1" == "stack" && "$2" == "post-config" ]]; then echo_summary "Configuring Blazar" configure_blazar diff --git a/devstack/settings b/devstack/settings index 3e7ae34f..30ffcf53 100644 --- a/devstack/settings +++ b/devstack/settings @@ -17,6 +17,8 @@ BLAZARCLIENT_REPO=${BLAZARCLIENT_REPO:-${GIT_BASE}/openstack/python-blazarclient BLAZARCLIENT_BRANCH=${BLAZARCLIENT_BRANCH:-master} BLAZARNOVA_REPO=${BLAZARNOVA_REPO:-${GIT_BASE}/openstack/blazar-nova.git} BLAZARNOVA_BRANCH=${BLAZARNOVA_BRANCH:-master} +BLAZAR_DASHBOARD_REPO=${BLAZAR_DASHBOARD_REPO:-${GIT_BASE}/openstack/blazar-dashboard.git} +BLAZAR_DASHBOARD_BRANCH=${BLAZAR_DASHBOARD_BRANCH:-master} # Set up default directories BLAZAR_DIR=$DEST/blazar @@ -25,6 +27,7 @@ BLAZAR_CONF_FILE=$BLAZAR_CONF_DIR/blazar.conf BLAZARCLIENT_DIR=$DEST/python-blazarclient BLAZAR_AUTH_CACHE_DIR=${BLAZAR_AUTH_CACHE_DIR:-/var/cache/blazar} BLAZARNOVA_DIR=$DEST/blazar-nova +BLAZAR_DASHBOARD_DIR=$DEST/blazar-dashboard # wsgi deployment BLAZAR_USE_MOD_WSGI=${BLAZAR_USE_MOD_WSGI:-True}