Page MenuHomePhabricator

HTTP instructions in "Diffusion User Guide: Repository Hosting" are incomplete
Closed, ResolvedPublic

Description

I tried to configure Git repository hosting (HTTP only, no SSH access) by following the instructions in Diffusion User Guide: Repository Hosting. However, when trying to clone the repository I got an HTTP 500. A GIT_CURL_VERBOSE=1 git clone shed light on the issue: HTTP/1.0 500 Error 1: sudo: sorry, you must have a tty to run sudo. I remembered a few sentences in the guide explicitly for SSH:

Before saving and closing /etc/sudoers, look for this line:

Defaults requiretty

If it's present, comment it out by putting a # at the beginning of the line. With this option enabled, VCS SSH sessions won't be able to use sudo.

I followed this instruction too and the issue vanished into thin air. Long story short: this instruction is too specific as it also applies to HTTP configuration.

I am hosting Phabricator on a CentOS 7 server.

BTW, I were glad to read a line in the guide about the phabricator/support/bin folder in order to create a symlink to git-http-backend as it is not found in the default paths.

Also, this was the first guide that told me something about starting the daemons with a dedicated daemon user, which is something I would expect to be mentioned also in Managing Daemons with phd. When setting up the daemon user, I had to be careful during the start of the daemons to catch a little note: They weren't able to be launched by the daemon user but instead fell back to the user who called bin/phd start. The reason were missing rights when trying to access anything in /var/tmp/phd/ as the files and folders there were previously created with root rights. I know that this isn't really a Phabricator issue but it would be nice to have that mentioned at least in a troubleshooting section.

Keep up the great work!