mridang / pmd-annotations
将PMD风格的XML报告转换为通过Checks API的GitHub pull-request注释。此脚本旨在在您的GitHub Action中使用。
0.0.2
2020-03-31 08:41 UTC
Requires
- php: ^7.0
- ext-simplexml: *
Requires (Dev)
- phpunit/phpunit: ^7.5
This package is auto-updated.
Last update: 2024-08-29 05:43:14 UTC
README
将PMD风格的XML报告转换为通过Checks API的GitHub pull-request 注释。此脚本旨在在您的GitHub Action中使用。
这意味着您不再需要通过GitHub Action日志文件或控制台输出进行搜索。无需解释格式不同的消息。相反,您可以专注于您的pull-request,并且无需离开pull-request区域。
图片来自 https://github.com/mheap/phpunit-github-actions-printer
安装
通过Composer安装二进制文件
composer require mridang/pmd-annotations
示例用法
pmd2pr
可用于现有的PMD报告XML报告。或者,您可能将其用于UNIX管道表示法,以将其链接到现有的cli命令。
在您的GitHub Action工作流程中运行以下命令之一
处理PMD格式的文件
vendor/bin/pmd2pr /path/to/pmd-report.xml
可用选项
--graceful-warnings
:如果只有警告,则不退出错误代码--colorize
:彩色输出。如果相同的lint脚本应在本地命令行和远程GitHub Actions上使用,则很有用。使用此选项,错误和警告在命令行上更容易区分,输出仍然与GitHub注释兼容
管道另一个命令的输出
这适用于生成PMD格式报告的任何命令。以下是一些示例
使用PHPMD
phpmd . xml codesize,naming,unusedcode,controversial,design --exclude libs,var,build,tests --ignore-violations-on-exit | vendor/bin/pmd2pr
示例GitHubAction工作流程
如果您使用shivammathur/setup-php
来设置PHP,则pmd2pr
二进制文件包含在内
# ... jobs: phpmd-analysis: name: phpmd static code analysis runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup PHP uses: shivammathur/setup-php@v1 with: php-version: 7.3 coverage: none # disable xdebug, pcov tools: pmd2pr - run: | composer install # install your apps dependencies vendor/bin/phpmd . xml codesize,naming,unusedcode,controversial,design --exclude libs,var,build,tests --ignore-violations-on-exit | pmd2pr
如果您使用自定义PHP安装,则项目需要要求mridang/pmd-annotations
# ... jobs: phpmd-analysis: name: phpmd static code analysis runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup PHP run: # custom PHP installation - run: | composer install # install your apps dependencies composer require mridang/pmd-annotations # install pmd2pr vendor/bin/phpmd . xml codesize,naming,unusedcode,controversial,design --exclude libs,var,build,tests --ignore-violations-on-exit | vendor/bin/pmd2pr