Ingredientes:
- python 3 o 2
- virtualenv
- virtualenvwrapper
- IDE JetBrains PyCharm ( o el que te guste más, recomiendo pycharm. )
Para comenzar, se debe instalar la versión del interprete python, que se requiera para el proyecto o incluso podría instalar ambas ramas 2.x y 3.x.
Una vez tenga el interprete python instalado se puden instalar nuevas librerias con la herramienta pip (requiere ser instalado manualmente si utiliza OSX o Windows) o el package manager del sistema.(ports, pacman, MacPorts, apt, yum, etc.)
Para todos los ejemplos se usa pip, ya que es propio de python y no varia de sistema operativo.
¿Que es virtualenv?
virtualenv es una herramienta que permite crear entornos de desarrollo en python aislados, lo cual es de gran ayuda cuando se requiere trabajar con varios proyectos, debido a que evita el conflicto de librerías. También, mediante pip, permite exportar un lista de las librerías e importarlas en un nuevo entorno.
¿Que es virtualenvwrapper?
virtualenvwrapper no es más que un envoltorio con funciones en shell, para ayudar a trabajar con virtualenv de forma más rápida, cómoda y eficiente. (para Windows existe virtualenvwrapper-win)
pip install virtualenv pip install virtualenvwrapper
Una vez instalado se debe configurar el .bashrc o profile de la Shell que este utilizando, soporta: bash, zsh y ksh
Edite el profile de su shell preferida y agregue la siguientes variables de entorno:
export WORKON_HOME=$HOME/.virtualenvs source /usr/bin/virtualenvwrapper.sh
Guarde los cambios y recargue su profile, ejemplo:
soruce .bashrc mkdir $WORKON_HOME
A partir de aquí viene la parte emocionante y que más nos interesa, al tener cargado en nuestro $SHELL las funciones de viertualenvwrapper.sh, ya se puede comenzar a trabajar con el virtualenv e instalar paquetes con pip u otro PKGMGR de elección particular, todo dentro del entorno virtual.
Funciones básicas más importantes:
workon mkvirtualenv rmvirtualenv lsvirtualenv
Comenzar a trabajar con el wrapper, se utiliza la instrucción workon permite ver los virtualenv creados y seleccionar un virtualenv para trabajar, el siguiente ejemplo muestra como crear un virtualenv:
workon mkvirtualenv -p /usr/bin/python3 [test_env]
Ya está creado el nuevo virtualenv test_env, el cual puede ser integrado dentro del PyCharm IDE para trabajar e instalar paquetes como django.
Al no poner --no-pip contamos con pip dentro del virtualenv, con lo que se puede importar todos los paquetes de un requirements.txt anteriormente exportado con pip o en un futuro exportarlos para que nuestros colegas de profesión creen su propio entorno virtual.
Al no poner --no-pip contamos con pip dentro del virtualenv, con lo que se puede importar todos los paquetes de un requirements.txt anteriormente exportado con pip o en un futuro exportarlos para que nuestros colegas de profesión creen su propio entorno virtual.
Exportar paquetes requeridos (recomiendo hacer esto y ponerlo en el CSM[git|svn|mercurial|etc.] del proyecto)
pip freeze requirements.txt
Instalar los paquetes del requirements.txt
pip install -r requirements.txt
Con esto estaría relativamente cubierto todo lo referente a preparar un entorno de desarrollo lejos del caos!
Suerte.
Suerte.