Как бы я начал интегрировать pyflakes с Hudson

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


person dd.    schedule 13.03.2010    source источник


Ответы (3)


Вы можете адаптировать вывод 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

person Marc    schedule 24.03.2011
comment
Я бы тоже этого ожидал - person Marc; 22.05.2015

Плагин Violations требует вывода xml от различных средств проверки, которые он поддерживает.

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

person Dave Bacher    schedule 13.03.2010

Плагин Violations требует вывода xml от различных средств проверки.

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

person pmhahn    schedule 21.12.2015