67 lines
2.2 KiB
Bash
67 lines
2.2 KiB
Bash
#!/bin/bash
|
|
#
|
|
# lib/stx-update
|
|
# Functions to control the configuration and operation of stx-update
|
|
|
|
# Dependencies:
|
|
#
|
|
# - ``functions`` file
|
|
# - ``DEST``, ``DATA_DIR``, ``STACK_USER`` must be defined
|
|
# - ``SERVICE_{TENANT_NAME|PASSWORD}`` must be defined
|
|
# - ``SERVICE_HOST``
|
|
# - ``KEYSTONE_TOKEN_FORMAT`` must be defined
|
|
|
|
# ``stack.sh`` calls the entry points in this order:
|
|
#
|
|
# - install_tsconfig
|
|
# - install_XX
|
|
# - configure_XX
|
|
# - init_XX
|
|
# - start_XX
|
|
# - stop_XX
|
|
# - cleanup_XX
|
|
|
|
_XTRACE_STX_UPDATE=$(set +o | grep xtrace)
|
|
set -o xtrace
|
|
|
|
|
|
# Defaults
|
|
# --------
|
|
|
|
STXUPDATE_REPO=${STXUPDATE_REPO:-${GIT_BASE}/openstack/stx-update.git}
|
|
STXUPDATE_DIR=$DEST/stx-update
|
|
STXUPDATE_BRANCH=${STXUPDATE_BRANCH:-master}
|
|
TSCONFIG_DIR=$STXUPDATE_DIR/tsconfig/
|
|
STX_PATCH_DIR=$STXUPDATE_DIR/cgcs-patch/
|
|
STX_BIN_DIR=$(get_python_exec_prefix)
|
|
PYTHON_SITE_DIR=$(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")
|
|
|
|
function install_tsconfig {
|
|
# no setup.cfg in tsconfig, so we can not use pip install -e
|
|
# setup_dev_lib "tsconfig"
|
|
pushd $TSCONFIG_DIR/tsconfig
|
|
sudo python setup.py install --root=/ --install-lib=$PYTHON_SITE_DIR --prefix=/usr --install-data=/usr/share --single-version-externally-managed
|
|
popd
|
|
sudo install -d -m 755 $STX_BIN_DIR
|
|
sudo install -p -D -m 700 $TSCONFIG_DIR/scripts/tsconfig $STX_BIN_DIR/tsconfig
|
|
}
|
|
|
|
function install_patch {
|
|
pushd $STX_PATCH_DIR/cgcs-patch
|
|
sudo python setup.py install --root=/ --install-lib=$PYTHON_SITE_DIR --prefix=/usr --install-data=/usr/share --single-version-externally-managed
|
|
popd
|
|
local stx_patch_sbindir=/etc/sbin/
|
|
local stx_patch_sysconfdir=/etc/
|
|
sudo install -m 755 -d ${stx_patch_sbindir}
|
|
sudo install -m 755 -d ${stx_patch_sysconfdir}/bash_completion.d
|
|
sudo install -m 755 -d ${stx_patch_sysconfdir}/goenabled.d
|
|
sudo install -m 755 -d ${stx_patch_sysconfdir}/init.d
|
|
sudo install -m 755 -d ${stx_patch_sysconfdir}/logrotate.d
|
|
sudo install -m 755 -d ${stx_patch_sysconfdir}/patching
|
|
sudo install -m 755 -d ${stx_patch_sysconfdir}/patching/patch-scripts
|
|
sudo install -m 755 -d ${stx_patch_sysconfdir}/pmon.d
|
|
sudo install -m 500 $STX_PATCH_DIR/bin/sw-patch-agent ${stx_patch_sbindir}/sw-patch-agent
|
|
}
|
|
|
|
$_XTRACE_STX_UPDATE
|