如何隐藏选定用户的 TeamCity 配置?

Posted

技术标签:

【中文标题】如何隐藏选定用户的 TeamCity 配置?【英文标题】:How to hide TeamCity configuration for selected users? 【发布时间】:2013-04-18 02:53:39 【问题描述】:

我有一个 TeamCity 项目 Dac.Test,其中包含 3 个配置:DEVQAPROD

我还有一些用户与他们的角色相关联。这是否可以为选定的用户或组隐藏/显示某些配置

例如:与组关联的用户:Testers 可以看到 QA 配置,但看不到 PRODDEV

【问题讨论】:

隐藏,您的意思是“阻止他们以任何方式访问”还是只是“从仪表板的视图中删除,但如果他们查找,他们可以找到它” @Matt 我的意思是“阻止他们以任何方式访问”。 dario,你能解决这个问题吗? @John 不是。没有任何解决方案适用于我。正如 Mat 所说:这个功能不存在。 好的,很抱歉,我们无法提供更多帮助。如果您在如何管理构建方面获得了更大的灵活性,我想您会发现使用基于项目的角色管理效果很好。祝你好运! 【参考方案1】:

没有办法管理每个构建的用户权限,这仅在项目级别可用。您可以在 Dac.Test 项目中创建一个子项目来满足此需求

如果您正在寻找一种方法来阻止人们错误地运行此构建,以下方法将起作用。

此方法使用一个提示框,在您单击运行按钮后会弹出一个提示框,它还需要用户输入确认他们的意思是运行构建。 没有人可以意外运行此构建

    在 TeamCity UI 中转到您的构建配置 从这里,转到编辑配置设置 --> 参数 --> 添加新参数 输入类似“确认”的名称作为参数名称 然后点击“规格:”旁边的“编辑...”按钮 如下图所示设置参数:

现在,当您单击运行按钮时,系统会提示您并要求您确认。用户必须在出现的提示框中输入“是”,任何其他值都将阻止用户构建:

【讨论】:

【参考方案2】:

这最好通过使用 TeamCity 的内置 role management 来完成。角色允许您为用户和组设置细粒度的权限。然而,一个潜在的问题是角色的范围是项目(而不是构建配置)。您需要创建一个单独的Dac.Test QA 项目+配置,并在那里为您的Testers 提供必要的权限。您还需要确保他们被剥夺了Dac.Test 项目的所有权限。

【讨论】:

确实如此。但不幸的是,我不能那样分离我的配置。 你能说更多吗?也许有办法解决它。 您可以将它们基于存在于共享项目中的共享模板,然后在受保护的项目中从该模板创建构建 我在许多项目中使用共享模板,所以这是可能的 @Dario 该功能不存在,您需要将配置放入单独的项目并保护它们

以上是关于如何隐藏选定用户的 TeamCity 配置?的主要内容,如果未能解决你的问题,请参考以下文章

如何根据先前表单字段的选定选项值隐藏表单字段

如何在 java 中获取 Teamcity 配置的值?

如何:Teamcity + GitHub

如何从 TeamCity 构建配置中设置 PowerShell 开关参数

如何配置 TeamCity 构建代理以通过 SOCKS 代理使用 git 和 git:// 协议?

TeamCity 构建链触发