metal/devstack/settings
Dean Troyer c84ce08dc7 Followup opendev cleanup and test jobs
Depends-On: https://review.opendev.org/653964
Depends-On: https://review.opendev.org/653961
Depends-On: https://review.opendev.org/654013
Depends-On: https://review.opendev.org/654024
Change-Id: Id3f05219865a595a2a9f36e83a4ad6bbfd0e16fc
Signed-off-by: Dean Troyer <dtroyer@gmail.com>
2019-04-22 16:42:03 +00:00

90 lines
2.3 KiB
Bash

#!/bin/bash
#
# SPDX-License-Identifier: Apache-2.0
#
# Copyright (C) 2019 Intel Corporation
#
# Devstack settings
# This plugin is to enable StarlingX 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
# 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
STX_METAL_NAME=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 metal
# This works for Zuul jobs using OpenStack's DevStack roles
plugin_requires metal barbican
plugin_requires metal fault
if ! is_service_enabled barbican; then
die $LINENO "Barbican is required"
fi
if is_service_enabled mtce-components; then
enable_service fsmon hbs hwmon mtce mtcalarm mtclog pmon
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
# 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 config; then
enable_service sysinv
fi
if is_service_enabled mtcAgent; then
if [ $(hostname) != "controller-0" ] && [ $(hostname) != "controller-1" ]; then
# mtcAgent requires that hostname must be "controller-0" or "controller-1"
echo_summary "hostname doesn't meet requirements, so disable mtcAgent"
disable_service mtcAgent
fi
fi
# Initial source of lib script
source $DEST/metal/devstack/lib/metal