I need to setup a dynamic test environment on top of VMware infrastructure. The goal is to have my test application call some service that triggers the whole provision process:

  • Create a VM
  • Install my application's most recent build
  • Run a list of configurations
  • Start/Stop services

Later I need to be able do destroy the machine!

Is there a piece of software that can handle this process? Or do I need to assemble one custom made?

6 Answers 6


VMware does have some products for this sort of workflow; Lab Manager or Orchestrator could automate most of what you want. If you want to save some cash on the provisioning / teardown process, you could roll your own solution using their scripting API and V(I)MA(forums here)

To automate your app deployment and configuration, Puppet or cfengine will do config management and application installation, and can be used with Capistrano for general purpose automation.


VMware's vCenter Lab Manager product is designed for exactly this purpose.

Granted, you have to pay for both vSphere and Lab Manager licenses, but if you're already in a VMware environment and you plan on doing a lot of automated testing, the cost will likely be worth the benefit.


Commercially, Novell has a product called Zenworks Orchestrator 2.0 that you might find interesting.

Since they bought PlateSpin they have been integrating functionality from PlateSpin's portfolio into the Orchestrator product.

It is admittedly aimed probably a bit higher than you are looking for, alas. More of a focus on big data centers, with workloads that change rapidly, such as a large SAP system, that might need to spin up some VM's to do work over night, then spin them down during the day, or really at any point.

Very neat and interesting (and complex) product. Pretty cool, but commercial, and may be more than you are looking for.


I would create a barbones VM with just the OS etc. Then you can just copy the VM files to clone the VM and then automate the build process within the VM. Not exactly what you were asking for, but thought I would give my KISS principle answer :-) You could also just use the snapshot feature within VMWare workstation.


me best advice is : use snapshots options, this way you can clone your barbones VM in a few seconds and destroy it after all your test are done. if you are using Linux, you can user lvm or vmware snapshot feature, both of them works perfectly.


Sitting in a puppet-training at the moment, so I'd have to say... puppet by Reductive Labs.

  • Able to use your manifests/recipes on non-vm machines
  • It's aware of different VMs
  • No vendor lockin
  • Scales well
  • Open Source

What it doesn't do is actually spawn your VM (that I'm aware of).

  • The best way to go from nothing is to have your ticket system kick off a build-vm script which gets the host through the base install and with the puppet client installed, puppet can take it from there.
    – LapTop006
    May 27, 2009 at 12:07
  • I find puppet interesting, too, but what about the support for Windows? :-) May 27, 2009 at 16:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.