DamageControl: Developers, you're doing a heck of a job
Posted by kev Sun, 16 Oct 2005 23:03:17 GMT
Aslak Hellesoy - ThoughtWorks
About Me
- I work for ThoughtWorks
- I have a former Java life
- “I also have a former life in the Java Community.”
- PicoContainer
- XDoclet
- Ruby OSS
- RSCM
- MetaProject
- RSpec
Agenda
- Background
- Continuous Integration
- Show of hands for people who have used it: about 1/4 of audience
- Architecture
- Plans for the future
Continuous Integration
You can think of continuous integration as another member of your team.
- Will detect when there’s updated source code in your repository.
- Will check out the changes, rebuild.
- Will report to team whether or not the build was successful (including results of tests).
RSCM
OK
- Subversion
- CVS
- ClearCase
KO
- Perforce
- Monotone
- StarTeam
- Darcs
Issue Tracking
OK
- RubyForge
- JIRA
- SourceForge
- Trac
KO
- Collaboa
- Scarab
- Bugzilla
- FogBugz
Distribution (No Gem)
- Ruby
- exe
- Rails
- exe, zip/tgz, svn
- SQLite binaries
- exe,zip/tgz,svn
- SQLite db
- exe, zip/tgz
- DamageControl
- exe,zip/tgz,svn
Architecture
- Users connect to SCM.
- SCM passes to Builder which connects to DB and slave.
- DB connects to Webapp.
Database Schema
- projeccts, revisions, revsionfiles, buildexecutions, builds, artifacts
Short Term Future
- Move from Codehaus to TextDrive
- Use Collaboa
- Visual identity (website and UI)
- Fix the worst bugs
Longer term future
- More SCMs(RSCM)
- Distributed builds
- More SCMs
Source
- http://hieraki.lavalamp.ca/
- http://jira.codehaus.org/browse/DC …
Gotchas
- SQLite - Database Busy
- Missing dll on windows
Q: Say you have CruiseControl running, whats the switching time?
A: Hopefully very little.
Q: Do you support multiple build configurations? Like building against different versions of ruby. Do you support multiple branches?
A: No, we don’t support multiple build configs. You can work around with multiple projects. We don’t support multiple branches in cvs but do in svn.

