aee18c749b
Check that function calls look like ^function foo {$ in bash8, and fix all existing failures of that check. Add a note to HACKING.rst Change-Id: Ic19eecb39e0b20273d1bcd551a42fe400d54e938
59 lines
1.3 KiB
Plaintext
59 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
|
|
|
|
# Tell emacs to use shell-script-mode
|
|
## Local variables:
|
|
## mode: shell-script
|
|
## End:
|