mirror of
https://github.com/kennethreitz/heroku-buildpack-python.git
synced 2026-06-05 23:10:16 +00:00
Faster pipenv (#385)
* skip pip install for pipenv * better * improvements * indent * chmod +x * export * skip uninstall too * pip freeze * Revert "skip uninstall too" This reverts commit faac96f62004f78c3d27a92cd865954fc7a3a53d. * better comments * redirect stderr to stdout
This commit is contained in:
+17
-14
@@ -1,20 +1,23 @@
|
||||
# Install dependencies with Pip.
|
||||
puts-step "Installing requirements with pip"
|
||||
if [ ! "$SKIP_PIP_INSTALL" ]; then
|
||||
|
||||
set +e
|
||||
/app/.heroku/python/bin/pip install -r $BUILD_DIR/requirements.txt --exists-action=w --src=/app/.heroku/src --disable-pip-version-check --no-cache-dir 2>&1 | tee $WARNINGS_LOG | cleanup | indent
|
||||
PIP_STATUS="${PIPESTATUS[0]}"
|
||||
set -e
|
||||
# Install dependencies with Pip.
|
||||
puts-step "Installing requirements with pip"
|
||||
|
||||
show-warnings
|
||||
set +e
|
||||
/app/.heroku/python/bin/pip install -r $BUILD_DIR/requirements.txt --exists-action=w --src=/app/.heroku/src --disable-pip-version-check --no-cache-dir 2>&1 | tee $WARNINGS_LOG | cleanup | indent
|
||||
PIP_STATUS="${PIPESTATUS[0]}"
|
||||
set -e
|
||||
|
||||
if [[ ! $PIP_STATUS -eq 0 ]]; then
|
||||
exit 1
|
||||
fi
|
||||
show-warnings
|
||||
|
||||
if [[ ! $PIP_STATUS -eq 0 ]]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
# Smart Requirements handling
|
||||
cp requirements.txt .heroku/python/requirements-declared.txt
|
||||
/app/.heroku/python/bin/pip freeze --disable-pip-version-check > .heroku/python/requirements-installed.txt
|
||||
# Smart Requirements handling
|
||||
cp requirements.txt .heroku/python/requirements-declared.txt
|
||||
/app/.heroku/python/bin/pip freeze --disable-pip-version-check > .heroku/python/requirements-installed.txt
|
||||
|
||||
echo
|
||||
echo
|
||||
fi
|
||||
+11
-2
@@ -1,10 +1,19 @@
|
||||
# Pipenv support (Generate requriements.txt with pipenv).
|
||||
if [[ -f Pipfile ]]; then
|
||||
if [[ ! -f requirements.txt ]]; then
|
||||
puts-step "Generating 'requirements.txt' with pipenv"
|
||||
puts-step "Installing requirements with latest pipenv..."
|
||||
|
||||
# Install pipenv.
|
||||
/app/.heroku/python/bin/pip install pipenv --upgrade &> /dev/null
|
||||
|
||||
/app/.heroku/python/bin/pipenv lock --requirements --no-hashes > $BUILD_DIR/requirements.txt 2> /dev/null
|
||||
# Install the dependencies.
|
||||
/app/.heroku/python/bin/pipenv install --system 2>&1 | indent
|
||||
|
||||
# Skip pip install, later.
|
||||
export SKIP_PIP_INSTALL=1
|
||||
|
||||
# Pip freeze, for compatibility.
|
||||
/app/.heroku/python/bin/pip freeze > requirements.txt
|
||||
|
||||
fi
|
||||
fi
|
||||
Regular → Executable
Reference in New Issue
Block a user