Как изменить статус сборки, используя Jacoco с Jenkins Pipeline? - PullRequest
0 голосов
/ 30 июня 2018

Использование Jenkins Jacoco Plugin версии 3.0.1 со следующей конфигурацией создает действительный отчет о покрытии, но не может фактически изменить состояние сборки.

                jacoco( 
                    execPattern: '**/target/code-coverage/**.exec',
                    classPattern: '**/target/classes',
                    sourcePattern: '**/src',
                    inclusionPattern: 'com/company/**',
                    changeBuildStatus: true,
                    minimumInstructionCoverage: '70'
                )

Зарегистрированный вывод

[JaCoCo plugin] Overall coverage: class: 19, method: 9, line: 4, branch: 2, instruction: 3
[JaCoCo plugin] Health thresholds: JacocoHealthReportThresholds [minClass=0, maxClass=0, minMethod=0, maxMethod=0, minLine=0, maxLine=0, minBranch=0, maxBranch=0, minInstruction=0, maxInstruction=0, minComplexity=0, maxComplexity=0]
[JaCoCo plugin] Apply Min/Max thresholds result: SUCCESS

Строка «Применить минимальные / максимальные пороги» указывает, что флаг changeBuildStatus был зарегистрирован, но все пороговые значения отображаются как 0.

Действительно ли changeBuildStatus работает с конвейером, и если да, то каков правильный формат для установки порогов?

1 Ответ

0 голосов
/ 10 июля 2018

Для меня мне нужно было добавить соответствующее значение MaximumCoverage. Например,

jacoco(
    execPattern: '**/target/code-coverage/**.exec',
    classPattern: '**/target/classes',
    sourcePattern: '**/src',
    inclusionPattern: 'com/company/**',
    changeBuildStatus: true,
    minimumInstructionCoverage: '70',
    maximumInstructionCoverage: '80'
)

Надеюсь, это решит вашу проблему.

...