Я только что установил Gitolite и Gitlab и очень им доволен. Пока все работает нормально.
Я могу создавать репозитории, отправлять их, клонировать на других клиентах в сети. Большой!
Но теперь я хотел немного post-receive
крючки.
Т.е. когда я нажимаю на какое-то репо, это репо должно быть проверено на сервере в /var/www/repos
каталог.
Я сделал это с Gitlabs Deploy Hooks и этот скрипт конечной точки.
Проблема в том, что скрипты запускаются под пользователем "www-data
"который не имеет доступа к gitlab/gitolite
.
Как мне это изменить?
Мне нужно иметь возможность проверять репозитории с помощью www-data
пользователь и использующий git@server/repo.git
синтаксис.
Вам не нужно использовать ssh для него. Если вы добавите www-data пользователь к гитолит group ваш веб-сервер должен иметь возможность читать репозитории из файловой системы.
Вы можете использовать sudo для выполнения скрипта с соответствующими правами (если вы можете изменить sudoers
файл).
См. Иллюстрацию "Развертывание приложений Node через Gitolite и обработчик post-receive".