devstack/lib/infra
Stephen Finucane 320c2bf42a Install setuptools 'core' extra
Under as-yet-unidentified conditions, we can end up with a version of
packaging that is too old for the version of latest version of
setuptools. This is a known issue and expected behavior and per [1]
$subject is the preferred resolution.

[1] https://github.com/pypa/setuptools/issues/4483#issuecomment-2237219597

Change-Id: I9232f3fae1598297e83c4ea37339896f7dcbd44f
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-12-03 17:15:36 +00:00

59 lines
1.4 KiB
Bash

#!/bin/bash
#
# 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:
#
# - install_infra
# Save trace setting
_XTRACE_INFRA=$(set +o | grep xtrace)
set +o xtrace
# Defaults
# --------
GITDIR["pbr"]=$DEST/pbr
# Entry Points
# ------------
# install_infra() - Collect source and prepare
function install_infra {
local PIP_VIRTUAL_ENV="$REQUIREMENTS_DIR/.venv"
[ ! -d $PIP_VIRTUAL_ENV ] && ${VIRTUALENV_CMD} $PIP_VIRTUAL_ENV
# We don't care about testing git pbr in the requirements venv.
PIP_VIRTUAL_ENV=$PIP_VIRTUAL_ENV pip_install -U pbr setuptools[core]
PIP_VIRTUAL_ENV=$PIP_VIRTUAL_ENV pip_install $REQUIREMENTS_DIR
# Unset the PIP_VIRTUAL_ENV so that PBR does not end up trapped
# down the VENV well
unset PIP_VIRTUAL_ENV
# Install pbr
if use_library_from_git "pbr"; then
git_clone_by_name "pbr"
setup_dev_lib "pbr"
else
# Always upgrade pbr to latest version as we may have pulled it
# in via system packages.
pip_install "-U" "pbr"
fi
}
# Restore xtrace
$_XTRACE_INFRA
# Tell emacs to use shell-script-mode
## Local variables:
## mode: shell-script
## End: