【发布时间】:2015-12-11 19:37:00
【问题描述】:
我有许多项目需要由 jenkins 的 SONAR 分析。这些项目包括 ant 和 maven 项目。我为 jenkins 中的每个 SONAR 分析创建了一个单独的作业。
是否可以有一个 jenkins 作业,在其中我可以从每个单独的声纳作业中传递一些参数,然后查看仪表板?
如果是这样,我该怎么做?
【问题讨论】:
标签: jenkins parameters sonarqube
我有许多项目需要由 jenkins 的 SONAR 分析。这些项目包括 ant 和 maven 项目。我为 jenkins 中的每个 SONAR 分析创建了一个单独的作业。
是否可以有一个 jenkins 作业,在其中我可以从每个单独的声纳作业中传递一些参数,然后查看仪表板?
如果是这样,我该怎么做?
【问题讨论】:
标签: jenkins parameters sonarqube
此解决方案适用于 Subversion 和 Maven。
_common-sonar 使用以下设置:
$PREVIOUS_SVN_URL,签出策略:“总是检查一个新的副本”
install
_common-sonar
PREVIOUS_SVN_URL=${SVN_URL}
现在,当分析作业完成时,它会触发分析作业。分析作业检查第一个作业使用的相同 SVN URL。
此解决方案无需编写脚本或复制工作区即可工作,但存在非常明显的限制和不理想的功能:
mvn install
非常欢迎改进想法!
后期改进编辑:
除了使用 maven 构建(在 _common-sonar 中),您还可以通过调用独立 SonarQube 分析直接使用 SonarQube
除了 SVN URL,您还可以为构建标签和项目名称添加参数以在声纳中使用。只需添加
在 PREVIOUS_SVN_URL 参数下方。
在您的 _common-sonar 中,您可以将它与 ${NAME} 和 ${BUILDTAG} 一起使用。
【讨论】:
在一次类似的需求中,我创建了一个作业,该作业提取了多个项目的来源(每个项目到作业工作区中自己的子文件夹)。
然后,我编写了一个简单的 shell 脚本,循环遍历所有目录并运行声纳分析。
该作业具有显示汇总报告的声纳后期构建插件。
不幸的是,我没有几年前的例子,但你可以让它发挥作用。
我希望这会有所帮助。
【讨论】: