Настройте Jenkins PMD для повышения статуса со стабильного на сбойный

Я хочу настроить свой сервер Jenkins так, чтобы сборка помечалась как нестабильная, если обнаружены нарушения PMD, а затем, если нарушения не исправлены в последующей сборке, сборка должна быть помечена как неудачная.

Я пытался настроить пороги плагина PMD для этого, но он либо нестабилен, либо дал сбой - я не могу заставить его переходить из состояния в состояние. Я думал, что видел такое поведение от Jenkins/PMD в другом проекте, но, возможно, я ошибся, есть ли какая-то комбинация плагинов, которая могла бы позволить мне это сделать?

Ваше здоровье!


person tja    schedule 29.02.2012    source источник


Ответы (2)


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

Самое близкое к тому, что вы хотите, это то, что вы можете пометить сборку как неудачную или нестабильную, рассчитав разницу в количестве предупреждений между текущей и предыдущей сборкой (отметьте «Вычислить новые предупреждения (на основе эталонной сборки)» в конфигурации проекта) . Например. пометить как нестабильную, если нарушений на x больше, чем в предыдущей сборке. Однако вы хотите пометить его как неудавшийся, если есть 0 или более нарушений, но только в том случае, если в первую очередь есть нарушения - это, вероятно, приведет к нежелательному эффекту, вызывая сбой всех сборок, если есть даже одно нарушение.

Возможно, стоит запросить эту функцию у разработчика?

person Jon Cairns    schedule 02.03.2012
comment
Я попробую реализовать это сам, и если я ничего не получу, попрошу это у разработчика. - person tja; 05.03.2012

Мы можем сделать это, интегрировав инструменты сборки maven, ant, PMD.

После успешной интеграции, как только сборка завершена, мы можем сравнить количество нарушений, возвращенное PMD, с порогом, который мы передали в качестве аргумента для сборки ant. Если количество нарушений превышает пороговое значение, пометьте сборку как Failed.

Эти настройки можно интегрировать в Jenkins (непрерывная интеграция и развертывание).

person ASHOK MANGHAT    schedule 20.09.2016