Você não precisa usar o ssh para ele. Se você adicionar o usuário www-data ao grupo gitolite , seu servidor web deve poder ler os repositórios do sistema de arquivos.
Acabei de instalar o Gitolite e o Gitlab e estou muito feliz com isso. Tudo funciona bem até agora.
Eu posso criar repos, empurrar para eles, cloná-los em outros clientes na rede. Ótimo!
Mas agora eu queria fazer alguns post-receive
hooks.
Ou seja quando eu empurrar para algum repo, este repo deve ser verificado no servidor no diretório /var/www/repos
.
Eu fiz isso com Gitlabs Deploy Hooks e este Endpoint-Script .
O problema é que os scripts são executados sob o usuário " www-data
", que não tem acesso a gitlab/gitolite
.
Como faço para mudar isso?
Preciso fazer check-out de repos com www-data
user e usar a sintaxe git@server/repo.git
.
Você pode usar um sudo para executar o script com os direitos apropriados (se puder modificar o arquivo sudoers
).
Veja a ilustração " Implantando aplicativos de nó via Gitolite e gancho pós-recebimento ".