Pages

Thursday, July 22, 2010

Hudson CI - The answer to all my problems!

Hudson
Ok, so maybe the title is a little dramatic... but I definitely learned a lot about Hudson Continuous Integration this week.  Hudson provides access to app build, test, and deployment tools that make it a one stop shop for all development needs.  I heard about it last year in a Java EE class but assumed it was only for Java development.  For the last 6 months I have been doing a lot of ASP.NET programming and now I am in a class for LAMP at Weber State University.

I have been experimenting with the new Team Foundation Server and Visual Studio 2010 for my ASP.NET stuff.  I really like the designer for my web pages... makes it so much easier to format my tables! I am a big FOSS guy, but I can't complain about decent tools and languages.  I am a bit of a language agnostic.  I found that TFS integrates well with VS2010, but it is not really designed well for use with web app development because it all centers around the .sln solution file which is not really required for a web app. 

My LAMP class was a big group project that involved students with varying amounts of development experience.  We used X10Hosting as our free hosting solution for the site.  (Notice no link... you'll see why I chose not to advertise them)  They were an adequate choice for hosting a site that the whole class needed access to with a public domain, but the tools provided for building the database, accessing the files and uploading code were glitchy at best, and often did not work at all. 

The problems with the site culminated in the loss of our site, database and all our code not once, but twice!  After the first crash I started working to get my Subversion server up and running, but the lack of experience in the class and the proximity of the end of the project caused people to take my solution less seriously.  Luckily I decided to keep working on the server and got it up and running just in time to move everyone to my hosting solution.

Also Hudson
As I was getting subversion up and running I started looking at Hudson to provide some simple scripting.  PHP doesn't need to be built, so there is no need for a build server.  For this situation I am using Hudson simply to keep track of tasks, bugs (officially tracked and reported in Jira,) and who is committing code.  I even found a fun CI game to keep score of who is making the best/most updates to the project!  In the course of my research I discovered that Hudson can also be used for ASP.NET builds!  I am very excited to start working to get all my C#, Java and C\C++ projects set up in a CI environment.  It is going to make my life so much easier!!

No comments: