2010-03-13 20 views
8

Usamos Hudson para la integración continua con el plugin Violations que analiza nuestra salida desde la pila. Sin embargo, pylint es demasiado estricto y difícil de configurar. Lo que preferimos usar es pyflakes que nos daría el nivel correcto de "Lo estás haciendo mal".Cómo comenzar a integrar pyflakes con Hudson

Respuesta

1

El complemento Violations requiere salida XML de las distintas comprobaciones que admite.

No estoy familiarizado con pyflakes, pero a partir de mi breve análisis, no parece ser compatible con xml como tipo de salida. Por lo tanto, deberá postprocesar la salida de pyflakes antes de permitir que Violations intente analizarla (o podría modificar pyflakes y escribir su propia clase de salida de mensajes). Probablemente desee capturar la salida de la lista y usarla para descubrir el formato xml apropiado que le gusta al plugin Violations.

4

Puede adaptar pyflakes y pep8 output para que funcionen con el plugin Violations pylint.

pyflakes path/to/src | awk -F\: '{printf "%s:%s: [E]%s\n", $1, $2, $3}' > violations.pyflakes.txt 

pep8 path/to/src | awk -F\: '{printf "%s:%s: [%s]%s\n", $1, $2, substr($4,2,4), substr($4,6)}' > violations.pep8.txt 

Puede usar una expresión regular o concatenar la salida para generar un informe que incluya varias métricas.

Para más detalles ver http://hustoknow.blogspot.com/2011/01/integration-pyflakes-into-hudson.html

+0

¿Esto también funciona con Jenkins? – razz0

+0

También lo esperaría – Marc

0

El plugin Violaciónes requiere salida xml de las diversas damas

Esto está mal: Algunas damas como "Checkstyle" XML de salida, algunos otros como "pylint" y "pep8" generan archivos de "texto" con un registro por línea. El encabezado en Jenkins "patrón de nombre de archivo XML" es completamente engañoso.