Select Page

Its commonplace for us to experience some sort of epiphany or even some form of brilliant thinking during certain times. These times include the peak of an exercise session, a casual stop to the restroom, and even the post drunk phase that occurs right before falling asleep after a night of drinking.
I googled last night after returning from a night out of merry spirits and stumbled upon the SmartFrog framework (developed by HP Labs). This java framework describes, manages, and deploys distributed service components. Sound foggy? It basically lets someone configure an entire production system (which may consist of numerous servers) in an automated manner. Let’s say I want to execute HTTPUnit tests against a set of production servers that sit on VM. Let’s also say that I need to provision (setup, install test app, perform configuration) these vm images myself prior to executing remote tests and gathering results. SmartFrog lets a user describe and deploy this distributed service framework and allows for the creation of custom services.
Hmmm, sound a little bit like STAF 🙂 ? I tend to think so. SmartFrog seems to have a little more functionality and is a bit heavier, as its written in Java. I’m VERY impressed with this framework and will delve a little more deeply into it. Like STAF, SmartFrog grants access to the command line (sh or dos). This comes in handy when trying to execute some data setup scripts or even some perl test scripts. What separates SF from STAF is that SF also has a java execution utility that allows for easier customization of the java runtime properties (eg classpath, jdk, etc).
And wait! There’s more…. So the code is all open sourced and I’d recommend you take a look. They got some GREAT file system utilities (copy file, make directory, chmod, touch) and all these are written in java albeit some use java’s Process class to execute the command line.