Como ya sabéis las distribuciones de linux empaquetan una serie de librerías y utilidades de python en una versión concreta. Cuando desarrollas algo sobre python, y necesitas alguna librería que no está disponible en paquete para tu distribución, normalmente tiras de huevos (que mal suena eso :D) y lo instalas vía pip/easy_install... Esto lleva a que si no tienes cuidado, esa nueva librería que instalas, puede tirar de dependencias y actualizar alguna de las librerías que ya tenías previamente instaladas vía sistema de paquetes, pudiendo provocar mal-funcionamientos en otras aplicaciones como efecto colateral.

Una solución a este problema es usar virtualenv, y acotar el entorno de aplicación.

La idea es desarrollar la app usando en la medida de lo posible las versiones empaquetadas de cada distribución, para en un momento dado, empaquetarlas directamente en paquete de la distribución.

El tema es desarrollar/probar sobre múltiples distribuciones y automatizar todos estos tests sin tener que irte a máquinas virtuales para cada distribución (incluido docker), sino algo más liviano... es decir, crear un virtualenv para cada distribución en la que quieras probar tu app, con todas esas librerias/utilidades que van preempaquetadas, tenerlas en la misma versión en tu virtualenv y poder acotar problemas, etc...

Después de todo este rollo, viene la pregunta ¿Sabéis si existe algún sitio donde se publiquen todos los paquetes python que instala cada distribución en un formato tipo al que genera pip freeze para poder regenerar el entorno?

Y ya puestos, si tenéis experiencia con algún entorno de tests, que pros y contras les veis...

Un cordial saludo.


_______________________________________________
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a