将整个gitlab安装置于只读模式

Sem*_*kov 7 gitlab

我希望拒绝任何用户将更改推送到任何存储库.从技术上讲,我需要将整个gitlab切换到只读模式.有简单的方法吗?

Von*_*onC 6

如果您不想弄乱用户权限(如此PR中所做的那样),一种方法是更改gitlab-shell预接收挂钩.

如果预接收挂钩总是" exit 1",则应禁用任何推送到任何回购.

  • 我找到了另一个丑陋却又有效的方法:`#chmod -R -w gitlab-repositories-directory`这有点可耻,但它的工作原理. (2认同)

小智 6

实际上,更好的答案是将此标志更改为 true。这使整个实例只读并在应用程序中添加了一个不错的标题。

  • 自这篇文章发表以来,代码已发生更改。只是为了明确地节省其他人的时间......您正在寻找的代码位于“def self.read_only?”函数中。只需将其从“false”更改为“true”即可。在 Omnibus 安装上,database.rb 文件将位于 `/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database.rb` 中,更改选项,然后运行 ​​`gitlab-ctl reconfigure`,然后运行 ​​` gitlab-ctl restart` 就可以了。 (3认同)