如何使基于 phpcs 输出的 Scrutinizer 构建失败?
How to fail a build on Scrutinizer based on phpcs output?
我已经尝试将 Scrutinizer 配置为每当 CodeSniffer 分析 returns 一些错误但运气不好时失败。
这是我到目前为止尝试过的方法:
V1:
build:
tests:
override:
command: './vendor/bin/phpcs ./src --report=checkstyle --report-file=cs-data'
analysis:
file: 'cs-data'
format: 'php-cs-checkstyle'
V2:
build:
tests:
override:
- 'phpcs-run'
我的工具和build_failure_conditions
:
tools:
php_code_sniffer:
config:
standard: "PSR2"
checks:
php:
code_rating: true
duplication: true
build_failure_conditions:
- 'issues.label("coding-style").new.exists'
缺少什么?
TLDR;您似乎没有指定要扫描哪些文件夹的错误。
尝试使用以下方法:
build:
tests:
override:
- 'phpcs-run --standard=custom/standard/ruleset.xml --ignore=app/*/*/Test/ app/dir1/ app/dir2/ app/other/folder'
一些需要我澄清的事情:
- scrutinizer 目前不支持 phpcs 命令失败(类似于 phpunit),因为这会阻止问题显示在 UI.
- 解决方法是设置一个失败条件(您已经这样做了),例如是否存在编码风格问题,那么构建就会失败。
我目前正在使用:
build_failure_conditions:
- 'issues.label("coding-style").new.exists'
Which makes the inspection look like this
有关如何设置失败条件的更多信息:
https://scrutinizer-ci.com/docs/configuration/build_status
我已经尝试将 Scrutinizer 配置为每当 CodeSniffer 分析 returns 一些错误但运气不好时失败。
这是我到目前为止尝试过的方法:
V1:
build:
tests:
override:
command: './vendor/bin/phpcs ./src --report=checkstyle --report-file=cs-data'
analysis:
file: 'cs-data'
format: 'php-cs-checkstyle'
V2:
build:
tests:
override:
- 'phpcs-run'
我的工具和build_failure_conditions
:
tools:
php_code_sniffer:
config:
standard: "PSR2"
checks:
php:
code_rating: true
duplication: true
build_failure_conditions:
- 'issues.label("coding-style").new.exists'
缺少什么?
TLDR;您似乎没有指定要扫描哪些文件夹的错误。
尝试使用以下方法:
build:
tests:
override:
- 'phpcs-run --standard=custom/standard/ruleset.xml --ignore=app/*/*/Test/ app/dir1/ app/dir2/ app/other/folder'
一些需要我澄清的事情:
- scrutinizer 目前不支持 phpcs 命令失败(类似于 phpunit),因为这会阻止问题显示在 UI.
- 解决方法是设置一个失败条件(您已经这样做了),例如是否存在编码风格问题,那么构建就会失败。
我目前正在使用:
build_failure_conditions:
- 'issues.label("coding-style").new.exists'
Which makes the inspection look like this
有关如何设置失败条件的更多信息: https://scrutinizer-ci.com/docs/configuration/build_status