devstack/lib/oslo
Sean Dague 62b56601a9 rework etcd3 install to be like other devstack services
This separates out the install phase early from the start phase to
make this mirror other services in devstack.

Depends-On: I4124dc7e3fd3b4d973979da85209ec991c0f8c4b

Change-Id: I76f8740448b25a48869ee80006e826baa6cafc2b
2017-06-20 10:24:01 +00:00

129 lines
3.8 KiB
Bash

#!/bin/bash
#
# lib/oslo
#
# Functions to install **Oslo** libraries from git
#
# We need this to handle the fact that projects would like to use
# pre-released versions of oslo libraries.
# Dependencies:
#
# - ``functions`` file
# ``stack.sh`` calls the entry points in this order:
#
# - install_oslo
# Save trace setting
_XTRACE_LIB_OSLO=$(set +o | grep xtrace)
set +o xtrace
# Defaults
# --------
GITDIR["automaton"]=$DEST/automaton
GITDIR["castellan"]=$DEST/castellan
GITDIR["cliff"]=$DEST/cliff
GITDIR["cursive"]=$DEST/cursive
GITDIR["debtcollector"]=$DEST/debtcollector
GITDIR["futurist"]=$DEST/futurist
GITDIR["os-client-config"]=$DEST/os-client-config
GITDIR["osc-lib"]=$DEST/osc-lib
GITDIR["oslo.cache"]=$DEST/oslo.cache
GITDIR["oslo.concurrency"]=$DEST/oslo.concurrency
GITDIR["oslo.config"]=$DEST/oslo.config
GITDIR["oslo.context"]=$DEST/oslo.context
GITDIR["oslo.db"]=$DEST/oslo.db
GITDIR["oslo.i18n"]=$DEST/oslo.i18n
GITDIR["oslo.log"]=$DEST/oslo.log
GITDIR["oslo.messaging"]=$DEST/oslo.messaging
GITDIR["oslo.middleware"]=$DEST/oslo.middleware
GITDIR["oslo.policy"]=$DEST/oslo.policy
GITDIR["oslo.privsep"]=$DEST/oslo.privsep
GITDIR["oslo.reports"]=$DEST/oslo.reports
GITDIR["oslo.rootwrap"]=$DEST/oslo.rootwrap
GITDIR["oslo.serialization"]=$DEST/oslo.serialization
GITDIR["oslo.service"]=$DEST/oslo.service
GITDIR["oslo.utils"]=$DEST/oslo.utils
GITDIR["oslo.versionedobjects"]=$DEST/oslo.versionedobjects
GITDIR["oslo.vmware"]=$DEST/oslo.vmware
GITDIR["osprofiler"]=$DEST/osprofiler
GITDIR["pycadf"]=$DEST/pycadf
GITDIR["python-openstacksdk"]=$DEST/python-openstacksdk
GITDIR["stevedore"]=$DEST/stevedore
GITDIR["taskflow"]=$DEST/taskflow
GITDIR["tooz"]=$DEST/tooz
# TODO(mriedem): This is a common pattern so even though os-traits isn't
# officially an oslo library, it is nice to re-use this script for non-oslo
# things like os-traits. We should rename this script to be more generic
# and then fold os-brick into it also.
GITDIR["os-traits"]=$DEST/os-traits
# Support entry points installation of console scripts
OSLO_BIN_DIR=$(get_python_exec_prefix)
# Functions
# ---------
function _do_install_oslo_lib {
local name=$1
if use_library_from_git "$name"; then
git_clone_by_name "$name"
setup_dev_lib "$name"
fi
}
# install_oslo() - Collect source and prepare
function install_oslo {
_do_install_oslo_lib "automaton"
_do_install_oslo_lib "castellan"
_do_install_oslo_lib "cliff"
_do_install_oslo_lib "cursive"
_do_install_oslo_lib "debtcollector"
_do_install_oslo_lib "futurist"
_do_install_oslo_lib "osc-lib"
_do_install_oslo_lib "os-client-config"
_do_install_oslo_lib "oslo.cache"
_do_install_oslo_lib "oslo.concurrency"
_do_install_oslo_lib "oslo.config"
_do_install_oslo_lib "oslo.context"
_do_install_oslo_lib "oslo.db"
_do_install_oslo_lib "oslo.i18n"
_do_install_oslo_lib "oslo.log"
_do_install_oslo_lib "oslo.messaging"
_do_install_oslo_lib "oslo.middleware"
_do_install_oslo_lib "oslo.policy"
_do_install_oslo_lib "oslo.privsep"
_do_install_oslo_lib "oslo.reports"
_do_install_oslo_lib "oslo.rootwrap"
_do_install_oslo_lib "oslo.serialization"
_do_install_oslo_lib "oslo.service"
_do_install_oslo_lib "oslo.utils"
_do_install_oslo_lib "oslo.versionedobjects"
_do_install_oslo_lib "oslo.vmware"
_do_install_oslo_lib "osprofiler"
_do_install_oslo_lib "pycadf"
_do_install_oslo_lib "python-openstacksdk"
_do_install_oslo_lib "stevedore"
_do_install_oslo_lib "taskflow"
_do_install_oslo_lib "tooz"
# installation of additional libraries
#
# os-traits for nova
_do_install_oslo_lib "os-traits"
# etcd (because tooz does not have a hard dependency on these)
pip_install etcd3
pip_install etcd3gw
}
# Restore xtrace
$_XTRACE_LIB_OSLO
# Tell emacs to use shell-script-mode
## Local variables:
## mode: shell-script
## End: