Skip to contentSkip to conversation

How to run http server tests?

PATCH Johannes Sixt 2 participants 3 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

I have a hard time running tests that use lib-httpd.sh.

I run the tests like this:

  LIB_HTTPD_MODULE_PATH=/usr/lib64/apache2 GIT_TEST_HTTPD=Yes \
      sh -x t5541-http-push.sh -v -i

and I have to apply this patch because I do not have mod_cgi on my system (OpenSuse 11.4):

t/lib-httpd/apache.conf +2 -2
index 0a4cdfa..e5cb3f9 100644
@@ -13,4 +13,4 @@ ErrorLog error.log
 </IfModule>
-<IfModule !mod_cgi.c>
-       LoadModule cgi_module modules/mod_cgi.so
+<IfModule !mod_scgi.c>
+       LoadModule scgi_module modules/mod_scgi.so
 </IfModule>

I see t5541-http-push.sh #2 fail with:

++ cd '/home/jsixt/Src/git/git/t/trash directory.t5541-http-push' ++ git clone http://127.0.0.1:5541/smart/test_repo.git/ test_repo_clone Cloning into 'test_repo_clone'...
fatal: http://127.0.0.1:5541/smart/test_repo.git/info/refs not found:
did you run git update-server-info on the server?

t5551-http-fetch.sh fails at #3 here:

++ GIT_CURL_VERBOSE=1
++ git clone --quiet http://127.0.0.1:5551/smart/repo.git clone
+ eval_ret=128

In this case, 'git clone' output is redirected to file 'err'; it has the same error as above.

t5561-http-backend.sh fails at #3 like so:

+++ diff -u exp act

act 2011-12-14 21:14:49.000000000 +0000 renamed from exp 2011-12-14 21:14:49.000000000 +0000 +1 -1
@@ -1 +1 @@
-HTTP/1.1 200 OK
+HTTP/1.1 404 Not Found

Can someone help?

Thanks,
-- Hannes

#1 lore raw
Quoted 15 lines · Johannes Sixt

I have a hard time running tests that use lib-httpd.sh.

I run the tests like this:

  LIB_HTTPD_MODULE_PATH=/usr/lib64/apache2 GIT_TEST_HTTPD=Yes \
      sh -x t5541-http-push.sh -v -i

and I have to apply this patch because I do not have mod_cgi on my system (OpenSuse 11.4):

t/lib-httpd/apache.conf +0 -0
index 0a4cdfa..e5cb3f9 100644

t/lib-httpd/apache.conf ErrorLog error.log · line 16

Quoted 6 lines
t/lib-httpd/apache.conf +2 -2
@@ -13,4 +13,4 @@ ErrorLog error.log
 </IfModule>
-<IfModule !mod_cgi.c>
-       LoadModule cgi_module modules/mod_cgi.so
+<IfModule !mod_scgi.c>
+       LoadModule scgi_module modules/mod_scgi.so
 </IfModule>

Hmm. I know nothing about scgi, but a quick google indicates that it is a separate protocol from CGI and is more like FastCGI (i.e., it wants to spawn a long-running CGI server and contact it over a separate protocol).

So I suspect you are not able to run http-backend, and thus you have no smart-http support in your setup.

Quoted 7 lines

I see t5541-http-push.sh #2 fail with:

++ cd '/home/jsixt/Src/git/git/t/trash directory.t5541-http-push' ++ git clone http://127.0.0.1:5541/smart/test_repo.git/ test_repo_clone Cloning into 'test_repo_clone'...
fatal: http://127.0.0.1:5541/smart/test_repo.git/info/refs not found:
did you run git update-server-info on the server?

That's would I would expect if you have no smart-http support. The git client will fall back to trying dumb http, but that should fail (because we haven't run update-server-info).

The other errors you see probably stem from the same issue.

-Peff

#2 lore raw

Am 14.12.2011 22:39, schrieb Jeff King:

Quoted 18 lines · Johannes Sixt

t/lib-httpd/apache.conf ErrorLog error.log · line 16

Quoted 11 lines
t/lib-httpd/apache.conf +2 -2
index 0a4cdfa..e5cb3f9 100644
@@ -13,4 +13,4 @@ ErrorLog error.log
 </IfModule>
-<IfModule !mod_cgi.c>
-       LoadModule cgi_module modules/mod_cgi.so
+<IfModule !mod_scgi.c>
+       LoadModule scgi_module modules/mod_scgi.so
 </IfModule>

Hmm. I know nothing about scgi, but a quick google indicates that it is a separate protocol from CGI and is more like FastCGI (i.e., it wants to spawn a long-running CGI server and contact it over a separate protocol).

Quoted 2 lines

So I suspect you are not able to run http-backend, and thus you have no smart-http support in your setup.

Thanks, that put me on the right track. I have to use

LIB_HTTPD_MODULE_PATH=/usr/lib64/apache2-prefork

-- Hannes