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
This commit is contained in:
parent
549f1a8fc3
commit
0392a10a63
56
lib/infra
Normal file
56
lib/infra
Normal file
@ -0,0 +1,56 @@
|
||||
# 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:
|
10
stack.sh
10
stack.sh
@ -299,6 +299,7 @@ SERVICE_TIMEOUT=${SERVICE_TIMEOUT:-60}
|
||||
|
||||
# Source project function libraries
|
||||
source $TOP_DIR/lib/tls
|
||||
source $TOP_DIR/lib/infra
|
||||
source $TOP_DIR/lib/oslo
|
||||
source $TOP_DIR/lib/horizon
|
||||
source $TOP_DIR/lib/keystone
|
||||
@ -314,8 +315,6 @@ source $TOP_DIR/lib/ldap
|
||||
|
||||
# Set the destination directories for other OpenStack projects
|
||||
OPENSTACKCLIENT_DIR=$DEST/python-openstackclient
|
||||
PBR_DIR=$DEST/pbr
|
||||
|
||||
|
||||
# Interactive Configuration
|
||||
# -------------------------
|
||||
@ -588,6 +587,8 @@ if is_service_enabled neutron; then
|
||||
install_neutron_agent_packages
|
||||
fi
|
||||
|
||||
# Unbreak the giant mess that is the current state of setuptools
|
||||
unfubar_setuptools
|
||||
|
||||
# System-specific preconfigure
|
||||
# ============================
|
||||
@ -658,9 +659,8 @@ fi
|
||||
|
||||
echo_summary "Installing OpenStack project source"
|
||||
|
||||
# Install pbr
|
||||
git_clone $PBR_REPO $PBR_DIR $PBR_BRANCH
|
||||
setup_develop $PBR_DIR
|
||||
# Install required infra support libraries
|
||||
install_infra
|
||||
|
||||
# Install oslo libraries that have graduated
|
||||
install_oslo
|
||||
|
4
stackrc
4
stackrc
@ -136,6 +136,10 @@ NEUTRON_BRANCH=${NEUTRON_BRANCH:-master}
|
||||
NEUTRONCLIENT_REPO=${NEUTRONCLIENT_REPO:-${GIT_BASE}/openstack/python-neutronclient.git}
|
||||
NEUTRONCLIENT_BRANCH=${NEUTRONCLIENT_BRANCH:-master}
|
||||
|
||||
# consolidated openstack requirements
|
||||
REQUIREMENTS_REPO=${REQUIREMENTS_REPO:-${GIT_BASE}/openstack/requirements.git}
|
||||
REQUIREMENTS_BRANCH=${REQUIREMENTS_BRANCH:-master}
|
||||
|
||||
# storage service
|
||||
SWIFT_REPO=${SWIFT_REPO:-${GIT_BASE}/openstack/swift.git}
|
||||
SWIFT_BRANCH=${SWIFT_BRANCH:-master}
|
||||
|
Loading…
Reference in New Issue
Block a user