Как бы я начал интегрировать Pyflakes с Hudson? - PullRequest
8 голосов
/ 13 марта 2010

Мы используем Hudson для непрерывной интеграции с плагином Violations, который анализирует наш вывод из pylint. Тем не менее, Pylint слишком строг, и его сложно настроить. То, что мы предпочли бы использовать, это pyflakes, которые дали бы нам правильный уровень «Вы делаете это неправильно».

Ответы [ 3 ]

4 голосов
/ 25 марта 2011

Вы можете адаптировать вывод pyflakes и pep8 для работы с плагином 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

Вы можете использовать регулярное выражение или объединить выходные данные для создания отчета, который включает несколько метрик.

Подробнее см. http://hustoknow.blogspot.com/2011/01/integration-pyflakes-into-hudson.html

1 голос
/ 13 марта 2010

Для плагина Violations требуется вывод в формате XML из различных поддерживаемых им шашек.

Я не знаком с pyflakes, но из моего краткого сканирования он не поддерживает xml как тип вывода. Поэтому вам придется постобработать вывод pyflakes, прежде чем Violations попытается его проанализировать (или вы можете изменить pyflakes и написать свой собственный класс вывода Message). Возможно, вы захотите захватить вывод pylint и использовать его, чтобы выяснить подходящий формат xml, который нравится плагину Violations.

0 голосов
/ 21 декабря 2015

Для плагина Violations требуется вывод в формате xml из различных контроллеров

Это неправильно: некоторые контролеры, такие как "checkstyle", выводят XML, другие - как "pylint" и "pep8" - выводят "текстовые" файлы с одной записью на строку. Заголовок в Jenkins «Шаблон имени файла XML» вводит в заблуждение.

...