One Nice Continuous Integration Server

Posted by rob on March 06, 2008

Over the last couple of weeks I installed and began using the Hudson continuous integration server. I’ll admit that my search for a CI server was not very exhaustive nor very thorough. I checked out the web sites of the latest and greatest open source CI servers and chose Hudson based on a “gut” feeling. (Actually, Hudson made my original short list based on a tip from Alex. Thanks!) My only criteria was that it be easy to install, use and modify. It turns out that Hudson is a joy to use. Hudson can be installed as a standard Java web application and can be completely configured through its web interface. There is no need to modify configuration files. And adding plugins for additional build steps like PMD and Cobertura is a breeze. Since Hudson was so easy to use and ran flawlessly once installed and configured, I had no reason to try one of the other popular CI servers. So, I can’t say if the other ones are better than Hudson or not. However, I can say that Hudson is worth a serious look if you are thinking about installing a new CI server.

LiquiBase

Posted by rob on March 05, 2008

I discovered a new project this week, LiquiBase. Instead of trying to describe it to you, I’ll simply quote the LiquiBase web site…

“With LiquiBase, developers store database changes in XML-based files on their local development machines and apply them to their local databases. As those changes get committed to the source control system and are distributed to other developers, changes are applied to those local developer databases, to the integration databases, staging databases, and even to live production databases. Changes may be applied through several methods, either via an Ant or Maven task, a command line program, or automatically during application or application server startup.Full text

I’m surprised it has taken this long for a project like this to surface that addresses database changes. I think too often the database is treated differently that the rest of the code base. Depending on team organization and dependencies (or lack of) to other applications, I don’t think this always has to be the case. I think a tool like LiquiBase, might be a very valuable tool to have. Especially for agile development teams. I somehow have a feeling that DBA’s might like this tool, however. It will be interesting to see if this project gains any traction. Any out there using this that would care to comment?