From 3e480e9aeaca62b943c42e716856ae5e32d73794 Mon Sep 17 00:00:00 2001 From: Kenneth Reitz Date: Thu, 6 Dec 2012 17:34:04 -0500 Subject: [PATCH] purge old virtualenvs --- bin/compile | 44 +++++++++++++------------------------------- 1 file changed, 13 insertions(+), 31 deletions(-) diff --git a/bin/compile b/bin/compile index 0014ebc..5b71655 100755 --- a/bin/compile +++ b/bin/compile @@ -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.