Merge "Provide an option to force pip --upgrade"

This commit is contained in:
Jenkins 2015-03-26 19:35:05 +00:00 committed by Gerrit Code Review
commit 2a5f1addf2
2 changed files with 24 additions and 3 deletions

View File

@ -247,6 +247,21 @@ A clean install every time
RECLONE=yes
Upgrade packages installed by pip
---------------------------------
| *Default: ``PIP_UPGRADE=""``*
| By default ``stack.sh`` only installs Python packages if no version
is currently installed or the current version does not match a specified
requirement. If ``PIP_UPGRADE`` is set to ``True`` then existing required
Python packages will be upgraded to the most recent version that
matches requirements.
|
::
PIP_UPGRADE=True
Swift
-----

View File

@ -54,17 +54,23 @@ function get_python_exec_prefix {
# Wrapper for ``pip install`` to set cache and proxy environment variables
# Uses globals ``INSTALL_TESTONLY_PACKAGES``, ``OFFLINE``, ``PIP_VIRTUAL_ENV``,
# ``TRACK_DEPENDS``, ``*_proxy``
# ``PIP_UPGRADE``, ``TRACK_DEPENDS``, ``*_proxy``
# pip_install package [package ...]
function pip_install {
local xtrace=$(set +o | grep xtrace)
set +o xtrace
local upgrade=""
local offline=${OFFLINE:-False}
if [[ "$offline" == "True" || -z "$@" ]]; then
$xtrace
return
fi
PIP_UPGRADE=$(trueorfalse False PIP_UPGRADE)
if [[ "$PIP_UPGRADE" = "True" ]] ; then
upgrade="--upgrade"
fi
if [[ -z "$os_PACKAGE" ]]; then
GetOSVersion
fi
@ -98,7 +104,7 @@ function pip_install {
https_proxy="${https_proxy:-}" \
no_proxy="${no_proxy:-}" \
PIP_FIND_LINKS=$PIP_FIND_LINKS \
$cmd_pip install \
$cmd_pip install $upgrade \
$@
# Also install test requirements
@ -110,7 +116,7 @@ function pip_install {
https_proxy=${https_proxy:-} \
no_proxy=${no_proxy:-} \
PIP_FIND_LINKS=$PIP_FIND_LINKS \
$cmd_pip install \
$cmd_pip install $upgrade \
-r $test_req
fi
}