From 4af91b450d6349439818a0166cc48f50f41ad2db Mon Sep 17 00:00:00 2001 From: Yi Wang Date: Mon, 25 Feb 2019 19:14:27 +0800 Subject: [PATCH] updates to stx-nfv devstack plugin * bring up host-agent service * install header files and libraries for services in guest-agent Story: 2003163 Task: 29238 Depends-On: https://review.openstack.org/638283 Change-Id: Ied3fef32a7a7f23e4104543c094b46adc72562d0 Signed-off-by: Yi Wang --- devstack/lib/stx-nfv | 72 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/devstack/lib/stx-nfv b/devstack/lib/stx-nfv index a21a0e29..a6f3dfad 100644 --- a/devstack/lib/stx-nfv +++ b/devstack/lib/stx-nfv @@ -30,6 +30,16 @@ MTCE_GUEST_DIR=$STXNFV_DIR/mtce-guest MTCE_GUEST_CONF=$STXNFV_SYSCONFDIR/mtc MTCE_GUEST_OCF_DIR=$STXNFV_OCF_ROOT/resource.d/platform +# guest-agent +GUEST_AGENT_DIR=$STXNFV_DIR/guest-agent +GUEST_SCALE_AGENT_VER="2.0" +GUEST_SCALE_AGENT_DIR=$GUEST_AGENT_DIR/guest-scale-agent-$GUEST_SCALE_AGENT_VER + +# guest-comm +GUEST_COMM_DIR=$STXNFV_DIR/guest-comm +HOST_AGENT_COMM_VER="2.0" +HOST_AGENT_COMM_DIR=$GUEST_COMM_DIR/host-guest-comm-$HOST_AGENT_COMM_VER + # guest-client GUEST_CLIENT_VERSION="3.0.1" @@ -69,6 +79,18 @@ function cleanup_guest_server { sudo rm -rf $STXNFV_SYSCONFDIR/logrotate.d/guestServer.logrotate } +function cleanup_host_agent { + sudo rm -rf $STXNFV_SYSCONFDIR/init.d/host_agent + sudo rm -rf $STXNFV_SYSCONFDIR/pmon.d/host_agent.conf + rm -rf $STX_INST_DIR/sbin/host_agent + rm -rf $STX_INST_DIR/include/cgcs/guest_host_msg.h + rm -rf $STX_INST_DIR/include/cgcs/host_guest_msg.h + + rm -rf $STX_INST_DIR/lib64/libguesthostmsg.so + rm -rf $STX_INST_DIR/lib64/libhostguestmsg.so + rm -rf $STX_INST_DIR/lib64/libservergroup.so +} + function cleanup_nfv { if is_service_enabled nfv-vim || is_service_enabled nfv-vim-api || is_service_enabled nfv-vim-webserver; then sudo rm -rf $NFV_CONF_DIR @@ -111,6 +133,9 @@ function cleanup_nfv { if is_service_enabled guest-server; then cleanup_guest_server fi + if is_service_enabled host-agent; then + cleanup_host_agent + fi } function cleanup_nfv_client { @@ -147,6 +172,12 @@ function configure_guest_server { iniset -sudo $STXNFV_SYSCONFDIR/systemd/system/devstack@guest-server.service "Service" "PIDFile" "/var/run/guestServer.pid" } +function configure_host_agent { + sudo sed -i "s%DAEMON=/usr/sbin/host_agent%DAEMON=$STX_INST_DIR/sbin/host_agent%" $STXNFV_SYSCONFDIR/init.d/host_agent + iniset -sudo $STXNFV_SYSCONFDIR/systemd/system/devstack@host-agent.service "Service" "Type" "forking" + iniset -sudo $STXNFV_SYSCONFDIR/systemd/system/devstack@host-agent.service "Service" "PIDFile" "/var/run/host_agent.pid" +} + function configure_mtce_guest_common { # the content related to "controller" in /etc/hosts is generated by stx-metal # devstack plugin. for the time being, there are no entries about oamcontroller, @@ -197,6 +228,9 @@ function configure_nfv { if is_service_enabled guest-server; then configure_guest_server fi + if is_service_enabled host-agent; then + configure_host_agent + fi } function configure_nfv_common { @@ -306,6 +340,26 @@ function install_guest_client { popd } +function install_host_agent { + pushd $HOST_AGENT_COMM_DIR + + make host_clean # to remove sdk folder + make all + + sudo install -m 755 -p -D scripts/host_agent $STXNFV_SYSCONFDIR/init.d/host_agent + sudo install -m 640 -p -D scripts/host_agent.conf $STXNFV_SYSCONFDIR/pmon.d/host_agent.conf + install -m 755 -p -D bin/host_agent $STX_INST_DIR/sbin/host_agent + install -m 755 -d $STX_INST_DIR/include/cgcs + install -m 644 -p -D guest_host_msg.h $STX_INST_DIR/include/cgcs/guest_host_msg.h + install -m 644 -p -D host_guest_msg.h $STX_INST_DIR/include/cgcs/host_guest_msg.h + + install -m 755 -p -D lib/libguesthostmsg.so $STX_INST_DIR/lib64/libguesthostmsg.so + install -m 755 -p -D lib/libhostguestmsg.so $STX_INST_DIR/lib64/libhostguestmsg.so + install -m 755 -p -D lib/libservergroup.so $STX_INST_DIR/lib64/libservergroup.so + + popd +} + function install_guest_server { pushd $MTCE_GUEST_DIR/src @@ -352,6 +406,9 @@ function install_nfv { if is_service_enabled guest-server; then install_guest_server fi + if is_service_enabled host-agent; then + install_host_agent + fi } function install_nfv_client { @@ -429,6 +486,10 @@ function start_guest_agent { run_process guest-agent "$STXNFV_SYSCONFDIR/init.d/guestAgent start" root root } +function start_host_agent { + run_process host-agent "$STXNFV_SYSCONFDIR/init.d/host_agent start" root root +} + function start_guest_server { run_process guest-server "$STXNFV_SYSCONFDIR/init.d/guestServer start" root root } @@ -454,6 +515,9 @@ function start_nfv { if is_service_enabled guest-server; then start_guest_server fi + if is_service_enabled host-agent; then + start_host_agent + fi } function start_nfv_vim { @@ -482,6 +546,10 @@ function stop_guest_server { stop_process guest-server } +function stop_host_agent { + stop_process host-agent +} + function stop_nfv { if is_service_enabled nfv-vim; then stop_nfv_vim @@ -503,6 +571,10 @@ function stop_nfv { if is_service_enabled guest-server; then stop_guest_server fi + + if is_service_enabled host-agent; then + stop_host_agent + fi } function stop_nfv_vim {