Gitlab с репозиториями на монтировании cifs не может создать новый проект

У нас есть сервер gitlab, работающий в нашей внутренней сети, который настроен для хранения репозиториев на монтировании cifs (требование проекта). Более того, этот диск nas должен быть доступен из внешней сети и также должен разрешать операции git с репозиториями из этой другой сети, тем самым даже не признавая существование сервера gitlab. Это приводит к нескольким проблемам, которые я пытался решить.

Одна из проблем заключалась в том, что gitlab выполняет явные проверки разрешений (770 для одной папки, 2770 для другой и т.д.) для некоторых папок, что невозможно при монтировании cifs. Я исправил это, отключив эту проверку (manage_storage_directories ['enable'] = false) в /etc/gitlab/gitlab.rb

Однако похоже, что Gitlab сильно полагается на наличие хуков в репо. В противном случае ломается довольно много вещей. И по умолчанию gitlab всегда будет пытаться создать символическую ссылку для папки хуков в репо. Вы можете обойти это, сначала создав проект локально, а затем переместив / перенеся существующий проект на это монтирование cifs. Затем я фактически помещаю файлы ловушек вместо символической ссылки.

Я не хочу делать этот HACK для каждого нового проекта. Если я попробую иначе, я всегда получаю сообщение об ошибке «Форма содержит следующую ошибку: Не удалось создать репозиторий через gitlab-shell» в веб-интерфейсе.

Для чего-то похожего см .: https://gitlab.com/gitlab-org/gitlab-ce/issues/13734

На данный момент я бы предпочел не трогать сервер smb на nas, чтобы включить некоторые флаги для разрешения символических ссылок (если это вообще возможно).

Не стесняйтесь спрашивать дополнительную информацию. Заранее спасибо!


person schwarz    schedule 11.04.2018    source источник


Ответы (1)


Попробуйте эти варианты символьных ссылок на cifs:

sudo mount -t cifs -o 
user=user,pass=pass,vers=3.0,uid=987,gid=0,soft,rsize=8192,wsize=8192,mfsymlinks 
//1.2.3.4/git /var/opt/gitlab/git-data/repositories

С уважением, CK

person Christian Knoblauch    schedule 28.08.2018