Estoy empezando a trabajar en un proyecto de hobby con una base de código python y me gustaría configurar algún tipo de integración continua (es decir, ejecutar una batería de casos de prueba cada vez que se realiza un check-in y enviar mensajes maliciosos a personas responsables cuando fallan las pruebas) similar a CruiseControl o TeamCity.Sistema de integración continua para Python Codebase
Me doy cuenta de que podría hacer esto con ganchos en la mayoría de los VCS, pero eso requiere que las pruebas se ejecuten en la misma máquina que el servidor de control de versiones, que no es tan elegante como me gustaría. ¿Alguien tiene alguna sugerencia para un sistema de integración continua pequeño, fácil de usar y de código abierto adecuado para una base de código Python?
@ Joe, g buena recomendación. @Matt No dejes que el hecho de que Hudson esté escrito en Java te asuste si eres un tipo pitón. Es muy fácil de configurar y ejecutar. Se integra con pylint y coverage.py. Lo tengo funcionando en mis proyectos y me encanta. Es mucho más simple que BuildBot. Para configurarlo y ejecutar Hudson es un comando. java -jar hudson.war Aquí está la mejor publicación que he visto para configurarlo: http://www.rhonabwy.com/wp/2009/11/04/setting-up-a-python-ci -server-with-hudson/ –
¡Hudson está escrito en Java y es tan relevante como su editor que usa está escrito en C++! Es una herramienta de CI muy bien escrita, fácil de configurar y con todas las características. Python puede estar muy bien integrado, 'nosetests --with-xunit--with-coverage', pylint con los complementos de" Violations ", y" Cobertura "para cobertura – dbr
@dbr: No totalmente cierto. El lenguaje en el que algo está escrito a menudo influye en el software con el que funciona mejor ... especialmente en los sistemas de compilación. Cuando miré a Hudson ~ hace 2 años, quería salida de prueba unitaria solo en el formato XML de JUnit; mi suite de prueba de unidad Python no hizo eso.Pero si mi proyecto estuviera en Java, hubiera funcionado de la caja. En cualquier caso, parece que la integración ha recorrido un largo camino en las herramientas de Hudson y Python desde entonces, y estoy agradecido por eso. –