Commit 3e480e9a authored by Kenneth Reitz's avatar Kenneth Reitz

purge old virtualenvs

parent 46ba98a4
......@@ -49,11 +49,9 @@ CACHED_DIRS=".heroku"
PIP_DOWNLOAD_CACHE=${PIP_DOWNLOAD_CACHE:-$CACHE_DIR/pip_downloads}
# Static configurations for virtualenv caches.
LEGACY_VIRTUALENV_LOC="."
MODERN_VIRTUALENV_LOC=".heroku/venv"
LEGACY_VIRTUALENV_DIRS="bin include lib"
LEGACY_VIRTUALENV_TRIGGER="lib/python2.7"
PROFILE_PATH="$1/.profile.d/python.sh"
PROFILE_PATH="$BUILD_DIR/.profile.d/python.sh"
# Python version. This will be used in the future to specify custom Pythons.
......@@ -66,6 +64,7 @@ unset GIT_DIR PYTHONHOME PYTHONPATH LD_LIBRARY_PATH LIBRARY_PATH
# We'll need to send these statics to other scripts we `source`.
export PIP_DOWNLOAD_CACHE BUILD_DIR CACHE_DIR BIN_DIR PROFILE_PATH
# Syntax sugar.
source $BIN_DIR/utils
# ## Build Time
......@@ -96,24 +95,8 @@ mkdir -p $CACHE_DIR
VIRTUALENV_LOC=$MODERN_VIRTUALENV_LOC
VIRTUALENV_DIRS=$MODERN_VIRTUALENV_LOC
# Support "old-style" virtualenvs.
if [ -d $CACHE_DIR/$LEGACY_VIRTUALENV_TRIGGER ]; then
LEGACY_VIRTUALENV=true
VIRTUALENV_LOC=$LEGACY_VIRTUALENV_LOC
VIRTUALENV_DIRS=$LEGACY_VIRTUALENV_DIRS
CACHED_DIRS=$LEGACY_VIRTUALENV_DIRS
# Warn for a checked-in virtualenv.
if [ -d "lib" ] || [ -d "bin" ]; then
puts-warn "You have a virtualenv checked in. You should ignore the appropriate paths in your repo. See http://devcenter.heroku.com/articles/gitignore for more info.";
fi
# Reject a conflicting checked-in virtualenv.
if [ -f "lib/python2.7" ]; then
puts-warn "Checked-in virtualenv conflict."
exit 1;
fi
fi
# Purge "old-style" virtualenvs.
[ -d $CACHE_DIR/$LEGACY_VIRTUALENV_TRIGGER ] && rm -fr $CACHE_DIR/*
# Restore old artifacts from the cache.
for dir in $CACHED_DIRS; do
......@@ -206,16 +189,15 @@ for dir in $CACHED_DIRS; do
done
# Set context environment variables.
if [ ! -n "$LEGACY_VIRTUALENV" ]; then
set-env PATH '$HOME/.heroku/venv/bin:$PATH'
set-default-env PYTHONUNBUFFERED true
set-default-env LIBRARY_PATH /app/.heroku/vendor/lib
set-default-env LD_LIBRARY_PATH /app/.heroku/vendor/lib
set-default-env LANG en_US.UTF-8
set-default-env PYTHONHASHSEED random
set-default-env PYTHONHOME /app/.heroku/venv/
set-default-env PYTHONPATH /app/
fi
set-env PATH '$HOME/.heroku/venv/bin:$PATH'
set-default-env PYTHONUNBUFFERED true
set-default-env LIBRARY_PATH /app/.heroku/vendor/lib
set-default-env LD_LIBRARY_PATH /app/.heroku/vendor/lib
set-default-env LANG en_US.UTF-8
set-default-env PYTHONHASHSEED random
set-default-env PYTHONHOME /app/.heroku/venv/
set-default-env PYTHONPATH /app/
# ### Fin.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment