There is currently a hole in our testing that lets os-client-config, which sits at the bottom of the dependency chain for some key pieces like neutronclient and python-openstackclient, introduce gate breakages. Step one in fixing this is allowing os-client-config to be optionally installed from source so that jobs can be put into its gate to exercise its master vs devstack installs. Additionally, osc-lib is a new and lovely library that's going to need the same things. We're putting both in install_oslo, even though they're not oslo libraries, because that'll make grenade work properly. Co-Authored-By: Monty Taylor <mordred@inaugust.com> Change-Id: I747480b6063a62e82ca2b030f274d3e87bf28b3b
		
			
				
	
	
		
			110 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			110 lines
		
	
	
		
			3.1 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["cliff"]=$DEST/cliff
 | 
						|
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["stevedore"]=$DEST/stevedore
 | 
						|
GITDIR["taskflow"]=$DEST/taskflow
 | 
						|
GITDIR["tooz"]=$DEST/tooz
 | 
						|
 | 
						|
# 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 "cliff"
 | 
						|
    _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 "stevedore"
 | 
						|
    _do_install_oslo_lib "taskflow"
 | 
						|
    _do_install_oslo_lib "tooz"
 | 
						|
}
 | 
						|
 | 
						|
# Restore xtrace
 | 
						|
$_XTRACE_LIB_OSLO
 | 
						|
 | 
						|
# Tell emacs to use shell-script-mode
 | 
						|
## Local variables:
 | 
						|
## mode: shell-script
 | 
						|
## End:
 |