My current project involves the mono framework. It is crossplatform and runs on windows, linux and macos. The lack of diskspace (and time) for setting up a linux machine and the lack of money to buy a new macbook pro retina (which is very nice) make me do most of my testing on my windows machine. Not realy crossplatform as I run the dotNET framework on windows too. (obvious)
Here comes Windows Azure in to play with it’s preview features. The support for Linux virtual machines comes as a gift. Now I can do my testing on a dedicated cloud machine that runs something else as Windows. I even have the choice to create my own salted version of the prepared images.
Here are my steps:
- Create a Virtual Machine from the OpenLogic CentOS 6.2 image
- Use SSH to connect to the Virtual Machine and install Mono
ssh -i privatekey.key email@example.com:22 sudo -s yum install bison gettext glib2 freetype fontconfig libpng libpng-devel libX11 libX11-devel glib2-devel libgdi* libexif glibc-devel urw-fonts java unzip gcc gcc-c++ automake autoconf libtool make bzip2 wget cd /usr/local/src wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.gz tar zxvf mono-2.10.8.tar.gz cd mono-2.10.8 ./configure --prefix=/usr/local make && make install
- Test Mono installation
- Capture the image for faster setup on next test
Shutdown the Virtual Machine and Capture from the management site
- The captured image is now in the list of VM OS Selection
Now I can build my repository of test machines without taking up space on my own hardware. Whenever I need a machine it is up and running in less than 10 minutes. The cloud is an enabler for Testing As A Service.
This post is based on these posts from Microsoft and Phonicuk:
Commic like screenshot explanation