Я использую библиотеку lintr в R, чтобы найти проблемы с linting в коде. Я поместил их в xml формат, подобный следующему:
<lintsuites>
<lintissue filename="/home/.../blah.R" line_number="36" column_number="1" type="style" message="Trailing blank lines are superfluous."/>
<lintissue filename="/home/.../blahblah.R" line_number="1" column_number="8" type="style" message="Only use double-quotes."/>
</lintsuites>
Теперь я хотел бы завершить сборку Azure devops при возникновении подобных проблем.
Я смог получить мои тесты в формате JUnit, например:
<testsuite name="MB Unit Tests" timestamp="2020-01-22 22:34:07" hostname="0000" tests="29" skipped="0" failures="0" errors="0" time="0.05">
<testcase time="0.01" classname="1_Unit_Tests" name="1_calculates_correctly"/>
<testcase time="0.01" classname="1_Unit_Tests" name="2_absorbed_correctly"/>
...
</testsuite>
И когда я делаю этот шаг в конвейере azure, моя сборка завершается неудачей, если какие-либо тесты в наборе тестов дают сбой:
- task: PublishTestResults@2
displayName: 'Publish Test Results'
inputs:
testResultsFiles: '**/*.xml'
searchFolder: '$(System.DefaultWorkingDirectory)/fe'
mergeTestResults: true
failTaskOnFailedTests: true
Мне бы хотелось что-то подобное для сбоя сборки, когда есть проблемы с линтингом. Я также хотел бы, чтобы пользователи увидели, какие проблемы возникают в выходных данных сборки. Спасибо