Thursday, January 24, 2008
Hudson Extreme Feedback Device
Some of you may have heard of creating ambient ORBs for extreme feedback devices. Some of my team members and myself contemplated buying the parts and trying to build one like Kohsuke, then we had a different idea. One of our co-workers had a stack of Sun SPOTs that were not currently being used, so I developed a distributed extreme feedback device for hudson using Sun SPOTs. The idea is simple. Each developer has a SPOT on their desk, and the color of the LEDS on the SPOT changes to match the status of the build. First, I wrote code to be deployed on each SunSPOT which waits for radiograms to tell it what color to change to. Next, I wrote a web application with a ServletContextListener, which polls /hudson/api/xml for the "color" of a project. Based on the color hudson returns for the configured job (red, blue, yellow, grey), this app broadcasts a radiogram message to the configured port to all Sun SPOTs in the PAN and they change color. I'm probably going to cleanup and post the code somewhere in the near future in case you're interested.