2

我在多用户 Linux 环境中使用 Jenkins 进行 CI,并使用 Cobertura 跟踪代码覆盖率。CVS 用于版本控制。每次“cvs commit”都会触发一次构建。构建包括运行单元测试和生成代码覆盖率。

问题如下。创建代码覆盖率报告时,也会创建所有单元测试源文件的逐行覆盖率。这在编写和运行单元测试时很好并且非常有用,但它也允许每个可以访问网络的人查看项目源文件。

我的问题是如何限制此逐行覆盖率报告仅对一组 Jenkins 用户或类似用户可见,而对其他人不可见。

我看到 Jenkins 允许配置不同的“安全领域”。目前我使用“詹金斯自己的用户数据库”。我看到还有“Unix 用户/组数据库”,这听起来可能会解决我的问题,但我只是想在尝试该选项之前询问其他人的经验和意见。

提前致谢!

4

2 回答 2

2

最好将报告工件导出到支持访问控制的其他位置。它可以是 wiki 或 Apache 实例等。更好地保护 Jenkins 实例而不是花费宝贵的时间来保护它的某些部分。

没有这样的功能意味着不需要它。

于 2012-11-13T23:22:51.077 回答
0

Jenksing 不提供细粒度的授权。此外,Cobertura 报告只是一组静态 html,因此您可以研究 Web 容器配置以找到定义过滤器等的方法。

我想说最安全的解决方案是使用另一个 jenkins 实例来处理敏感信息。你可以把它放在配置了 HTTPS 的 Apache 之后,然后好好睡一觉。顺便说一句,有 JobImport 插件https://wiki.jenkins-ci.org/display/JENKINS/Job+Import+Plugin以避免重复。

于 2012-10-08T11:48:21.447 回答