Project Infrastructure Migration 2007
This document attempts to discuss the needs of projects currently (really initially) going through incubation. It attempts to address infrastructure needs, and migration strategies to OSGeo servers.
The following components make up the typical needs of an open source project, each section documents what the current projects use, and what OSGeo currently offers.
Currently the members projects use:
- Wiki: OSSIM + GRASS (Twiki), GeoTools + MapBuilder (Confluence), Mapbender + OSGeo (Mediawiki)
- CMS: MapServer (Plone)
- Static HTML: MapGuide, OSGeo
- PHP HTML: GRASS (but CMS forthcoming) + weekly generated software user docs
- Doxygen (nightly generated HTML): GDAL, GRASS (for programmer's manual)
OSGeo offers Trac wiki as standard as well as Drupal instances on the main server (as is done for FDO and MapGuide).
Other customized solutions are possible, but will be primarily the responsibility of the project. For instance, the GDAL web site lives on a telascience blade with custom scripts running doxygen.
Source Code Control
Some projects now using SVN, while others use CVS.
OSGeo offers Subversion, but SAC can assist with migration from CVS to Subversion. This has been a good transition for a number of projects (GDAL, MapServer).
Bug / Issue Tracking
Currently members projects use:
- Bugzilla: GDAL, MapServer, OSSIM
- Jira: GeoTools, MapBuilder
- SF bug tracker: Mapbender
- RT: GRASS (Gforge planned)
- CN Issue Tracker: MapGuide
OSGeo offers Trac, and SAC can potentially assist in transitions from Bugzilla in such a way that history is preserved.
Mailing Lists / Forums
Currently member projects use:
- Mailman: GDAL, GRASS, OSSIM, MapBuilder, GeoTools, MapServer, Mapbender is currently in transition
- CN Mailing Lists: MapGuide, Mapbender
Existing projects offer source, binary and data downloads through http and ftp.
OSGeo operates a Download Server on a telascience blade which includes http (http://download.osgeo.org), ftp (ftp://ftp.remotesensing.org) and rsync access. Space is currently somewhat limited (only a couple GB free?). Upload access is inconvenient as a special account needs to be requrested from Howard Butler.
- No wiki: GDAL (want one!), MapServer (had one but wiki-spammed), MapGuide
- Twiki: OSSIM, GRASS
- Mediawiki: Mapbender, OSGeo
- Confluence: GeoTools, MapBuilder
OSGeo offers Trac wiki. It is also possible that OSGeo could host MediaWiki instances though we haven't gotten this operational yet.
Automated Build/Smoke Test System
- GDAL: BuildBot (prototype)
- GeoTools: cruise control + maven 2 (and may consider Continum)
- GRASS: script based build system for Linux, MacOSX, mingW; script/HTML based testsuite; additionally automated clone testing and function size/structure Quality Control
- Mapbender: currently testing Selenium
- MapBuilder: Setting up a fitnesse/ruby/WATIR/Autoit solution for AJAX type testing
- MapGuide: Cruise Control (I think)
- MapServer: BuildBot (prototype)
OSGeo offers Buildbot running on telascience blades. Some SAC (Mateusz) support is available for projects wanting to setup under buildbot. Currently only a limited number of slaves are available for pan-OSGeo though this is being worked on.
- geotools: n/a library project, demo examples in wiki and included with source download
- GRASS: a couple of Demo Live CDROMs/DVDs are available (Linux, MS-Windows)
- Mapbender: There are several Mapbender demo installations operated by different companies and clients, all linked from the Wiki. It is planned to create a "full stack" demo site on the telescience servers asap. Every Mapbender installation contains demo data (Capabilities URLs) and demo interfaces. A MapServer WMS demo ist operated by CCGIS hosting the Free Data project "Germany", a GeoServer WFS-T demo installation hosts the Mapbender users.
Currently OSGeo does not offer any standard service for this, though it is possible for projects to setup custom stuff on Telascience blades by special arrangement. This isn't done by SAC.
- GDAL: irc://irc.freenode.org#gdal
- GeoTools: irc://irc.freenode.org#geotools
- GRASS: irc://irc.freenode.org#grass
- Mapserver: irc://irc.freenode.org#mapserver
- Mapbuilder: irc://irc.freenode.org#mapbuilder
It would be desirable to have an automated archieving of IRC channels, but no action has been taken in this regard.
- Common LDAP infrastructure for single sign-on
- SSL certificates for OSGeo sites (currently CN owned ?)
OSGeo manages an LDAP server for OSGeo Userids which can be used for Trac, Subversion and Drupal. Currently stuff on the telascience blades does not take advantage of this.
Tool Selection Criteria
If a project were to leave OSGeo, then they should be able to set up and use all the tools without a license cost.
- Ideally, the tools should be open source, but a "Free for Open Source" licence is acceptable.
- Tools that use Open Standards will be used where possible as reduces the need for vendor lock in.
- Tools should be able to input data from existing OSGeo projects with minimal effort and without loosing history.
Migration Off OSGeo
Should a project desire to migrate off OSGeo systems, OSGeo will take all reasonable actions to support this. This includes making SVN dumps, Trac "snapshots", Mailman snapshots and so forth available. Some services (such as the download server) are already publically accessable.