Vcs bat

Basic Acceptance Tests for vcs.maemo.org

This is a short list of some basic tests I perform against vcs.maemo.org, our new subversion and git server. The list is by far complete.

The results are known by the ISP, they are investigating the problems on the load balancer side.

Current Status NO GO
== Setup ==

Added to /etc/hosts: 80.248.164.246 git.maemo.org
  
Using command line tools: lynx, git, svn, curl, openssl

Using desktop tools: Firefox 3.5.6, wireshark


Test 1 - PASSED (see comment below)
------
1. Request https://vcs.maemo.org/git from Firefox

Result:
   Page loads fine
   SSL certificate OK

   Server shows that the request arrived to port 80 on the backend, so 
   this test basically failed, although the browser seems to be happy.

Test 2 - PASSED (see comment below)
------
1. Request https://git.maemo.org/git from Firefox

Result:
   Page loads fine
   SSL certificate OK

   Server shows that the request arrived to port 80 on the backend, so 
   this test basically failed, although the browser seems to be happy.

Test 3 - FAILED
------
1. Request https://vcs.maemo.org/git with lynx from command line

Result:
   Page loads fine, but HTTPS was redirected to HTTP

Test 4 - FAILED
------
1. Request https://vcs.maemo.org/git from Firefox
2. Click any of the links on the page, e.g. 'projects' on the top left
   Browser redirected to http://vcs.maemo.org/git,
   although the URL was pointing to http://.....

Expected result:
browser goes to https://vcs.maemo.org/git

Suspected reason:
   The load balancer redirects all, but the 1st request to port 80,
   instead of keeping the same SSL sessions.

Test 5 - FAILED
------
1. Request https://git.maemo.org/git from Firefox
2. Click any of the links on the page, e.g. 'projects' on the top left
Result:
   Browser redirected to http://git.maemo.org/git,
   although the URL was pointing to http://.....

Expected result:
browser goes to https://git.maemo.org/git

Suspected reason:
   The load balancer redirects all, but the 1st request to port 80,
   instead of keeping the same SSL sessions.

Test 6 - FAILED
------
1. Request https://git.maemo.org/git from Firefox
2. Click any of the project links there, e.g. "anki"
Result:
   The gitweb application returns HTTP error 500:
   "vs anki - Malformed query, file missing or permission denied"

Expected result:
   The URL get re-written by the local Apache instance and
   gitweb called with the right parameters and request format

Reason: the local redirect rules are completely ignored completely

Test 7 - FAILED
------
1. git clone test from command line

 git clone https://vcs.maemo.org/git/gittest or
 git clone https://git.maemo.org/git/gittest

Result:
 curl (the lib git is using for HTTP transfer) complains about SSL
 certificate.

 Test passes with workaround: setting GIT_SSL_NO_VERIFY, but this is not
 accepted.

Expected result:
 the cloning goes through without errors

Suspected reason:
 The load balancer does not provide the intermediate certificate for the
 client. I have provided this certificate, so please install it.

Test 8 - FAILED
------
1. git push without SSL verification (workaround mentioned above)

Result:
 The MOVE Webdav method returns HTTP 502, which means:
 "The destination URI is located on a different server, which refuses to
accept the resource."

Expected result:
 The push goes through without errors.

Suspected reason:
 The load balancer messes up the HTTPS requests / responses.

Test 9 - PASSED
-------
1. Repeat test 8 within the DMZ, ie. bypass the load balancer

Result:
 Push goes through, without errors.

Test 10 - PASSED
-------
1. svn checkout testing from command line

 svn co https://vcs.maemo.org/svn/svntest or
 svn co http://vcs.maemo.org/svn/svntest

Result:
 Repo is checked out nicely.

Test 11 - PASSED
-------
1. svn check in  testing from command line

 svn ci https://vcs.maemo.org/svn/svntest

Result:
 Changes committed, session remained encrypted all the time.