The Background
Today I was reflecting on the pain install/OS testing. As we approach a new release of our windows software, we have to verify:
- That it installs without issue
- That it runs, given a reasonable fulfillment of dependencies
- That our assumptions as to what is available on an "updated" machine are correct
- On a range of architectures (32/64 bit, etc)
- On a range of operating system versions (Windows XP, Windows Vista, 7, 8, etc.)
Our sad (but usual and cost effective) approach is to spin up some old boxes here on site. We either try to stuff an OS install into a VM system, or are forced to wipe the box and do a native install just to get to a "clean" install of the app. Depending on the functional approach, reverting snapshots may or may not be available.
The Idea
I realized that Windows Azure was making it very easy to spin up virtual machines these days and "pay for what you use". Mostly this appears to be focused on web hosting (Windows Server 2008 and Windows Server 8 are the only windows variants available in the "VM OS Selection" dialog). See this page for an overview.
But what if I could spin up other kinds of Windows OS images purely for testing?
I have an MSDN subscription, and access to a set of OSes that we should support. Couldn't I push these up somehow and have snapshottable, on-demand test hosts?
The Questions
- Is this feasible right now with Windows Azure? (I can do this for Server 2008 and Server 8 now, it would seem...can i do this with other OS images?)
- If so, how? (Can i upload a .vhd to storage in some manner as to have it show in the "my images" section?)
- If not, is there a good alternative? (I get the sense you could do this with Amazon EC2? Am I barking up the wrong tree? Is this better to try and do onsite with VM software entirely?)
In the best case, I want "fresh" (recently patched) images for a set of supported Windows OSes that I can spin up on demand, pay for what I use, and then shut down again. Does this exist?
Thanks for your time and consideration...
P.S. Not entirely sure if this should be here or on serverfault...please advise.