Savannah health monitor
If we ever build a health "dashboard" website (e.g. https://status.sv.gnu.org), these are the suggested checks for each of SavannahServices.
TODO:
- instead of using hard-coded user 'agn', create a dedicated user on Savannah and add ssh pubkeys to it.
- create Perl script with www-mechanize to test login on the PHP frontend.
- remove '0' suffix from server names below when migration is complete.
VCS0
Anonymous checkouts (protocol-specific xinetd daemon)
git clone git://git0.sv.gnu.org/datamash.git
svn co svn://svn0.sv.gnu.org/texinfo/trunk
bzr branch bzr://bzr0.savannah.nongnu.org/gnewsense/docs
cvs -d:pserver:anonymous@cvs0.savannah.nongnu.org:/sources/zdl co zdl
cvs -d:pserver:anonymous@cvs0.savannah.nongnu.org:/srv/cvs/sources/zdl co zdl
cvs -d:pserver:anonymous@cvs0.savannah.nongnu.org:/web/zdl co zdl
cvs -d:pserver:anonymous@cvs0.savannah.nongnu.org:/srv/cvs/web/zdl co zdl
cvs -d:pserver:anonymous@cvs0.savannah.nongnu.org:/webcvs/zdl co zdl
SSH Access (ssh should work with pubkey, but all commands except rsync/scp should be rejected):
$ ssh agn@vcs0.sv.gnu.org ls
You tried to execute: ls
Sorry, you are not allowed to execute that command.
VCS ssh access:
bzr branch bzr+ssh://agn@bzr0.savannah.nongnu.org/gnewsense/docs
git clone agn@git0.sv.gnu.org:/srv/git/grep.git
hg clone ssh://agn@hg0.sv.gnu.org/health
svn co svn+ssh://agn@svn0.sv.gnu.org/texinfo/trunk
# cvs, webcvs, with multiple root directories
cvs -d:ext:agn@cvs0.sv.gnu.org:/sources/zdl co zdl
cvs -d:ext:agn@cvs0.sv.gnu.org:/srv/cvs/sources/zdl co zdl
cvs -d:ext:agn@cvs0.sv.gnu.org:/web/zdl co zdl
cvs -d:ext:agn@cvs0.sv.gnu.org:/srv/cvs/web/zdl co zdl
Read-only anonymous rsync access:
rsync -avhP rsync://git0.sv.gnu.org/git/datamash.git .
rsync -avhP rsync://svn0.sv.gnu.org/svn/texinfo .
rsync -avhP rsync://bzr0.sv.gnu.org/bzr/gnewsense/docs .
rsync -avhP rsync://web.cvs0.sv.gnu.org/web/zdl .
rsync -avhP rsync://cvs0.sv.gnu.org/sources/zdl .
Web access, with curl (also check http):
https://git0.savannah.gnu.org/cgit/datamash.git
https://git0.savannah.gnu.org/gitweb/?p=datamash.git
https://git0.savannah.gnu.org/r/datamash.git/
https://svn0.savannah.gnu.org/viewvc/texinfo/
https://cvs0.savannah.gnu.org/viewvc/zdl/
https://web.cvs0.savannah.gnu.org/viewvc/zdl/
#special *checkout* mode, return raw file (as HTML)
http://web.cvs.savannah.gnu.org/viewvc/*checkout*/pretest/pretest/index.html?revision=1.29
#special *checkout* mode, return raw file (as text)
http://web.cvs.savannah.gnu.org/viewvc/*checkout*/pretest/pretest/index.html?revision=1.29&content-type=text%2Fplain
https://bzr0.savannah.gnu.org/lh/gnewsense/
https://bzr0.savannah.gnu.org/r/gnewsense/
https://hg0.savannah.gnu.org/hgweb/health/
download0
Downloads (directory listing):
http://download0.savannah.gnu.org/releases/datamash/src/
https://download0.savannah.gnu.org/releases/datamash/src/
Test redirection mechanism:
$ curl -s -I 'http://download0.savannah.gnu.org/releases/datamash/src/datamash-latest.tar.gz'
HTTP/1.1 302 Moved Temporarily
Server: nginx/1.4.6 (Trisquel GNU/Linux)
Date: Tue, 08 Nov 2016 15:16:54 GMT
Connection: keep-alive
Location: http://nongnu.askapache.com/datamash/src/datamash-latest.tar.gz
Test download area with no redirections:
http://download-mirror0.savannah.gnu.org/releases/datamash/
https://download-mirror0.savannah.gnu.org/releases/datamash/
$ curl -s -I 'http://download-mirror0.savannah.gnu.org/releases/datamash/src/datamash-latest.tar.gz'
HTTP/1.1 200 OK
Server: nginx/1.4.6 (Trisquel GNU/Linux)
Date: Tue, 08 Nov 2016 15:16:22 GMT
Content-Type: application/octet-stream
Content-Length: 1891946
Last-Modified: Tue, 01 Nov 2016 22:55:28 GMT
Connection: keep-alive
ETag: "58191d60-1cde6a"
Accept-Ranges: bytes
Mirror check (see where you are redirected):
$ curl https://download0.savannah.gnu.org/mirror-check/
GNU Savannah - mirror check
Detected Remote Address: 173.220.72.100
Detected Country: US (United States)
Suggested mirrors:
For download.sv.gnu.org: http://gnu.mirrors.pair.com/savannah/savannah/
For ftp.gnu.org: http://gnu.mirrors.hoobly.com/gnu/
(reload the page to see other mirrors for your country)
ftpmirror redirection:
# The official redirection (without `/gnu/`):
$ curl -s -I https://ftpmirror0.sv.gnu.org/coreutils/coreutils-8.25.tar.gz | grep '^Location:'
Location: http://mirrors.kernel.org/gnu/coreutils/coreutils-8.25.tar.gz
# undocumented hack (with `/gnu/` to make it more similar to `ftp.gnu.org/gnu`):
$ curl -s -I https://ftpmirror0.sv.gnu.org/gnu/coreutils/coreutils-8.25.tar.gz | grep '^Location:'
Location: http://mirror.clarkson.edu/gnu/coreutils/coreutils-8.25.tar.gz
GNU Arch repositories (directory listing only):
https://arch0.savannah.gnu.org/archives/
Read-only anonymous rsync:
rsync -avhP rsync://download0.sv.gnu.org/releases/datamash .
rsync -avhP rsync://download0.sv.gnu.org/audio-video/index.html .
SSH Access (ssh should work with pubkey, but all commands except rsync/scp should be rejected):
$ ssh agn@download0.sv.gnu.org ls
You tried to execute: ls
Sorry, you are not allowed to execute that command.
SCP/Rsync uploads:
rsync -avhP agn@download0.sv.gnu.org:/srv/download/datamash .
rsync -avhP agn@download0.sv.gnu.org:/srv/audio-video/ghm2009/ .