将多个工具中的报表合并到单个文件中
reportmix的Python项目详细描述
报表混合
将来自multiple tools的报表合并到单个文件中。在
安装
从PyPI安装ReportMix:
pip install reportmix
使用
使用命令行界面合并报表:
^{pr2}$参数
Argument | Description |
---|---|
^{ | Show the help message and exit |
^{ | Show program's version number and exit |
^{ | Run verbosely (display ^{ |
^{ | The location to write the report |
^{ | The path to the configuration file |
^{ | Report formats to be generated (^{ |
^{ | Fields to include in the output report (CSV and HTML only) |
^{ | Fields to use for hash generation |
^{ | The HTML report title |
^{ | The URL to the organization logo to display on the HTML report |
^{ | User-defined metadata fields |
运行reportmix --help
以显示完整的帮助消息。在
一些属性(formats
,fields
,hash
,hash
,…)支持单个值
或逗号分隔的项目列表(例如--formats "csv,html,json"
)。在
工具特定的配置参数记录在帮助消息中 和below。在
配置
使用命令行参数配置合并过程
或在工作目录中创建配置文件.reportmix
:
[global]output_dir=targetformats=html,csv,jsonfields=tool_name,tool_version,meta_organization,name,description,type,severity,subject_nametitle=Analysis reportlogo=http://acme.com/img/logo.png[meta]organization=Acme Corporation[dependency_check]report_file=target/dependency-check-report.csv[npm_audit]report_file=web-app/npm-audit.json[sonarqube]host_url=http://sonarqube.acme.corpproject_key=acme:myproject[reportmix]report_file=sub-project/reportmix.csv
此配置也可以作为命令行参数传递:
reportmix --output_dir target --formats "html,csv,json"\ --fields [...] --title "Analysis report" --logo "http://acme.com/img/logo.png"\ --meta.organization "Acme Corporation"\ --dependency_check.report_file "target/dependency-check-report.csv"\ --npm_audit.report_file "web-app/npm-audit.json"\ --sonarqube.host_url "http://sonarqube.acme.corp" --sonarqube.project_key "acme:myproject"\ --reportmix.report_file "sub-project/reportmix.csv"
元数据字段
元数据字段允许为配置中的每个问题定义一些字段:
^{tb2}$哈希
hash
是一个特殊字段。它不是从报表数据中提取的,而是
使用一些问题字段计算,以创建稳定的唯一标识符。
如果多个问题,在一个合并报表中或在不同的报表中,
在不同的时间生成,有相同的hash
值,我们可以考虑
它们是相同的,所以解决其中一个问题将解决其他问题。它可以
特别适用于计算多个报告之间的增量,跟踪
问题修复等
支持的报告
当前支持使用以下工具生成的报告:
- Dependency-Check: 加载由OWASP依赖项检查生成的漏洞报告 (需要CSV,JSON可选),建议使用5.x版
- npm audit: 加载由npm audit CLI命令生成的安全审核 (仅JSON格式),净现值@6是必需的
- SonarQube: 加载代码质量分析结果来自SonarQube实例, 需要7.x版
- ReportMix: 加载由ReportMix生成或手动创建的报告(CSV格式)
Contributions to improve existing report loaders or add new ones are welcome!
依赖性检查加载程序
- Run依赖项检查扫描(参见Maven plugin)
CSV
报告是必需的,JSON
报告是可选的 {cd35>配置中的插件}(属性^)
- Move
dependency-check-report.*
工作目录中的文件 或者configureReportMix(dependency_check.report_file
)在其他地方查找文件 - :重检查标记:Run ReportMix
npm审核加载程序
- Run使用npm-auditCLI命令进行安全审核
- 获取JSON格式的详细审计报告,例如:
npm audit --json > npm-audit.json
- 获取JSON格式的详细审计报告,例如:
- Move工作目录中的
npm-audit.json
文件 或者configureReportMix(npm_audit.report_file
)在其他地方查找文件 - :重检查标记:Run ReportMix
SonarQube装载机
- ^{str1}$Run声纳分析(参见Analyzing Source Code)
- Configure实例URL(
sonarqube.host_url
)、项目密钥(sonarqube.project_key
), 和authentication设置 - :重检查标记:Run ReportMix
ReportMix加载程序
- RunReportMix(例如在另一个项目中)生成一个报表(
csv
格式) 或者使用ReportMix输出格式(例如to)手动创建它 包括来自手动安全审核的漏洞)。电子表格可以是 用于轻松创建或编辑CSV报告。在 - ConfigureCSV报告文件(
reportmix.report_file
)的路径 - :重检查标记:Run ReportMix
许可证
ReportMix是根据GNU通用公共许可证授权的。在
- 项目
标签: