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.

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

Using desktop browser (Firefox 3.5.6)

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.