devstack/lib/infra
Sean Dague 0392a10a63 add lib/infra
move the infrastructure projects to a dedicated lib/infra, which
gives us access to this during grenade upgrade tests.

Change-Id: I1e832792b61d41ad290b4b2ab26fe664e710cebd
2013-07-31 15:48:47 -04:00

57 lines
1.3 KiB
Plaintext

# lib/infra
#
# Functions to install infrastructure projects needed by other projects
# early in the cycle. We need this so we can do things like gate on
# requirements as a global list
# Dependencies:
# ``functions`` file
# ``stack.sh`` calls the entry points in this order:
#
# unfubar_setuptools
# install_infra
# Save trace setting
XTRACE=$(set +o | grep xtrace)
set +o xtrace
# Defaults
# --------
PBR_DIR=$DEST/pbr
REQUIREMENTS_DIR=$DEST/requirements
# Entry Points
# ------------
# unfubar_setuptools() - Unbreak the giant mess that is the current state of setuptools
function unfubar_setuptools() {
# this is a giant game of who's on first, but it does consistently work
# there is hope that upstream python packaging fixes this in the future
echo_summary "Unbreaking setuptools"
pip_install -U setuptools
pip_install -U pip
uninstall_package python-setuptools
pip_install -U setuptools
pip_install -U pip
}
# install_infra() - Collect source and prepare
function install_infra() {
# bring down global requirements
git_clone $REQUIREMENTS_REPO $REQUIREMENTS_DIR $REQUIREMENTS_BRANCH
# Install pbr
git_clone $PBR_REPO $PBR_DIR $PBR_BRANCH
setup_develop $PBR_DIR
}
# Restore xtrace
$XTRACE
# Local variables:
# mode: shell-script
# End: