Our lovechild aptly named LightlyCloudy, was as you know - spawned by Quick and Dirty, and YOU are hereby invite to the baby shower. As the proud Godfather I'm back as promised, I have been doing some node.js programming and completed first production release of lightlycloudy. This is what users are met with after they login, quite soothing on the eys.
I have been heavily critized for that it's looks too much like the IBM or BSOD color scheme, I have carefully listend to the cirtisizm, and subsequently chosen to ignore it completely. I have shown the source code to some collegues and asked them to help me sexify the GUI. One guy willingly said "no, problem, I will do that before breakfast, what frameworks do you use?" and I replied "none...." and then he said "...oh, so it's really old skool", and then I didn't hear from him again, typical.
To summarize the lessens learned during this process were;
Asynchronus programming i.e. debugging is quite interesting, just like this blog entry suggests, it's like learning to program all over again.
The SmartOS commands vmadm, imgadam and nictagadm, does not strictly adhere to standard UNIX conventions regarding stdout stderr exitcode, which makes debugging a hassle combined with the asynchronus nature of node.js.
Sometimes it's just easier and faster to make a shell script than mess around with asyncronus node.js code. For this reason we made the nictagvms script which resides in the /usr/local/bin directory in the lightlycloudy zone, but is actually executed from the global zone. This way all code can be contained within the lightlycloudy zone.
Dependencies are still not good. I started using off by using the SSH2 framework, but due to a buffer error in the framework, I decided to drop it and use the built in function for executing shell commands.So there are no frameworks whatsoever, it's pure uncut node.js straight from the source.
Speaking of source, you can download it from Github There is a README included file which contains the very simple installation procedure.
Now we just need a project mascot, I was thinking something soft, cuddely and nice smelling like Ashley, click on the picture to see the full picture.
So now I'm working on version 2 of the application. I will try to incorporate support for multiple hypervisors and prerequisite check for creating and updating virtual machines.
I'm still looking for contributers, so don't be reluctant, it's my party and YOU are invited.