Backing up Google Code projects
Google Code does not provide it's own usable export methods for projects so we need to make do on our own, there seems no sane way to back up the tickets but for SVN which includes the wiki you can use svnsync.
Here's a little script to automate this, just give it a PREFIX of your choice and a list of projects in the PROJECTS variable, cron it and it will happily keep your repos in sync.
It outputs its actions to STDOUT so you should add some redirect or redirect it from cron.
#!/bin/bash PROJECTS=( your project list ) PREFIX="/path/to/backups" [ -d ${PREFIX} ] || mkdir -p ${PREFIX} cd ${PREFIX} for prj in ${PROJECTS[@]} do if [ ! -d ${PREFIX}/${prj}/conf ]; then svnadmin create ${prj} ln -s /bin/true ${PREFIX}/${prj}/hooks/pre-revprop-change svnsync init file:///${PREFIX}/${prj} http://${prj}.googlecode.com/svn fi svnsync sync file:///${PREFIX}/${prj} done
I stongly suggest you backup even your cloud hosted data.
Flashpolicyd moved to Google Code
Long time readers might know I have a Ruby based Flash Policy Server called flashpolicyd - I blogged about this in the past.
Since I've been very happy with Google Code for hosting ruby-pdns I thought I'd start moving some other projects there too, in the process I'll probably also release some other bits and bobs that I did not previous share the code of.
The new home for flashpolicyd is then: http://code.google.com/p/flashpolicyd/
This was my first major bit of Ruby code and looking back at it now I'm still fairly happy with it but the real proof is in the pudding; my production copy of this code is up over 300 days now, does not leak memory or threads and have served 10s of millions of requests without any problems.
Google Code
I am working on a new Open Source development framework for PowerDNS and needed somewhere to host the project, typically I'd host my own SVN and Wiki and just take patches via email but I thought that's a bit stupid for this day and age.
I set up a Google Code project for Ruby PDNS to give it a go and must say I've been really impressed with it.
Feature wise it provides most of what you need when combined with Google Groups, Pages, Analytics and so forth but the core feature set is not all bad either.
- They support SVN or Mercurial
- The wiki is (loosely) based on MoinMoin which is nice cos I already had lots of Moin docs for this project. Crucially you can access the wiki pages over SVN for local editing.
- The ticketing system is OK, it's probably the worst part of the project hosting systems but I think I can get used to it for sure. Specifically I want to be able to add blockers and such when the ticket gets created already. I also want to look at the ticket and see all commits pertaining to this ticket, not possible it seems.
- Code commits can interact with the ticketing system, this is great you can make tickets, comment on tickets, add CC's etc or even close or sent for code review from inside your commits, I like this alot.
- The source browser is good, on par with other self hosted ones I've used.
- Importing my old svn repo into Google Code was easy and kept my timestamps and all which I was very impressed with.
In contrast to using Sourceforge in the past I have to say this is really quite pleasant to use. The recent re-design of Sourceforge which on the surface looks nice is in fact absolutely horrid, and as it's the 2nd bad redesign in a row I think it's time projects get new homes. For example a recent post to the Bacula lists mentioned their hatred for the new design too and they've had enough and will migrate elsewhere.
If you're looking for code hosting and use either SVN or HG, check out Google Code.
Update: You can update tickets from SVN commits, you just need to be careful about ordering of the text, see the Issue Tracker wiki page

