Yesterday I upgraded the opensimulator.org machine (kindly provided by Adam Frisby) to the latest version of Debian. The upgrade went seemlessly. Now that we are on Debian 5.0 we’ve got some fresher software on the machine to make it possible to provide a few new things as part of the basic OpenSim infrastructure.
OpenSim via Git
We are now mirroring the experimental upstream code (aka subversion trunk) via git. At least 5 of us on the OpenSim core team have been using git personally with the git-svn bridge for our own OpenSim work (I started doing this nearly a year ago). Git provides some advantages in making it easy to try things out in a local tree, and throw away branches if things go wrong. If you read my blog, you know, I love git.
While subversion remains our main tree, this git mirror will make it easy for developers (or budding developers) to experiment with this alternative source system. You can use viewgit to see the git mirror, or clone this via:
git clone http://opensimulator.org/git/opensim
In addition, the viewgit system provides a very handy rss feed for changes, which is another way you can keep up to tabs on what’s changing in trunk. There is an up to 10 minute lag in changes getting into the git mirror from svn, but hopefully that won’t bother anyone.
Automated Release Building for OpenSim
Something else I threw together last night was an automated release builder for OpenSim. One of the challenges we had was getting all the parts of the release sorted out once a release tag was made was sometimes onerous, and meant that a release might only be an subversion tag for days or even weeks before source tarballs of that saw their way into the world.
I’ve now got a system in place that looks for all numeric tags in our source tree, checks them out, runs prebuild on them, and bundles them up as both a .zip and a .tar.gz. This means they should be ready to compile with nant or MSVS. This is running hourly on the OpenSim machine, and publishing all results to http://dist.opensimulator.org. One of the immediate things you’ll see is that it now gives us a full set of historically populated releases.
I’m hoping you enjoy these extra bits of infrastructure for the project. Please feel free to drop me a comment here if you have any thoughts or questions on them, feedback is always appreciated.