我想将自成立以来的整个项目历史加载到 Sonar 中。
我基本上想执行这样的代码:
0) 从 Subversion 签出版本 1 1) 从 Subversion 签出下一个版本 2) 如果提交日期与前一个日期是同一天 - 转到 1 3) 运行 mvn sonar:sonar,用提交时间覆盖构建时间 4)如果不是最后一次提交 - 转到 1
有没有一个工具可以做到这一点?有没有办法说服 Sonar 使用与当前日期不同的日期?
我想将自成立以来的整个项目历史加载到 Sonar 中。
我基本上想执行这样的代码:
0) 从 Subversion 签出版本 1 1) 从 Subversion 签出下一个版本 2) 如果提交日期与前一个日期是同一天 - 转到 1 3) 运行 mvn sonar:sonar,用提交时间覆盖构建时间 4)如果不是最后一次提交 - 转到 1
有没有一个工具可以做到这一点?有没有办法说服 Sonar 使用与当前日期不同的日期?
这是来自邮件列表:
实际上,要导入历史数据,您必须使用“sonar.projectDate”属性(格式为 yyyy-MM-dd,例如 2010-12-25)[1] 并在您想要的每个标签/分支上启动声纳分析喜欢在你的项目历史中看到。
http://sonarqube.15.x6.nabble.com/re-ordering-historical-data-td3191565.html
有一个额外的博客文章进一步解释了这一点。
我只是在搜索完全相同的东西,并在 GitHub 中找到了一个方便的 bash 脚本:
https://gist.github.com/aslakknutsen/2422117
该脚本检查每个标签(从作为参数给出的特定标签开始),将标签日期设置为 sonar.projectDate 并对其运行声纳分析。非常便利。我想我可能需要对其进行一些修改,因为我们在 repo 中没有那么多标签,也许每周进行一次分析之类的。
Python 工具,用于加载自给定日期以来每个月/周的快照。
只需找出来自@adam-banko的脚本不再适合我(因为它已经 8 岁了)。
这是一个更新的 Python3 脚本,用于上传 maven 项目的历史快照: https ://gist.github.com/hughluo/c51b14cfcd9afe3f89149f478c1a65d5
更改脚本中的日期范围以满足您的需要。
将脚本放在项目根目录所在的文件夹pom.xml
中并运行
SONAR_HOST=<sonar.host.url> SONAR_LOGIN=<sonar.login> SONAR_PROJECT=<sonar.projectKey> python3 upload_snapshots_sonar.py