Get virtualenv's bin folder path from script

José Tomás Tocino picture José Tomás Tocino · Feb 25, 2014 · Viewed 46.7k times · Source

I'm using virtualenvwrapper with a django project that has a management task that automatically writes some config files, so the user just has to

./manage.py generate_configuration > much_nice.conf

And then move the file elsewhere. One of the generated config files is a task for supervisord that launches a celery worker. The problem I'm getting is that I don't know how to output the path of the celery executable that is within the bin folder of the virtualenv. Essentially, I'd like to have the output of the command

which celery

One option is using sys.executable, get the folder (which seems to be the bin folder of the virtualenv) and that's it... but I'm not sure.

Doesn't virtualenv have any kind of method to get the path itself?

Answer

Brad Culberson picture Brad Culberson · Feb 25, 2014

The path to the virtual env is in the environment variable VIRTUAL_ENV

echo $VIRTUAL_ENV