metal/devstack/settings
Dean Troyer f1c8043abf Set a fixed install dir and simplify the install process
* Install build artifacts to a fixed dir rather than attempting
  to infer a location based on the Python binary location.  That
  was intended to work seamlessly in venvs, we'll burn that bridge
  when we come to it, for now just put it all in
  $DEST/usr/{include|lib}.  This also removed the need for
  root access for these files to allow the build steps to be performed
  on laptops that may not otherwise run DevStack.

* Install systemd unit files directly to /etc/systemd/system
  and skip the requirement to copy them a second time

* Add the declarations to settings for the devstack playbook to
  handle plugin precedence order properly.

Change-Id: I5d68465384e000c05eb650a8358b70f7a7a6c293
Signed-off-by: Dean Troyer <dtroyer@gmail.com>
2019-02-28 22:34:47 -06:00

72 lines
1.9 KiB
Bash

#!/bin/bash
# Devstack settings
# This plugin is to enable StarlingX stx-metal services and follows the
# devstack plugin contract:
# https://docs.openstack.org/devstack/latest/plugins.html#plugin-sh-contract
#
# Services can be seperatly enabled by node personality or components
# unless they are coupled in functionality(e.g. mtcAgent/mtcClient).
# Other flocks services sysinv/fm/sm/nfv required to bring up full
# functionality maintenance services.
#
# Current configuration supports All-in-One simplex mode.
#
# Servcies
# stx-metal - Overall enable for this plugin
#
# mtce
# mtce-control
# mtce-compute
# mtce-storage
#
# mtce-components (include all of the below)
# fsmon
# hbs
# hwmon
# mtcalarm
# mtclog
# pmon
# rmon
STX_METAL_NAME=stx-metal
######### Plugin Specific ##########
# Enable service for node type
enable_service $STX_METAL_NAME
# This must not use any variables to work properly in OpenStack's DevStack playbook
define_plugin stx-metal
# This works for Zuul jobs using OpenStack's DevStack roles
plugin_requires stx-metal stx-fault
if is_service_enabled mtce-components; then
enable_service fsmon hbs hwmon mtce mtcalarm mtclog pmon rmon
fi
# Be careful to enable hostw, it will restart your host
# if some config is not correct
#enable_service hostw
if is_service_enabled mtce-compute; then
# stx-update
enable_service tsconfig
fi
# run_process checks whether the service name is enabled or not
if is_service_enabled hbs; then
# enable hbsAgent/hbsClient service as part of hbs service
enable_service hbsAgent
enable_service hbsClient
fi
if is_service_enabled mtce; then
# enable mtcAgent/mtcClient service as part of mtce service
enable_service mtcAgent
enable_service mtcClient
fi
if is_service_enabled hwmon && is_plugin_enabled stx-config; then
enable_service sysinv
fi
# Initial source of lib script
source $DEST/stx-metal/devstack/lib/stx-metal